Shallow-water (one-dimension) is a system of conservation laws. Conserved quantities (state variables) are the mass and the momentum. It's the differential form of Newton law (f=ma) but for a mass of fluid in a movement under gravity. Forces that act on the mass of fluid are friction, gravity and pressure.
More...
#include <Sfx_StVenant1DEquations.h>
|
using | valar64 = std::valarray<float64> |
|
| StVenant1D (eFluxType aFtype=eFluxType::incomplete) |
| default ctor (convective by default)
|
SCLEquation * | Clone () override |
| Clone type.
|
float64 | flux (const Sfx::StateVector &aState, const eFluxType aFluxT=eFluxType::incomplete) override final |
| convective flux function
|
std::valarray< float64 > | flux (const Sfx::StateVectorField &aState, const eFluxType aFluxT=eFluxType::incomplete) |
| physical flux
|
std::valarray< float64 > | flux (const dbpp::Uh &aGblNval, const eFluxType aFluxT=eFluxType::incomplete) |
| physical flux
|
float64 | flux (const Sfx::StateVector &aState, const dbpp::SectionFlow &aSect) |
| physical flux
|
std::string | name () const override final |
| name description
|
bool | hasSourceTerm () const override final |
| use term sucg friction and bed slope
|
uint32 | getNumberOfEquations () const override final |
| implement the physical flux
|
uint32 | getDimension () const override final |
| System dimension.
|
eFluxType | getFluxType () const noexcept |
| physical flux type
|
bool | useFriction () const noexcept |
| return false by default
|
Shallow-water (one-dimension) is a system of conservation laws. Conserved quantities (state variables) are the mass and the momentum. It's the differential form of Newton law (f=ma) but for a mass of fluid in a movement under gravity. Forces that act on the mass of fluid are friction, gravity and pressure.
◆ valar64
◆ StVenant1D()
Sfx::StVenant1D::StVenant1D |
( |
eFluxType | aFtype = eFluxType::incomplete | ) |
|
|
inline |
default ctor (convective by default)
- Parameters
-
aFtype | incomplete (without pressure term) |
◆ CalculTermePressionHydrostatique1D()
valar64 Sfx::StVenant1D::CalculTermePressionHydrostatique1D |
( |
const valar64 & | A, |
|
|
float64 | B = 1. ) |
|
inlineprivate |
Hydrostatic pressure.
- Parameters
-
A | first state variable |
B | section width |
- Returns
- pressure value
◆ Clone()
SCLEquation * Sfx::StVenant1D::Clone |
( |
| ) |
|
|
inlineoverride |
Clone type.
- Returns
- Base class pointer
◆ EvaluationFlux_C_1D()
Evaluate convective flux and pressure (complete)
- Parameters
-
U1 | first state variable |
U2 | second state variable |
B | section width |
- Returns
- flux value
◆ EvaluationFlux_I_1D()
Evaluate convective flux (incomplete)
- Parameters
-
U1 | first state variable |
U2 | second state variable |
B | section width |
- Returns
- nodal values as array
◆ flux() [1/4]
std::valarray< float64 > Sfx::StVenant1D::flux |
( |
const dbpp::Uh & | aGblNval, |
|
|
const eFluxType | aFluxT = eFluxType::incomplete ) |
physical flux
- Parameters
-
aGblNval | global nodal values |
aFluxT | flux type |
- Returns
- array of values
◆ flux() [2/4]
float64 Sfx::StVenant1D::flux |
( |
const Sfx::StateVector & | aState, |
|
|
const dbpp::SectionFlow & | aSect ) |
physical flux
- Parameters
-
aState | State vector |
aSect | Section flow |
- Returns
- flux value
◆ flux() [3/4]
float64 Sfx::StVenant1D::flux |
( |
const Sfx::StateVector & | aState, |
|
|
const eFluxType | aFluxT = eFluxType::incomplete ) |
|
finaloverride |
convective flux function
- Parameters
-
aState | state vector |
aFluxT | type of flux (with pressure) |
- Returns
- physical flux
◆ flux() [4/4]
std::valarray< float64 > Sfx::StVenant1D::flux |
( |
const Sfx::StateVectorField & | aState, |
|
|
const eFluxType | aFluxT = eFluxType::incomplete ) |
physical flux
- Parameters
-
aState | state variables |
aFluxT | flux type |
- Returns
- array of values
◆ getDimension()
uint32 Sfx::StVenant1D::getDimension |
( |
| ) |
const |
|
inlinefinaloverride |
System dimension.
- Returns
- number of dimension
◆ getFluxType()
eFluxType Sfx::StVenant1D::getFluxType |
( |
| ) |
const |
|
inlinenoexcept |
physical flux type
- Returns
- type
◆ getNumberOfEquations()
uint32 Sfx::StVenant1D::getNumberOfEquations |
( |
| ) |
const |
|
inlinefinaloverride |
implement the physical flux
- Returns
default is 2 SWE (Shalow-Water Equations)
- Returns
- number of equations
◆ hasSourceTerm()
bool Sfx::StVenant1D::hasSourceTerm |
( |
| ) |
const |
|
inlinefinaloverride |
use term sucg friction and bed slope
- Returns
- true/false
◆ name()
std::string Sfx::StVenant1D::name |
( |
| ) |
const |
|
inlinefinaloverride |
name description
- Returns
- string
◆ useFriction()
bool Sfx::StVenant1D::useFriction |
( |
| ) |
const |
|
inlinenoexcept |
return false by default
- Returns
- true/false
◆ m_FluxType
eFluxType Sfx::StVenant1D::m_FluxType |
|
private |
◆ m_useFriction
bool Sfx::StVenant1D::m_useFriction |
|
private |
The documentation for this class was generated from the following files: