odeoptions
set options for ode solvers
Syntax
odeoptions()
Description
This function interactively displays a command which should be
executed to set various options of ode solvers. The context variable
%ODEOPTIONS sets the options.
![]() | The ode function checks if this variable
exists and in this case it uses it. For using default values you should
clear this variable. To create it you must execute the instruction
%ODEOPTIONS=odeoptions(). |
The variable %ODEOPTIONS is a vector with the
following elements:
[itask, tcrit, h0, hmax, hmin, jactyp, mxstep, maxordn, maxords, ixpr, ml, mu].
The default value is: [1,0,0,%inf,0,2,500,12,5,0,-1,-1].
The meaning of the elements is described below.
itasksets the integration mode:- 1: normal computation at specified times
- 2 : computation at mesh points (given in first row of output of
ode) - 3 : one step at one internal mesh point and return
- 4 : normal computation without overshooting
tcrit - 5 : one step, without passing
tcrit, and return
tcritcritical time used only ifitaskequals 4 or 5 as described aboveh0first step triedhmaxmax step sizehminmin step sizejactypeset jacobian properties:- 0: functional iterations, no jacobian used
(
"adams"or"stiff"only) - 1 : user-supplied full jacobian
- 2 : internally generated full jacobian
- 3: internally generated diagonal jacobian
(
"adams"or"stiff"only) - 4 : user-supplied banded jacobian (see
mlandmubelow) - 5 : internally generated banded jacobian
(see
mlandmubelow)
- 0: functional iterations, no jacobian used
(
maxordnmaximum non-stiff order allowed, at most 12maxordsmaximum stiff order allowed, at most 5ixprprint level, 0 or 1ml,muIf
jactypeequals 4 or 5,mlandmuare the lower and upper half-bandwidths of the banded jacobian: the band is thei,j's withi-ml<=j<=ny-1.If
jactypeequals 4 the jacobian function must return a matrixJwhich isml+mu+1 x ny(whereny=dimofyinydot=f(t,y))such that column 1 ofJis made ofmuzeros followed bydf1/dy1,df2/dy1,df3/dy1, ... (1+mlpossibly non-zero entries), column 2 is made ofmu-1zeros followed bydf1/dx2,df2/dx2, etc.
Examples
In the following example, we solve the Ordinary Differential Equation
dy/dt=y^2-y sin(t)+cos(t) with the initial
condition y(0)=0 claiming the solution be stored at each mesh value.
function ydot=f(t, y) ydot = y^2 - y*sin(t) + cos(t) endfunction %ODEOPTIONS = [2,0,0,%inf,0,2,500,12,5,0,-1,-1]; y = ode(0,0,%pi,f); plot(y(1,:),y(2,:)) clear %ODEOPTIONS

See also
- ode — ordinary differential equation solver
| Report an issue | ||
| << odedc | Differential Equations | Elementary Functions >> |
