A simple iteration count based adaptive time step control.
More...
#include <TimeStepControl.hpp>
|
const int | target_iterations_ |
|
const double | decayrate_ |
|
const double | growthrate_ |
|
const bool | verbose_ |
|
A simple iteration count based adaptive time step control.
Opm::SimpleIterationCountTimeStepControl::SimpleIterationCountTimeStepControl |
( |
const int |
target_iterations, |
|
|
const double |
decayrate, |
|
|
const double |
growthrate, |
|
|
const bool |
verbose = false |
|
) |
| |
constructor
- Parameters
-
target_iterations | number of desired iterations (e.g. Newton iterations) per time step in one time step |
verbose | if true get some output (default = false) |
double Opm::SimpleIterationCountTimeStepControl::computeTimeStepSize |
( |
const double |
dt, |
|
|
const int |
iterations, |
|
|
const RelativeChangeInterface & |
, |
|
|
const double |
|
|
) |
| const |
|
virtual |
compute new time step size suggestions based on the PID controller
- Parameters
-
dt | time step size used in the current step |
iterations | number of iterations used (linear/nonlinear) |
timeError | object to compute || u^n+1 - u^n || / || u^n+1 || |
- Returns
- suggested time step size for the next step
Implements Opm::TimeStepControlInterface.
The documentation for this class was generated from the following files:
- opm/simulators/timestepping/TimeStepControl.hpp
- opm/simulators/timestepping/TimeStepControl.cpp