![]() |
DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
|
Wrapper of legacy code. Usage: SbSfTermsEvaluation w_S0Sf{listSections,bc1,bc2}; auto w_SfS0 = w_S0Sf.TraitementTermeS2(aField1,aField2); auto& w_rhs = m_rhsAlgo.getRHS(); w_rhs.m_swerhs.S = std::move(w_SfS0);. More...
#include <Testvs19_SbSfTermsEvaluation.h>
Public Member Functions | |
| SbSfTermsEvaluation (bool usePressure=false, bool useSf=true, bool isUnitWidth=true) | |
| ctor (settings flags for pressure, friction an section width) | |
| std::valarray< double > | TraitementTermeSource2 (const Sfx::StateVectorField &aStateVec, const dbpp::ListSectionsFlow &aListSectF, const dbpp::PhysicalBoundaryCnd &aBC) override final |
| Compute source terms (friction and bed slope) | |
| bool | useFriction () const noexcept override final |
| Manning formula is use. | |
| 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 | isUnitWidth () const noexcept |
| Section flow geometry. | |
| virtual bool | useManningFormula () const noexcept |
| Manning formala (friction) | |
Private Attributes | |
| bool | m_usePressure |
| bool | m_useFriction |
| bool | m_unitWidth |
| float64 | m_ManningCoeff |
Additional Inherited Members | |
| Public Types inherited from dbpp::SrcNumericalTreatment | |
| enum class | eDerivativeType { centered_2nd , noncentered } |
| enum class | eDerivativeBCType { periodic , noncentered } |
| 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) | |
Wrapper of legacy code. Usage: SbSfTermsEvaluation w_S0Sf{listSections,bc1,bc2}; auto w_SfS0 = w_S0Sf.TraitementTermeS2(aField1,aField2); auto& w_rhs = m_rhsAlgo.getRHS(); w_rhs.m_swerhs.S = std::move(w_SfS0);.
|
inline |
ctor (settings flags for pressure, friction an section width)
| usePressure | pressure flag |
| useSf | friction flag |
| isUnitWidth | section width flag |
|
finaloverridevirtual |
Compute source terms (friction and bed slope)
| aStateVec | state vector field |
| aListSectF | list of sections |
| aBC | physical boundary condition |
Reimplemented from dbpp::SrcNumericalTreatment.
|
inlinefinaloverridevirtualnoexcept |
|
private |
Manning coeffcient
|
private |
cross-section unit width
|
private |
friction flag to take account pressure term
|
private |
pressure flag to take account pressure term