|
| ExplicitOneStepMethod (const TimeSteppingParameterInterface< T > &method_, IGOS &igos_, LS &ls_) |
| construct a new one step scheme More...
|
|
| ExplicitOneStepMethod (const TimeSteppingParameterInterface< T > &method_, IGOS &igos_, LS &ls_, TC &tc_) |
| construct a new one step scheme More...
|
|
| ~ExplicitOneStepMethod () |
|
void | setVerbosityLevel (int level) |
| change verbosity level; 0 means completely quiet More...
|
|
void | setStepNumber (int newstep) |
| change number of current step 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 Limiter > |
T | apply (T time, T dt, TrlV &xold, TrlV &xnew, Limiter &limiter) |
| do one step; More...
|
|
template<typename F > |
T | apply (T time, T dt, TrlV &xold, F &f, TrlV &xnew) |
| do one step; More...
|
|
template<typename F , typename Limiter > |
T | apply (T time, T dt, TrlV &xold, F &f, TrlV &xnew, Limiter &limiter) |
| do one step; More...
|
|
template<class T, class IGOS, class LS, class TrlV, class TstV = TrlV, class TC = SimpleTimeController<T>>
class Dune::PDELab::ExplicitOneStepMethod< T, IGOS, LS, TrlV, TstV, TC >
Do one step of an explicit time-stepping scheme.
- Template Parameters
-
T | type to represent time values |
IGOS | assembler for instationary problems |
LS | backend to solve diagonal linear system |
TrlV | vector type to represent coefficients of solutions |
TstV | vector type to represent residuals |
TC | time controller class |
template<class T , class IGOS , class LS , class TrlV , class TstV = TrlV, class TC = SimpleTimeController<T>>
construct a new one step scheme
- Parameters
-
method_ | Parameter object. |
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). Use SimpleTimeController that does not control the time step.
template<class T , class IGOS , class LS , class TrlV , class TstV = TrlV, class TC = SimpleTimeController<T>>
construct a new one step scheme
- Parameters
-
method_ | Parameter object. |
igos_ | Assembler object (instationary grid operator space). |
pdesolver_ | solver object (typically Newton). |
tc_ | a time controller object |
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).
template<class T , class IGOS , class LS , class TrlV , class TstV = TrlV, class TC = SimpleTimeController<T>>
template<typename F , typename Limiter >
T Dune::PDELab::ExplicitOneStepMethod< T, IGOS, LS, TrlV, TstV, TC >::apply |
( |
T |
time, |
|
|
T |
dt, |
|
|
TrlV & |
xold, |
|
|
F & |
f, |
|
|
TrlV & |
xnew, |
|
|
Limiter & |
limiter |
|
) |
| |
|
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] | function | to interpolate boundary condition from |
[in,out] | xnew | value at end of time step; contains initial guess for first substep on entry |
[in] | limiter | |
- Returns
- time step size
template<class T , class IGOS , class LS , class TrlV , class TstV = TrlV, class TC = SimpleTimeController<T>>
redefine the method to be used; can be done before every step
- Parameters
-
The OneStepMethod object stores a reference to the method_ object. The old method object is no longer referenced after this member function returns.