![]() |
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.