MATLAB Function Reference |
Create or alter delay differential equations (DDE) options structure
Syntax
options = ddeset('name1',value1,'name2',value2,...) options = ddeset(oldopts,'name1',value1,...) options = ddeset(oldopts,newopts) ddeset
Description
options = ddeset('name1',value1,'name2',value2,...)
creates an integrator options structure options
in which the named properties have the specified values. Any unspecified properties have default values. It is sufficient to type only the leading characters that uniquely identify the property. ddeset
ignores case for property names.
options = ddeset(oldopts,'name1',value1,...)
alters an existing options structure oldopts
. This overwrites any values in oldopts
that are specified using name/value pairs and returns the modified structure as the output argument.
options = ddeset(oldopts,newopts)
combines an existing options structure oldopts
with a new options structure newopts
. Any values set in newopts
overwrite the corresponding values in oldopts
.
ddeset
with no input arguments displays all property names and their possible values, indicating defaults with braces {}
.
You can use the function ddeget
to query the options
structure for the value of a specific property.
DDE Properties
The following sections describe the properties that you can set using ddeset
. There are several categories of properties:
Error Control Properties
At each step, the dde23
solver estimates the local error e
in the i
th component of the solution. This error must be less than or equal to the acceptable error, which is a function of the specified relative tolerance, RelTol
, and the specified absolute tolerance, AbsTol
.
For routine problems, the dde23
solver delivers accuracy roughly equivalent to the accuracy you request. It delivers less accuracy for problems integrated over "long" intervals and problems that are moderately unstable. Difficult problems may require tighter tolerances than the default values. For relative accuracy, adjust RelTol
. For the absolute error tolerance, the scaling of the solution components is important: if |y|
is somewhat smaller than AbsTol
, the solver is not constrained to obtain any correct digits in y
. You might have to solve a problem more than once to discover the scale of solution components.
Roughly speaking, this means that you want RelTol
correct digits in all solution components except those smaller than thresholds AbsTol(i)
. Even if you are not interested in a component y(i)
when it is small, you may have to specify AbsTol(i)
small enough to get some correct digits in y(i)
so that you can accurately compute more interesting components
The following table describes the error control properties.
You can use the solver output properties to control the output that the solvers generate.
Property |
Value |
Description |
OutputFcn | Function handle {@odeplot } | The output function is a function that the solver calls after every successful integration step. To specify an output function, set 'OutputFcn' to a function handle. For example, sets 'OutputFcn' to @myfun , a handle to the function myfun . See Function Handles in the MATLAB Programming documentation for more information.The output function must be of the form Parameterizing Functions Called by Function Functions, in the MATLAB mathematics documentation, explains how to provide additional parameters to
|
|
You can use these general purpose output functions or you can edit them to create your own. Type help functionname at the command line for more information. |
|
OutputSel |
Vector of indices |
Vector of indices specifying which components of the solution vector dde23 passes to the output function. For example, if you want to use the ddeplot output function, but you want to plot only the first and third components of the solution, you can do this usingBy default, the solver passes all components of the solution to the output function. |
Stats |
on | {off } |
Specifies whether the solver should display statistics about its computations. By default, Stats is off . If it is on , after solving the problem the solver displays: |
Step-Size Properties
The step-size properties let you specify the size of the first step the solver tries, potentially helping it to better recognize the scale of the problem. In addition, you can specify bounds on the sizes of subsequent time steps.
The following table describes the step-size properties.
Property |
Value |
Description |
InitialStep |
Positive scalar |
Suggested initial step size. InitialStep sets an upper bound on the magnitude of the first step size the solver tries. If you do not set InitialStep , the solver bases the initial step size on the slope of the solution at the initial time tspan(1) , and the shortest delay. If the slope of all solution components is zero, the procedure might try a step size that is much too large. If you know this is happening or you want to be sure that the solver resolves important behavior at the start of the integration, help the code start by providing a suitable InitialStep . |
MaxStep |
Positive scalar {0.1 *abs(t0-tf) } |
Upper bound on solver step size. If the differential equation has periodic coefficients or solutions, it may be a good idea to set MaxStep to some fraction (such as 1/4) of the period. This guarantees that the solver does not enlarge the time step too much and step over a period of interest. Do not reduce MaxStep :
|
|
Event Location Property
In some DDE problems, the times of specific events are important. While solving a problem, the dde23
solver can detect such events by locating transitions to, from, or through zeros of user-defined functions.
The following table describes the Events
property.
String |
Value |
Description |
Events |
Function handle |
Handle to a function that includes one or more event functions. See Function Handles in the MATLAB Programming documentation for more information. The function is of the formvalue , isterminal , and direction are vectors for which the i th element corresponds to the i th event function:
sol :
For examples that use an event function while solving ordinary differential equation problems, see Example: Simple Event Location ( |
Discontinuity Properties
dde23
can solve problems with discontinuities in the history or discontinuities in coefficients of the equations. These properties enable you to provide dde23
with a different initial value, and locations of known discontinuities. See Discontinuities in the MATLAB mathematics documentation for more information.
The following table describes the discontinuity properties.
Example
To create an options structure that changes the relative error tolerance of the solver from the default value of 1e-3
to 1e-4
, enter
To recover the value of 'RelTol'
from options
, enter
See Also
dde23
, ddeget
, function_handle
(@)
ddeget | deal |
© 1994-2005 The MathWorks, Inc.