![]() |
DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
|
Implementation using a different formula for Manning coefficient. More...
#include <dbpp_SrcTreatmentS2.h>
Public Types | |
enum class | eDerivativeStencil |
Public Types inherited from dbpp::SrcNumericalTreatment | |
enum class | eDerivativeType { centered_2nd , noncentered } |
enum class | eDerivativeBCType { periodic , noncentered } |
Public Member Functions | |
virtual std::valarray< double > | TraitementTermeSource2 (const Sfx::StateVectorField &aA, const ListSectionsFlow &aListSectF, const PhysicalBoundaryCnd &aBC) override final |
Compute source terms (bottom and energy slope) | |
void | setDerivativeStencil () |
void | getDerivativeStencil () |
bool | useCentralDifferenceScheme () const noexcept |
central difference derivative order | |
void | setDerivativeOrder (short aOrder) noexcept |
Set deivative order. | |
short | getDerivativeOrder () const noexcept |
Taylor derivative order. | |
void | setPhysicalBoudaryCnd () |
Physical boundary condition applied at both ends. | |
bool | usefriction () const noexcept |
Bottom Friction. | |
bool | useFlatBedBottom () const noexcept |
Bottom profile. | |
Public Member Functions inherited from dbpp::SrcNumericalTreatment | |
virtual std::valarray< double > | TraitementTermeSource0 (const Sfx::scalarField1D &aA, const ListSectionsFlow *aListSectF, const PhysicalBoundaryCnd &aBC) |
Bed Source term evaluation according to Nujic paper (1995) | |
void | setManningRoughnessCoeff (float64 aN) noexcept |
Set roughness coefficient @paramaN roughness coefficient. | |
float64 | getManningRoughnessCoeff () const noexcept |
Get roughness coefficient. | |
void | setHAverage (bool useHavrg) noexcept |
Validate H average algo. | |
void | setSfSbNumericalTreatment (std::string aSfSbTreamnent="Nujic(1995)") noexcept |
Bed slope numericla discretization. | |
void | setHderivativeType (const eDerivativeType &aDxType) noexcept |
H derivative type (finite difference) | |
void | setSpatialDerivativeOrder (uint32 aDxOrdr) noexcept |
finite difference order | |
virtual std::string | getSfSbNumericalTreatment () const noexcept |
const eDerivativeType & | getHderivativeType () const noexcept |
uint32 | getSpatialDerivativeOrder () const noexcept |
Getter. | |
virtual bool | useFriction () const noexcept |
Fiction coefficient in use. | |
virtual bool | isUnitWidth () const noexcept |
Section flow geometry. | |
virtual bool | useManningFormula () const noexcept |
Manning formala (friction) |
Private Attributes | |
bool | m_useCentralScheme { true } |
short | m_derivativeOrder {2} |
bool | m_useFriction {false} |
Additional Inherited Members | |
Protected Member Functions inherited from dbpp::SrcNumericalTreatment | |
SrcNumericalTreatment & | operator= (const SrcNumericalTreatment &)=delete |
disable copy assignment operator (due to the problem of slicing) | |
SrcNumericalTreatment & | operator= (SrcNumericalTreatment &&)=delete |
disable move assignment operator (due to the problem of slicing) |
Implementation using a different formula for Manning coefficient.
|
strong |
|
inlinenoexcept |
Taylor derivative order.
|
inline |
|
inlinenoexcept |
Set deivative order.
aOrder | derivative order |
|
inline |
|
inline |
Physical boundary condition applied at both ends.
|
finaloverridevirtual |
Compute source terms (bottom and energy slope)
aA | state variable |
aListSectF | list of sections flow |
aBC | physiocal boundary conditioon |
Reimplemented from dbpp::SrcNumericalTreatment.
|
inlinenoexcept |
central difference derivative order
|
inlinenoexcept |
Bottom profile.
|
inlinenoexcept |
Bottom Friction.
|
private |
derivative order
|
private |
flag specify use of central scheme
|
private |
flag consider using friction