Roots - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Student[NumericalAnalysis]

  

Roots

  

numerically approximate the real roots of an expression using an iterative method

 

Calling Sequence

Parameters

Options

Description

Notes

Examples

Calling Sequence

Roots(f, x=[a, b], opts)

Roots(f, [a,b], opts)

Roots(f, x=a, opts)

Roots(f, a, opts)

Parameters

f

-

algebraic; expression in the variable x representing a continuous function

x

-

name; the independent variable of f

a

-

numeric; in the first two calling sequences, one of two initial approximates to the root; in the remaining calling sequences, the initial approximate root

b

-

numeric; in the first two calling sequences, one of two initial approximates to the root

opts

-

(optional) equation(s) of the form keyword=value, where keyword is one of fixedpointiterator, functionoptions, lineoptions, maxiterations, method, output, pointoptions, showfunction, showlines, showpoints, showverticallines, stoppingcriterion, tickmarks, caption, tolerance, verticallineoptions, view; the options for approximating the roots of f

Options

• 

fixedpointiterator = algebraic (optional)

  

Can only be specified if method = steffensen or method = fixedpointiteration.

  

The expression on the right-hand side will be used to generate the fixed-point iteration sequence. If this option is specified, the first argument, f, must be omitted. See the method option under method = fixedpointiteration for more details.

• 

functionoptions = list

  

A list of options for the plot of the expression f. By default, f is plotted as a solid red line.

• 

lineoptions = list

  

A list of options for the lines on the plot. By default the lines are solid blue for the Newton-Raphson, Modified Newton-Raphson, Secant, Steffensen, and False Position methods and dotted blue for the Bisection and Fixed-Point Iteration methods.

• 

maxiterations = posint

  

The maximum number of iterations to perform. The default value of maxiterations depends on which type of output is chosen:

– 

output = value: default maxiterations = 100

– 

output = sequence: default maxiterations = 10

– 

output = information: default maxiterations = 10

– 

output = plot: default maxiterations = 5

– 

output = animation: default maxiterations = 10

• 

method = newton, modifiednewton, bisection, secant, fixedpointiteration, steffensen, or falseposition

  

The method used to approximate the root(s) of f numerically.

– 

newton: Newton-Raphson Method

  

This method requires one initial approximate.

– 

modifiednewton: Modified Newton-Raphson Method

  

This method requires one initial approximate.

– 

bisection: Bisection Method

  

This method requires a pair of initial approximates.

– 

secant: Secant Method

  

This method requires a pair of initial approximates.

– 

fixedpointiteration: Fixed-Point Iteration Method

  

This method requires one initial approximate.

  

This method first converts the problem of finding a root to the equation fx=0 to a problem of finding a fixed point for the function gx, where gx=xfx and fx is specified by f and x.

• 

The user can specify a custom iterator function gx by omitting the first argument f and supplying the fixedpointiterator = g option. The right-hand side expression g specifies a function gx, and this procedure will aim to find a root to fx = xgx=0 by way of solving the fixed-point problem gx=x.

  

When output = plot or output = animation is specified, both the function fx and the fixed-point iterator function gx will be plotted and correspondingly labeled.

  

The tolerance option, when stoppingcriterion = function_value, applies to the function fx in the root-finding form of the problem.

  

The information in the preceding paragraphs applies to Steffensen's method as well.

– 

steffensen: Steffensen's Method

  

This method requires one initial approximate.

  

See the fixed-point iteration method above (fixedpointiteration) for important information that also applies to this method.

– 

falseposition: Method of False Position

  

This method requires a pair of initial approximates.

  

By default, the Newton-Raphson Method is used.

• 

output = value, sequence, plot, animation, or information

  

The return value of the function. The default is value.

– 

output = value returns the final numerical approximation of the root.

– 

output = sequence returns an expression sequence pk, k=0..n, where, depending on the method, either form successive intervals that bracket the exact root or a sequence of successively more accurate approximate roots.

– 

output = plot returns a plot of f with each iterative approximation shown and the relevant information about the numerical approximation displayed in the caption of the plot.

– 

output = animation returns an animation showing the iterations of the root approximation process.

– 

output = information returns detailed information about the iterative approximations of the root of f.

• 

plotoptions = list

  

The final plot options when output = plot or output = animation.

• 

pointoptions = list

  

A list of options for the points on the plot. By default, the points are plotted as green circles.

• 

showfunction = truefalse

  

Whether to display f on the plot or not.  By default, this option is set to true.

• 

showlines = truefalse

  

Whether to display lines that accentuate each approximate iteration when output = plot. This option is effective with every method except for the Modified Newton-Raphson method. By default, this option is set to true.  To control the vertical lines, see the showverticallines and verticallineoptions options.

• 

showpoints = truefalse

  

Whether to display the points at each approximate iteration on the plot when output = plot. By default, this option is set to true.

• 

showverticallines = truefalse

  

Whether to display the vertical lines at each iterative approximation on the plot when output = plot.  This option is only effective when method is one of: newton, modifiednewton, secant, or falseposition. By default this option is set to true.

• 

stoppingcriterion = relative, absolute, or function_value

  

The criterion that the approximations must meet before discontinuing the iterations. The following describes each criterion:

– 

relative : pnpn1pn < tolerance

– 

absolute : pnpn1 < tolerance

– 

function_value : fpn < tolerance

  

By default, stoppingcriterion = relative.

• 

tickmarks = list

  

The tickmarks when output = plot or output = animation. By default, tickmarks are placed at the initial and final approximations with the labels p0 (or a and b for two initial approximates) and pn, where n is the total number of iterations used to reach the final approximation. See plot/tickmarks for more detail on specifying tickmarks.

• 

caption = string

  

A caption for the plot. The default caption contains general information concerning the approximation. For more information about specifying a caption , see plot/typesetting.

• 

tolerance = positive

  

The error tolerance of the approximation. The default value is 110000.

• 

verticallineoptions = list

  

A list of options for the vertical lines on the plot. By default, the lines are dashed and blue.

• 

view = [realcons..realcons, realcons..realcons]

  

The plot view of the plot when output = plot.  See plot/options for more information.

Description

• 

The Roots command numerically approximates the roots of an algebraic function, f, using the specified method and returns the specified outputs.

• 

Given an expression f and an initial approximate a or a pair of initial approximates [a, b], the Roots command computes a sequence pk, k=0..n, of approximations to a root of f, where n is the number of iterations taken to reach a stopping criterion.

• 

See method in the Options section to see which methods require one initial approximate (and hence the last two calling sequences) and which methods require a pair of initial approximates (and hence the first two calling sequences).

• 

If method = fixedpointiteration or method = steffensen is specified, the first argument f may be substituted with an option of the form fixedpointiterator = fpexpr. See method = fixedpointiteration in the Options section for details.

Notes

• 

Both Newton's method and the secant method have the limitation that they may produce a divergent sequence of approximates if the initial approximates a and b are not sufficiently close to the root.

Examples

withStudentNumericalAnalysis&colon;

fx37x2+14x6

fx37x2+14x6

(1)

Rootsf&comma;x=3.2&comma;tolerance=102

3.416190743

(2)

Rootsf&comma;x=2.7&comma;3.2&comma;method=bisection&comma;tolerance=102&comma;output=information

nanbnpnfpnrelative error12.73.22.9500000000.0548750000.0847457627122.9500000003.23.075000000−0.0633281250.0406504065032.9500000003.0750000003.012500000−0.0121855470.0207468879742.9500000003.0125000002.9812500000.0194465260.0104821802952.9812500003.0125000002.9968750000.0031445140.005213764338

(3)

fx23x2&colon;

Rootsf&comma;x=1&comma;output=sequence

1.,−3.000000000,−1.222222222,−0.6417233560,−0.5630533137,−0.5615533585,−0.5615528128

(4)

Rootsf&comma;x=0.3&comma;method=modifiednewton&comma;output=plot&comma;stoppingcriterion=absolute

Rootsf&comma;x=0.3&comma;method=modifiednewton&comma;output=plot&comma;stoppingcriterion=absolute&comma;verticallineoptions=color=gold&comma;linestyle=dash

Rootsf&comma;x=1.3&comma;5&comma;method=secant&comma;output=animation&comma;stoppingcriterion=function_value&comma;tickmarks=5&comma;5

See Also

Roots

Student[Calculus1][Roots]

Student[NumericalAnalysis]

Student[NumericalAnalysis][Bisection]

Student[NumericalAnalysis][FalsePosition]

Student[NumericalAnalysis][FixedPointIteration]

Student[NumericalAnalysis][ModifiedNewton]

Student[NumericalAnalysis][Newton]

Student[NumericalAnalysis][Secant]

Student[NumericalAnalysis][Steffensen]

Student[NumericalAnalysis][VisualizationOverview]