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