21 #ifndef OPM_TIMESTEPCONTROL_HEADER_INCLUDED
22 #define OPM_TIMESTEPCONTROL_HEADER_INCLUDED
26 #include <opm/simulators/timestepping/TimeStepControlInterface.hpp>
44 const double decayrate,
45 const double growthrate,
46 const bool verbose =
false);
52 const int target_iterations_;
53 const double decayrate_;
54 const double growthrate_;
80 const bool verbose =
false );
87 mutable std::vector< double > errors_;
108 const double decayDampingFactor = 1.0,
109 const double growthDampingFactor = 1.0/1.2,
110 const double tol = 1e-3,
111 const double minTimeStepBasedOnIterations = 0.,
112 const bool verbose =
false);
118 const int target_iterations_;
119 const double decayDampingFactor_;
120 const double growthDampingFactor_;
121 const double minTimeStepBasedOnIterations_;
145 std::vector<double> subStepTime_;
HardcodedTimeStepControl Input generated from summary file using the ert application:
Definition: TimeStepControl.hpp:134
double computeTimeStepSize(const double dt, const int, const RelativeChangeInterface &, const double simulationTimeElapsed) const
compute new time step size suggestions based on the PID controller
Definition: TimeStepControl.cpp:106
HardcodedTimeStepControl(const std::string &filename)
constructor
Definition: TimeStepControl.cpp:88
PID controller based adaptive time step control as above that also takes an target iteration into acc...
Definition: TimeStepControl.hpp:99
PIDAndIterationCountTimeStepControl(const int target_iterations=20, const double decayDampingFactor=1.0, const double growthDampingFactor=1.0/1.2, const double tol=1e-3, const double minTimeStepBasedOnIterations=0., const bool verbose=false)
constructor
Definition: TimeStepControl.cpp:175
double computeTimeStepSize(const double dt, const int iterations, const RelativeChangeInterface &relativeChange, const double) const
compute new time step size suggestions based on the PID controller
Definition: TimeStepControl.cpp:189
PID controller based adaptive time step control as suggested in: Turek and Kuzmin.
Definition: TimeStepControl.hpp:73
PIDTimeStepControl(const double tol=1e-3, const bool verbose=false)
constructor
Definition: TimeStepControl.cpp:120
double computeTimeStepSize(const double dt, const int, const RelativeChangeInterface &relativeChange, const double) const
compute new time step size suggestions based on the PID controller
Definition: TimeStepControl.cpp:128
RelativeChangeInterface.
Definition: TimeStepControlInterface.hpp:32
A simple iteration count based adaptive time step control.
Definition: TimeStepControl.hpp:36
SimpleIterationCountTimeStepControl(const int target_iterations, const double decayrate, const double growthrate, const bool verbose=false)
constructor
Definition: TimeStepControl.cpp:44
double computeTimeStepSize(const double dt, const int iterations, const RelativeChangeInterface &, const double) const
compute new time step size suggestions based on the PID controller
Definition: TimeStepControl.cpp:62
TimeStepControlInterface.
Definition: TimeStepControlInterface.hpp:49
This file contains a set of helper functions used by VFPProd / VFPInj.
Definition: BlackoilPhases.hpp:26