version 3.9.0
Loading...
Searching...
No Matches
Dumux::Experimental::MultiStageTimeStepper< PDESolver, Scalar > Class Template Reference

Time stepping with a multi-stage method. More...

#include <dumux/experimental/timestepping/multistagetimestepper.hh>

Description

template<class PDESolver, class Scalar = double>
class Dumux::Experimental::MultiStageTimeStepper< PDESolver, Scalar >
Note
We limit ourselves to "diagonally" implicit multi-stage methods where solving a stage can only depend on the values of the same stage and stages before but not future stages (which would require solving larger linear systems)

Public Member Functions

 MultiStageTimeStepper (std::shared_ptr< PDESolver > pdeSolver, std::shared_ptr< const MultiStageMethod< Scalar > > msMethod, const std::string &paramGroup="")
 The constructor.
 
void step (Variables &vars, const Scalar t, const Scalar dt)
 Advance one time step of the given time loop.
 
void step (Variables &vars, TimeLoopBase< Scalar > &timeLoop)
 Advance one time step of the given time loop (adaptive time stepping on solver failure)
 

Constructor & Destructor Documentation

◆ MultiStageTimeStepper()

template<class PDESolver , class Scalar = double>
Dumux::Experimental::MultiStageTimeStepper< PDESolver, Scalar >::MultiStageTimeStepper ( std::shared_ptr< PDESolver > pdeSolver,
std::shared_ptr< const MultiStageMethod< Scalar > > msMethod,
const std::string & paramGroup = "" )
inline
Parameters
pdeSolverSolver class for solving a PDE in each stage
msMethodThe multi-stage method which is to be used for time integration
paramGroupA parameter group in which we look for parameters

Member Function Documentation

◆ step() [1/2]

template<class PDESolver , class Scalar = double>
void Dumux::Experimental::MultiStageTimeStepper< PDESolver, Scalar >::step ( Variables & vars,
const Scalar t,
const Scalar dt )
inline
Parameters
varsThe variables object at the current time level.
tThe current time level
dtThe time step size to be used
Note
We expect the time level in vars to correspond to the given time t

◆ step() [2/2]

template<class PDESolver , class Scalar = double>
void Dumux::Experimental::MultiStageTimeStepper< PDESolver, Scalar >::step ( Variables & vars,
TimeLoopBase< Scalar > & timeLoop )
inline
Parameters
varsThe variables object at the current time level.
timeLoopAn instance of a time loop
Note
We expect the time level in vars to correspond to the given time t

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