![]() |
ryujin 2.1.1 revision 9dcb748690310d6a540ebb8b066d1a0834fc7604
|
#include <source/initial_state_library.h>
Public Types | |
using | HyperbolicSystemView = typename Description::HyperbolicSystem::template View< dim, Number > |
using | state_type = typename HyperbolicSystemView::state_type |
using | precomputed_state_type = typename HyperbolicSystemView::precomputed_state_type |
Public Member Functions | |
InitialState (const std::string &name, const std::string &subsection) | |
virtual state_type | compute (const dealii::Point< dim > &point, Number t)=0 |
virtual precomputed_state_type | initial_precomputations (const dealii::Point< dim > &) |
auto & | name () const |
A small abstract base class to group configuration options for a number of initial flow configurations.
Definition at line 33 of file initial_state_library.h.
using ryujin::InitialState< Description, dim, Number >::HyperbolicSystemView = typename Description::HyperbolicSystem::template View<dim, Number> |
Definition at line 39 of file initial_state_library.h.
using ryujin::InitialState< Description, dim, Number >::state_type = typename HyperbolicSystemView::state_type |
Definition at line 42 of file initial_state_library.h.
using ryujin::InitialState< Description, dim, Number >::precomputed_state_type = typename HyperbolicSystemView::precomputed_state_type |
Definition at line 43 of file initial_state_library.h.
|
inline |
Constructor taking geometry name name
and a subsection subsection
as an argument. The dealii::ParameterAcceptor is initialized with the subsubsection subsection + "/" + name
.
Definition at line 51 of file initial_state_library.h.
|
pure virtual |
Given a position point
returns the corresponding (conserved) initial state. The function is used to interpolate initial values and enforce Dirichlet boundary conditions. For the latter, the function signature has an additional parameter t
denoting the current time to allow for time-dependent (in-flow) Dirichlet data.
Implemented in ryujin::EulerInitialStates::RampUp< Description, dim, Number >, ryujin::EulerInitialStates::Uniform< Description, dim, Number >, ryujin::ScalarConservation::Uniform< dim, Number >, ryujin::Skeleton::Uniform< dim, Number >, ryujin::EulerInitialStates::Rarefaction< Description, dim, Number >, ryujin::EulerInitialStates::Noh< Description, dim, Number >, ryujin::EulerInitialStates::BeckerSolution< Description, dim, Number >, ryujin::EulerInitialStates::Function< Description, dim, Number >, ryujin::EulerInitialStates::IsentropicVortex< Description, dim, Number >, ryujin::EulerInitialStates::LeBlanc< Description, dim, Number >, ryujin::EulerInitialStates::ShockFront< Description, dim, Number >, ryujin::EulerInitialStates::SmoothWave< Description, dim, Number >, ryujin::ScalarConservation::Function< dim, Number >, ryujin::EulerInitialStates::RadialContrast< Description, dim, Number >, ryujin::EulerInitialStates::AstroJet< Description, dim, Number >, ryujin::EulerInitialStates::Contrast< Description, dim, Number >, ryujin::EulerInitialStates::FourStateContrast< Description, dim, Number >, and ryujin::EulerInitialStates::ThreeStateContrast< Description, dim, Number >.
|
inlinevirtual |
Given a position point
returns a precomputed value used for the flux computation via HyperbolicSystem::flux_contribution().
The default implementation of this function simply returns a zero value. In case of the The Shallow Water Equations we precompute the bathymetry. In case of LinearTransport we precompute the advection field.
Reimplemented in ryujin::ShallowWater::FlowOverBump< dim, Number, state_type >, ryujin::ShallowWater::Paraboloid< dim, Number, state_type >, ryujin::ShallowWater::SlopingRampDamBreak< dim, Number, state_type >, ryujin::ShallowWater::ThreeBumpsDamBreak< dim, Number, state_type >, and ryujin::ShallowWater::TriangularDamBreak< dim, Number, state_type >.
Definition at line 76 of file initial_state_library.h.
|
inline |
Return the name of the geometry as (const reference) std::string
Definition at line 84 of file initial_state_library.h.