OOF2: The Manual


Adaptive (AdaptiveDriver) — Take variable sized timesteps.




  • Base class: StepDriver
  • Parameters:

    Maximum permissable error. Type: A real number.
    Initial step size. Type: A real number.
    Minimum time step size. Type: A real number.
    How to compute the error for each degree of freedom. Type: An object of the StepErrorScaling class.
    Time stepping method. Type: An object of the QCTimeStepper class.


AdaptiveDriver objects are used as the time_stepper parameter in AdvancedSolverMode when solving a time-dependent problem with adaptive time stepping. The AdaptiveDriver uses the given stepper to take single steps. If the resulting error estimate is larger than the given tolerance, the step is rejected and is repeated with a smaller \(\Delta
  t\). If the error is less than the tolerance, the step size will be increased on the next step.

initialstep is the step size to use at the beginning of the computation. Once a computation is under way, the step size is determined by the error estimate from the previous step.

If the error cannot be reduced below tolerance without using a step size below minstep, the computation will be aborted. Often this means that the problem is badly posed, or that the errorscaling is in appropriate.

errorscaling defines what is really meant by the error estimate is larger than the given tolerance. It determines how a set of errors in each Field component value at each Node is reduced to a single number that can be compared with the tolerance.

AdaptiveDriver plays the same role in AdvancedSolverMode that BasicAdaptiveDriver plays in BasicSolverMode.