![]() |
DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
|
The DAM-BREAK Problem class is a model of a well-posed problem. More...
#include <DamBreakProb.h>
Public Types | |
| enum class | eProbType { ProblemA = 0 , ProblemB = 1 } |
| Scoped enum from C++11. More... | |
Public Member Functions | |
| DamBreakProblem (float64 aPhi0, float64 aPhi1) | |
| By default set to the test Problem A. This constructor initialize the Dam-Break problem by creating a math equations system, an initial condition with boundary problem (well posed problem). | |
| float64 | computeVelocity (float64 aCoord, float64 aTime) |
| Compute velocity at a location (x-coordinate) at a given time. | |
| std::vector< float64 > | computeVelocity (const std::vector< float64 > &aListofCoord, float64 aTime) |
| Compute the velocity profile for a list of coordinate at a given time. | |
| float64 | computeWaterDepth (float64 aCoord, float64 aTime) |
| Compute the water depth at a location (x-coordinate) at a given time. | |
| std::vector< float64 > | computeWaterDepth (const std::vector< float64 > &aListofCoord, float64 aTime) |
| Compute water depth profile for a list of coordinate at a given time. | |
| void | setIC (eProbType aTestProblem=eProbType::ProblemA) |
| Set initial condition for the Dam-Break Problem (default ia Problem A) | |
| void | timeLoop () |
| void | init () |
| virtual SweRhsAlgorithm * | getRHSdiscretization () |
| default is no pressure (user responsible to delete pointer) | |
Private Attributes | |
| float64 | mS |
| float64 | mU2 |
| float64 | mC2 |
| float64 | mSqrtG |
| float64 | mPhi1 |
| float64 | mPhi0 |
| eProbType | mTestProblem |
| std::vector< float64 > | mU0 |
| std::vector< float64 > | mH0 |
The DAM-BREAK Problem class is a model of a well-posed problem.
This provides services to compute exact solution of the Dam-Break wave propagation.
Reference: Hudson Technical Report "Numerical Techniques for the Shallow-Water Equations"
Test problems for the Shallow-Water Equations (One-Dimensional Case)
ProblemA: This problem is one the most basic problem for the Shallow-Water System of Conservation Law since no source term is present. Riverbed being constant.
ProblemB: Contains a source term and represent a Dam breaking on a variable depth riverbed.
|
strong |
By default set to the test Problem A. This constructor initialize the Dam-Break problem by creating a math equations system, an initial condition with boundary problem (well posed problem).
| std::vector< float64 > dbpp::DamBreakProblem::computeVelocity | ( | const std::vector< float64 > & | aListofCoord, |
| float64 | aTime ) |
Compute the velocity profile for a list of coordinate at a given time.
| aListofCoord | section coordinate |
| aTime | given time |
Compute velocity at a location (x-coordinate) at a given time.
| aCoord | x-coordinate along flow direction |
| aTime | time |
| std::vector< float64 > dbpp::DamBreakProblem::computeWaterDepth | ( | const std::vector< float64 > & | aListofCoord, |
| float64 | aTime ) |
Compute water depth profile for a list of coordinate at a given time.
| aListofCoord | list of coordinate |
| aTime | given time |
Compute the water depth at a location (x-coordinate) at a given time.
| aCoord | |
| aTime |
|
inlinevirtual |
default is no pressure (user responsible to delete pointer)
|
inline |
| void dbpp::DamBreakProblem::setIC | ( | DamBreakProblem::eProbType | aTestProblem = eProbType::ProblemA | ) |
Set initial condition for the Dam-Break Problem (default ia Problem A)
| aTestProblem | problem to test |
|
inline |
|
private |
Parameters used for Test Problem A
|
private |
|
private |
Water level at downstream
|
private |
Water level at upstream
|
private |
Wave speed of the discontinuity created at x = 0
|
private |
Square root of the gravity
|
private |
|
private |
|
private |
Parameters used for Test Problem A