![]() |
ryujin 2.1.1 revision b04fb4aba7bd97ddfa5994a6b4b6e8586eb15db2
|
#include <source/initial_values.h>


Public Member Functions | |
Constructor and setup | |
| InitialValues (const MPIEnsemble &mpi_ensemble, const OfflineData< dim, Number > &offline_data, const HyperbolicSystem &hyperbolic_system, const Interface::ParabolicSystem ¶bolic_system, const std::string &subsection="/InitialValues") | |
| void | parse_parameters_callback () |
Interpolate initial states | |
| DEAL_II_ALWAYS_INLINE state_type | initial_state (const dealii::Point< dim > &point, Number t) const |
| DEAL_II_ALWAYS_INLINE initial_precomputed_type | initial_precomputed (const dealii::Point< dim > &point) const |
| MultiComponentVector< Number > | interpolate_hyperbolic_vector (Number t=0) const |
| MultiComponentVector< Number > | interpolate_initial_precomputed_vector () const |
Typedefs and constexpr constants | |
| using | HyperbolicSystem = typename HyperbolicDescription::HyperbolicSystem |
| using | View = typename HyperbolicSystem::template View< dim, Number > |
| using | state_type = typename View::state_type |
| using | initial_precomputed_type = typename View::initial_precomputed_type |
| static constexpr auto | problem_dimension = View::problem_dimension |
| static constexpr auto | n_initial_precomputed_values |
A class implementing a number of different initial value configurations.
Given a position point the member function InitialValues::initial_state() returns the corresponding (conserved) initial state. The function is used to interpolate initial values and enforce Dirichlet boundary conditions. For the latter, the the function signature has an additional parameter t denoting the current time to allow for time-dependent (in-flow) Dirichlet data.
For validation purposes a number of analytic solutions are implemented as well.
Definition at line 41 of file initial_values.h.
| using ryujin::InitialValues< HyperbolicDescription, dim, Number >::HyperbolicSystem = typename HyperbolicDescription::HyperbolicSystem |
Definition at line 49 of file initial_values.h.
| using ryujin::InitialValues< HyperbolicDescription, dim, Number >::View = typename HyperbolicSystem::template View<dim, Number> |
Definition at line 51 of file initial_values.h.
| using ryujin::InitialValues< HyperbolicDescription, dim, Number >::state_type = typename View::state_type |
Definition at line 55 of file initial_values.h.
| using ryujin::InitialValues< HyperbolicDescription, dim, Number >::initial_precomputed_type = typename View::initial_precomputed_type |
Definition at line 60 of file initial_values.h.
| ryujin::InitialValues< HyperbolicDescription, dim, Number >::InitialValues | ( | const MPIEnsemble & | mpi_ensemble, |
| const OfflineData< dim, Number > & | offline_data, | ||
| const HyperbolicSystem & | hyperbolic_system, | ||
| const Interface::ParabolicSystem & | parabolic_system, | ||
| const std::string & | subsection = "/InitialValues< HyperbolicDescription, dim, Number >" |
||
| ) |
Constructor.
Definition at line 20 of file initial_values.template.h.
References ryujin::InitialValues< HyperbolicDescription, dim, Number >::parse_parameters_callback(), and ryujin::InitialStateLibrary< HyperbolicDescription, dim, Number >::populate_initial_state_list().
| void ryujin::InitialValues< HyperbolicDescription, dim, Number >::parse_parameters_callback | ( | ) |
Callback for ParameterAcceptor::initialize(). After we read in configuration parameters from the parameter file we have to do some (minor) preparatory work in this class to precompute some initial state values. Do this with a callback.
Definition at line 182 of file initial_values.template.h.
Referenced by ryujin::InitialValues< HyperbolicDescription, dim, Number >::InitialValues().
|
inline |
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.
Definition at line 99 of file initial_values.h.
|
inline |
Given a position point returns the corresponding precomputed initial values, i.e., the quantities that are derived from the initial state and that remain constant throughout the computation (such as, for example, the bathymetry of the shallow water equations).
Definition at line 112 of file initial_values.h.
| auto ryujin::InitialValues< HyperbolicDescription, dim, Number >::interpolate_hyperbolic_vector | ( | Number | t = 0 | ) | const |
This routine computes and returns a hyperbolic state vector populated with initial values for a specified time t.
Definition at line 251 of file initial_values.template.h.
References ryujin::MultiComponentVector< Number >::reinit_with_vector_partitioner().
| auto ryujin::InitialValues< HyperbolicDescription, dim, Number >::interpolate_initial_precomputed_vector | ( | ) | const |
This routine computes and returns a vector populated with the precomputed initial values returned by initial_precomputed().
Definition at line 291 of file initial_values.template.h.
References ryujin::precomputed, and ryujin::MultiComponentVector< Number >::reinit_with_scalar_partitioner().
|
staticconstexpr |
Definition at line 53 of file initial_values.h.
|
staticconstexpr |
Definition at line 57 of file initial_values.h.