![]() |
ryujin 2.5.0 revision 3a6c8d57210175dea14d8116e1fe878f349f8c1c
|
#include <include/ryujin/interface/parabolic_module.h>


Public Member Functions | |
Functions for performing implicit time steps | |
| virtual void | backward_euler_step (const StateVector< Number > &old_state_vector, const Number old_t, StageVectors stage_state_vectors, StageWeights stage_weights, StateVector< Number > &new_state_vector, Number tau) const =0 |
| virtual void | crank_nicolson_step (const StateVector< Number > &old_state_vector, const Number old_t, StateVector< Number > &new_state_vector, Number tau) const =0 |
The description-free interface of a ParabolicModule: implicit time stepping for a parabolic system.
The interface holds the common state of Interface::Module.
Definition at line 27 of file parabolic_module.h.
|
pure virtual |
Given a reference to a previous state vector old_state_vector at time old_t and a time-step size tau perform an implicit backward Euler step (and store the result in new_state_vector).
The stage state vectors stage_state_vectors together with the weights stage_weights are used to construct a modified high order right-hand side / flux.
Implemented in ryujin::EulerPoisson::ParabolicModule< HyperbolicDescription, dim, Number >, ryujin::NavierStokes::ParabolicModule< dim, Number >, and ryujin::StubParabolicModule< HyperbolicDescription, dim, Number >.
|
pure virtual |
Given a reference to a previous state vector old_state_vector at time old_t and a time-step size tau perform an implicit Crank-Nicolson step (and store the result in new_state_vector).
This variant is used in the TimeIntegrator class for the Strang split variants.
Implemented in ryujin::EulerPoisson::ParabolicModule< HyperbolicDescription, dim, Number >, ryujin::NavierStokes::ParabolicModule< dim, Number >, and ryujin::StubParabolicModule< HyperbolicDescription, dim, Number >.