Opm::SimpleIterationCountTimeStepControl Class Reference

#include <TimeStepControl.hpp>

Inheritance diagram for Opm::SimpleIterationCountTimeStepControl:
Inheritance graph

Public Member Functions

 SimpleIterationCountTimeStepControl (const int target_iterations, const double decayrate, const double growthrate, const bool verbose=false)
 constructor More...
 
double computeTimeStepSize (const double dt, const int iterations, const SimulatorState &state) const
 
virtual void initialize (const SimulatorState &)
 

Protected Attributes

const int target_iterations_
 
const double decayrate_
 
const double growthrate_
 
const bool verbose_
 

Detailed Description

A simple iteration count based adaptive time step control.

Constructor & Destructor Documentation

Opm::SimpleIterationCountTimeStepControl::SimpleIterationCountTimeStepControl ( const int  target_iterations,
const double  decayrate,
const double  growthrate,
const bool  verbose = false 
)

constructor

Parameters
target_iterationsnumber of desired iterations (e.g. Newton iterations) per time step in one time step
verboseif true get some output (default = false)

Member Function Documentation

double Opm::SimpleIterationCountTimeStepControl::computeTimeStepSize ( const double  dt,
const int  iterations,
const SimulatorState state 
) const
virtual

compute new time step size suggestions based on the PID controller

Parameters
dttime step size used in the current step
iterationsnumber of iterations used (linear/nonlinear)
statenew solution state
Returns
suggested time step size for the next step

Implements Opm::TimeStepControlInterface.

virtual void Opm::TimeStepControlInterface::initialize ( const SimulatorState )
inlinevirtualinherited
Parameters
statesimulation state before computing update in the solver (default is empty)

Reimplemented in Opm::PIDTimeStepControl.

Member Data Documentation

const double Opm::SimpleIterationCountTimeStepControl::decayrate_
protected
const double Opm::SimpleIterationCountTimeStepControl::growthrate_
protected
const int Opm::SimpleIterationCountTimeStepControl::target_iterations_
protected
const bool Opm::SimpleIterationCountTimeStepControl::verbose_
protected

The documentation for this class was generated from the following file: