DUNE PDELab (2.8)
Do one step of a time-stepping scheme. More...
#include <dune/pdelab/instationary/implicitonestep.hh>
Public Member Functions | |
OneStepMethod (const TimeSteppingParameterInterface< T > &method_, IGOS &igos_, PDESOLVER &pdesolver_) | |
construct a new one step scheme More... | |
void | setVerbosityLevel (int level) |
change verbosity level; 0 means completely quiet | |
void | setStepNumber (int newstep) |
change number of current step | |
const PDESOLVER & | getPDESolver () const |
Access to the (non) linear solver. | |
PDESOLVER & | getPDESolver () |
Access to the (non) linear solver. | |
void | setResult (const OneStepMethodResult &result_) |
Set a new result. More... | |
void | setMethod (const TimeSteppingParameterInterface< T > &method_) |
redefine the method to be used; can be done before every step More... | |
T | apply (T time, T dt, TrlV &xold, TrlV &xnew) |
do one step; More... | |
template<typename F > | |
T | apply (T time, T dt, TrlV &xold, F &f, TrlV &xnew) |
do one step; This is a version which interpolates constraints at the start of each stage More... | |
Detailed Description
class Dune::PDELab::OneStepMethod< T, IGOS, PDESOLVER, TrlV, TstV >
Do one step of a time-stepping scheme.
- Template Parameters
-
T type to represent time values IGOS assembler for instationary problems PDESOLVER solver problem in each step (typically Newton) TrlV vector type to represent coefficients of solutions TstV vector type to represent residuals
- Examples
- recipe-operator-splitting.cc.
Constructor & Destructor Documentation
◆ OneStepMethod()
|
inline |
construct a new one step scheme
- Parameters
-
method_ Parameter object. This chooses the actual method used. igos_ Assembler object (instationary grid operator space). pdesolver_ solver object (typically Newton).
The contructed method object stores references to the object it is constructed with, so these objects should be valid for as long as the constructed object is used (or until setMethod() is called, see there).
Member Function Documentation
◆ apply() [1/2]
|
inline |
do one step; This is a version which interpolates constraints at the start of each stage
- Parameters
-
[in] time start of time step [in] dt suggested time step size [in] xold value at begin of time step [in] f function to interpolate boundary conditions from [in,out] xnew value at end of time step; contains initial guess for first substep on entry
- Returns
- selected time step size
References Dune::PDELab::TimeSteppingParameterInterface< R >::d(), Dune::PDELab::TimeSteppingParameterInterface< R >::name(), and Dune::PDELab::TimeSteppingParameterInterface< R >::s().
◆ apply() [2/2]
|
inline |
do one step;
- Parameters
-
[in] time start of time step [in] dt suggested time step size [in] xold value at begin of time step [in,out] xnew value at end of time step; contains initial guess for first substep on entry
- Returns
- selected time step size
References Dune::PDELab::TimeSteppingParameterInterface< R >::d(), Dune::PDELab::TimeSteppingParameterInterface< R >::name(), and Dune::PDELab::TimeSteppingParameterInterface< R >::s().
◆ setMethod()
|
inline |
redefine the method to be used; can be done before every step
- Parameters
-
method_ Parameter object.
The OneStepMethod object stores a reference to the method_ object. The old method object is no longer referenced after this member function returns.
◆ setResult()
|
inline |
Set a new result.
- Parameters
-
result_ OneStepMethodResult object
Set the step number to the next timestep according to the result.
References Dune::PDELab::OneStepMethod< T, IGOS, PDESOLVER, TrlV, TstV >::setStepNumber().
The documentation for this class was generated from the following file:
- dune/pdelab/instationary/implicitonestep.hh
![Creative Commons License](https://i.creativecommons.org/l/by-sa/4.0/80x15.png)