numerical solution of ordinary differential equations - Maple Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Differential Equations : dsolve : numeric : Methods : dsolve/gear

dsolve/numeric/gear - numerical solution of ordinary differential equations

Calling Sequence

dsolve(odesys, numeric, method=gear)

dsolve(odesys, numeric, method=gear[choice], vars, options)

dsolve(numeric, method=gear[choice], procopts, options)

Parameters

odesys

-

set or list; ordinary differential equation(s) and initial conditions

numeric

-

literal name; instruct dsolve to find a numerical solution

method=gear

-

literal equation; numerical method to use

method=gear[choice]

-

equation; numerical method and submethod to use

vars

-

(optional) dependent variable or a set or list of dependent variables for odesys

options

-

(optional) equations of the form keyword = value

procopts

-

options used to specify the ODE system using a procedure (procedure, initial, start, number, and procvars). For more information, see dsolve[numeric,IVP].

Description

• 

The dsolve command with the options numeric and method=gear or method=gear[choice] finds a numerical solution using a Gear single-step extrapolation method.

• 

The choice for the gear method are bstoer and polyextr.  The default bstoer choice is a Burlirsch-Stoer rational extrapolation method and the polyextr choice uses polynomial extrapolation.

• 

By setting infolevel[`dsolve/gear`] or infolevel[dsolve] to 2, information about the last mesh point evaluation is provided in the event of an error.

• 

The following options are available for the gear method.

'output'

=

keyword or array

'known'

=

name or list of names

'maxfun'

=

integer

'number'

=

integer

'procedure'

=

procedure

'start'

=

numeric

'initial'

=

array

'procvars'

=

list

'startinit'

=

boolean

'implicit'

=

boolean

'optimize'

=

boolean

'abserr'

=

numeric

'relerr'

=

numeric

'initstep'

=

numeric

'maxstep'

=

numeric

'minstep'

=

numeric

'maxord'

=

integer

'maxpts'

=

integer

  

'output','known'

  

The 'output' option specifies the desired output from dsolve, and the known option specifies user-defined known functions. These options are discussed in dsolve[numeric].

  

 

  

'maxfun'

  

Specifies a maximum on the number of evaluations of the right-hand side of the first order ODE system (See dsolve[maxfun]). This option can be disabled by specifying maxfun=0. By default this option is disabled.

  

 

  

'number', 'procedure', 'start', 'initial', and 'procvars'

  

These options are used to specify the IVP using procedures. For more information, see dsolve[numeric,IVP].

  

 

  

'startinit','implicit', and 'optimize'

  

These options control the method and behavior of the computation. For more information on the first two, see dsolve[numeric,IVP], for the last, see dsolve[numeric].

  

 

  

'abserr' and 'relerr'

  

Specify the desired accuracy of the solution, and are discussed in dsolve[Error_Control]. The default values for gear are abserr=1.10-7 and relerr=1.10-7.

  

 

  

'minstep', 'maxstep', and 'initstep'

  

Provide finer control over the step size used in the method, and are also discussed in dsolve[Error_Control]. By default minstep=0.00001, maxstep is disabled, and initstep=0.00001. When setting minstep ensure that the value is adequately small to allow for the first few steps.

  

 

  

'maxord'

  

A positive integer, specifying the maximum order of extrapolation allowed. It must be less than 11 (values of 6 or less are recommended). The default value is 4.

  

 

  

'maxpts'

  

A positive integer, specifying the maximum number of different single unit step sizes used in the extrapolation process (values less than 10 are recommended). The default is 6.

  

 

• 

The computation may return with an error message corresponding to an error condition of the gear procedure.

• 

Results can be plotted using the function odeplot in the plots package.

Examples

Digits:=10:

deq1:=ⅆ3ⅆx3yx=yxⅆⅆxyxx

deq1:=ⅆ3ⅆx3yx=yxⅆⅆxyxx

(1)

init1:=D2y1=4,Dy1=3,y1=2.4

init1:=y1=2.4,Dy1=3,D2y1=4

(2)

ans1:=dsolvedeq1∪init1,numeric,method=gearpolyextr,initstep=0.015,minstep=1.10-11,abserr=0.00001,relerr=0.00001:

ans11.01

x=1.01,yx=2.43020104070930,ⅆⅆxyx=3.04031295467142,ⅆ2ⅆx2yx=4.06288854913227

(3)

dsys2:=xyxsinyx=ⅆⅆxyx,y0=5.

dsys2:=xyxsinyx=ⅆⅆxyx,y0=5.

(4)

ans2:=dsolvedsys2,numeric,method=gear,maxord=3:

ans20.45

x=0.45,yx=5.90260241046659

(5)

ans20.9

x=0.9,yx=7.81336992184499

(6)

Digits:=25:

deq3:=ⅆ3ⅆz3yzyzzⅆⅆzyz=5

deq3:=ⅆ3ⅆz3yzyzzⅆⅆzyz=5

(7)

init3:=y0=1,D2y0=1,Dy0=2

init3:=y0=1,D2y0=1,Dy0=2

(8)

ans3:=dsolvedeq3,init3,numeric,method=gearbstoer,maxpts=4:

ans31

z=1.,yz=2.348282662951510120622879,ⅆⅆzyz=5.767096382629485105229235,ⅆ2ⅆz2yz=8.239613529231847035339209

(9)

ans30

z=0.,yz=1.,ⅆⅆzyz=2.,ⅆ2ⅆz2yz=1.

(10)

See Also

dsolve/Error_Control, dsolve[ck45], dsolve[classical], dsolve[dverk78], dsolve[lsode], dsolve[maxfun], dsolve[numeric,IVP], dsolve[numeric], dsolve[rkf45], dsolve[rosenbrock], dsolve[Stiffness], dsolve[taylorseries], plots[odeplot]

References

  

Gear, C.W. Numerical Initial Value Problems in Ordinary Differential Equations. Prentice-Hall, 1971.


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam