Documentation
Mathematica
Built-in Functions
Advanced Documentation
Differential Equations
NDSolve
FixedStep
Introduction
It is often useful to carry out a numerical integration using fixed step sizes.
For example, certain methods such as DoubleStep and Extrapolation carry out a sequence of fixed-step integrations before combining the solutions to obtain a more accurate method with an error estimate that allows adaptive step sizes to be taken.
The method FixedStep allows any one-step integration method to be invoked using fixed step sizes.
This loads a package with some example problems and a package with some utility functions.
In[4]:=
Examples
Define an example problem.
In[2]:=
Out[2]=
This integrates a differential system using the method ExplicitEuler with a fixed step size of
.
In[1]:=
Out[1]=
Actually the ExplicitEuler method has no adaptive step size control. Therefore, the integration is already carried out using fixed step sizes so the specification of FixedStep is unnecessary.
In[55]:=

Here are the step sizes taken by the method ExplicitRungeKutta for this problem.
In[42]:=

This specifies that fixed step sizes should be used for the method ExplicitRungeKutta.
In[51]:=

The option MaxStepFraction provides an absolute bound on the step size that depends on the integration interval.
Since the default value of MaxStepFraction is
the step size in this example is bounded by one-tenth of the integration interval, which leads to using a constant step size of
.
In[48]:=

By setting the value of MaxStepFraction to a different value, the dependence of the step size on the integration interval can be relaxed or removed entirely.
In[53]:=

Option summary

Options of the method FixedStep.