options = nelson.ode.options.ODE15s()
options = nelson.ode.options.ODE15s(name, value)
nelson.ode.options.ODE15s creates a compatible option class for the 'ode15s' solver value used by the ode object workflow.
| Option group | Names | Purpose |
|---|---|---|
| Steps | InitialStep, MaxStep, MinStep | Bound the adaptive step size selection. |
| Error control | NormControl | Switch between componentwise and norm based error control. |
| Method | BDF, MaxOrder | Select backward differentiation formulas and bound the method order. |
| Evaluation | Vectorization | Declare that the ODE function accepts matrices of states. |
| Output | OutputFcn, OutputSelection | Select output callbacks and returned components. |
The 'ode15s' solver value uses an implicit multistep method for stiff problems and differential algebraic equations with a mass matrix.
Supported properties are InitialStep, MaxStep, MinStep, NormControl, OutputFcn, OutputSelection, Vectorization, BDF, and MaxOrder. InitialStep, MaxStep, and MinStep are positive scalars bounding the adaptive step size; their default value is empty, which lets the solver choose them automatically. NormControl accepts 'on' or 'off' (default 'off') and enables error control based on the norm of the solution instead of componentwise control. Vectorization accepts 'on' or 'off' (default 'off') and declares that the ODE function can evaluate several columns of states at once. BDF accepts 'on' or 'off' (default 'off') and selects backward differentiation formulas instead of the default numerical differentiation formulas. MaxOrder is an integer between 1 and 5 (default 5) bounding the order of the formulas. OutputFcn is a function handle called on each output point (default empty). OutputSelection is a vector of indices selecting which solution components are passed to the output function (default empty, all components). The default Refine value for this solver is 1.
options = nelson.ode.options.ODE15s('BDF', 'on', 'MaxOrder', 4);
problem = ode('ODEFcn', @(t,y) -1000 * (y - cos(t)), 'InitialValue', 0, ...
'SolverOptions', options);
result = solve(problem, 0, 1)
| Version | Description |
|---|---|
| 2.0.0 | initial version |