![]() |
DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
|
MOL (Method-of-lines) spatial and time discretization done separetly. Model of the following equation (ODE) U_t = L_delta(U;t);
where L_delta (spatial operator) contains derivative of some variable and describe the evolution of this variable (time evolution). ODE: Ordinary Differential Equation.
More...
#include <dbpp_SemiDiscreteMethod.h>
Public Member Functions | |
SemiDiscreteMethod () | |
Default ctor. | |
SemiDiscreteMethod (SweRhsAlgorithm *aRhsAlgo) | |
~SemiDiscreteMethod () | |
Dtor. | |
void | setSweRhsAlgorithm (SweRhsAlgorithm *aRhsAlgo) override final |
Set the RHS algorithm discretization. | |
SweRhsAlgorithm * | getSweRhsAlgorithm () const override final |
getter | |
SweRhsAlgorithm * | getSweRhsAlgorithm () override final |
getter | |
bool | isSemiDiscreteMethod () const override final |
validate method | |
bool | isTimeDependent () const override final |
validate time dependency | |
ODESolver1D * | getODESolver1D () const |
getter | |
void | mainLoop (const std::shared_ptr< dbpp::FiniteVolumeDiscretization > &aGlbDiscr, Sfx::SfxTimePrm &aTime) override final |
update nodal value | |
Uh | updatedValues () override final |
Updating FiniteVolumeDiscretization global nodal values (Uh) | |
Public Member Functions inherited from dbpp::NumericalMethod | |
virtual void | initialize (const std::shared_ptr< FiniteVolumeDiscretization > &aGlbDiscr) |
Initialization. | |
virtual void | mainLoop (const std::shared_ptr< FiniteVolumeDiscretization > &aGlbDiscr, Sfx::SfxTimePrm &aTime)=0 |
Main loop to update all nodal values. | |
virtual bool | isGodunovType () const |
Numerical method type. | |
virtual bool | isFluxDiffSplitting () const |
Numerical method type. |
Private Member Functions | |
float64 | timeStepUpdate (std::vector< float64 > &&aVecA, std::vector< float64 > &&aVecQ) |
compute simulation time step |
Private Attributes | |
ODESolver1D * | m_odeSolver1D |
Sfx::LDeltaOperator | m_ldeltaOp |
SweRhsAlgorithm * | m_rhsAlgo |
MOL (Method-of-lines) spatial and time discretization done separetly. Model of the following equation (ODE) U_t = L_delta(U;t);
where L_delta (spatial operator) contains derivative of some variable and describe the evolution of this variable (time evolution). ODE: Ordinary Differential Equation.
dbpp::SemiDiscreteMethod::SemiDiscreteMethod | ( | ) |
Default ctor.
dbpp::SemiDiscreteMethod::SemiDiscreteMethod | ( | SweRhsAlgorithm * | aRhsAlgo | ) |
aRhsAlgo |
dbpp::SemiDiscreteMethod::~SemiDiscreteMethod | ( | ) |
Dtor.
|
inline |
getter
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
inlinefinaloverridevirtual |
|
finaloverride |
update nodal value
aGlbDiscr | finite olume discretization |
aTime | simulation logical time |
|
inlinefinaloverridevirtual |
Set the RHS algorithm discretization.
aRhsAlgo | rhs algorithm |
Reimplemented from dbpp::NumericalMethod.
|
private |
compute simulation time step
aVecA | vector of values (state variable A) |
aVecQ | vector of values (state variable A) |
|
inlinefinaloverridevirtual |
Updating FiniteVolumeDiscretization global nodal values (Uh)
Implements dbpp::NumericalMethod.
|
private |
RHS discretization operator
|
private |
ODE solver
|
private |
Swe right-hand side discr.