Steffensen - 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]

  

Steffensen

  

numerically approximate the real roots of an expression using Steffensen's method

 

Calling Sequence

Parameters

Options

Description

Notes

Examples

Calling Sequence

Steffensen(f, x=a, opts)

Steffensen(f, a, opts)

Parameters

f

-

algebraic; expression in the variable x representing a continuous function

x

-

name; the independent variable of f

a

-

numeric; the initial approximate root

opts

-

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

Options

• 

fixedpointiterator = algebraic (optional)

  

An expression that will be used to generate the fixed-point iteration sequence. If this option is specified, the first argument, f, must be omitted. See the Notes section 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.

• 

maxiterations = posint

  

The maximum number of iterations to 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

• 

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 that converges to the exact root for a sufficiently well-behaved function and initial approximation.

– 

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. By default, this option is set to true.

• 

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.

• 

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 plotview of the plot when output = plot.  See plot/options for more information.

Description

• 

The Steffensen command numerically approximates the roots of an algebraic function, f, using fixed-point iteration coupled with a slightly modified version of Aitken's Δ2 technique of accelerating sequential convergence.

• 

Given an expression f and an initial approximate a, the Steffensen 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. For sufficiently well-behaved functions and sufficiently good initial approximations, the convergence of pk toward the exact root is quadratic.

• 

The first argument f may be substituted with an option of the form fixedpointiterator = fpexpr. See Notes.

• 

The Steffensen command is a shortcut for calling the Roots command with the method=steffensen option.

Notes

• 

This procedure 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 labelled.

  

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

Examples

withStudentNumericalAnalysis&colon;

fx231&colon;

Steffensenf&comma;x=2.0&comma;tolerance=102

1.732049797

(1)

Steffensenf&comma;x=2.0&comma;tolerance=102&comma;output=sequence

2.0,1.727272728,1.732049797

(2)

Steffensenf&comma;x=2&comma;output=plot&comma;stoppingcriterion=function_value

Steffensenf&comma;x=1.3&comma;output=animation&comma;stoppingcriterion=absolute

See Also

Student[NumericalAnalysis]

Student[NumericalAnalysis][Roots]

Student[NumericalAnalysis][VisualizationOverview]