ryujin
2.1.1 revision 863a4d36dcc743d4e1a9b41cfabd03d0aea57863
source
euler
initial_state_library_euler.h
Go to the documentation of this file.
1
//
2
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
3
// Copyright (C) 2023 by the ryujin authors
4
//
5
6
#pragma once
7
8
#include <
initial_state_library.h
>
9
10
#include "
initial_state_astro_jet.h
"
11
#include "
initial_state_becker_solution.h
"
12
#include "
initial_state_contrast.h
"
13
#include "
initial_state_four_state_contrast.h
"
14
#include "
initial_state_function.h
"
15
#include "
initial_state_icf_like.h
"
16
#include "
initial_state_isentropic_vortex.h
"
17
#include "
initial_state_leblanc.h
"
18
#include "
initial_state_noh.h
"
19
#include "
initial_state_radial_contrast.h
"
20
#include "
initial_state_ramp_up.h
"
21
#include "
initial_state_rarefaction.h
"
22
#include "
initial_state_shock_front.h
"
23
#include "
initial_state_smooth_wave.h
"
24
#include "
initial_state_three_state_contrast.h
"
25
#include "
initial_state_uniform.h
"
26
27
namespace
ryujin
28
{
29
namespace
EulerInitialStates
30
{
31
template
<
typename
Description,
int
dim,
typename
Number>
32
void
populate_initial_state_list
(
33
typename
ryujin::InitialStateLibrary<Description, dim, Number>
::
34
initial_state_list_type &initial_state_list,
35
const
typename
Description::HyperbolicSystem
&h,
36
const
std::string &s)
37
{
38
auto
add
= [&](
auto
&&object) {
39
initial_state_list.emplace(std::move(
object
));
40
};
41
42
add
(std::make_unique<
AstroJet<Description, dim, Number>
>(h, s));
43
add
(std::make_unique<
BeckerSolution<Description, dim, Number>
>(h, s));
44
add
(std::make_unique<
Contrast<Description, dim, Number>
>(h, s));
45
add
(std::make_unique<
FourStateContrast<Description, dim, Number>
>(h, s));
46
add
(std::make_unique<
Function<Description, dim, Number>
>(h, s));
47
add
(std::make_unique<
ICFLike<Description, dim, Number>
>(h, s));
48
add
(std::make_unique<
IsentropicVortex<Description, dim, Number>
>(h, s));
49
add
(std::make_unique<
LeBlanc<Description, dim, Number>
>(h, s));
50
add
(std::make_unique<
Noh<Description, dim, Number>
>(h, s));
51
add
(std::make_unique<
RadialContrast<Description, dim, Number>
>(h, s));
52
add
(std::make_unique<
RampUp<Description, dim, Number>
>(h, s));
53
add
(std::make_unique<
Rarefaction<Description, dim, Number>
>(h, s));
54
add
(std::make_unique<
ShockFront<Description, dim, Number>
>(h, s));
55
add
(std::make_unique<
SmoothWave<Description, dim, Number>
>(h, s));
56
add
(std::make_unique<
ThreeStateContrast<Description, dim, Number>
>(h, s));
57
add
(std::make_unique<
Uniform<Description, dim, Number>
>(h, s));
58
}
59
}
// namespace EulerInitialStates
60
}
// namespace ryujin
ryujin::EulerInitialStates::AstroJet
Definition:
initial_state_astro_jet.h:28
ryujin::EulerInitialStates::BeckerSolution
Definition:
initial_state_becker_solution.h:46
ryujin::EulerInitialStates::Contrast
Definition:
initial_state_contrast.h:26
ryujin::EulerInitialStates::FourStateContrast
Definition:
initial_state_four_state_contrast.h:29
ryujin::EulerInitialStates::Function
Definition:
initial_state_function.h:23
ryujin::EulerInitialStates::ICFLike
Definition:
initial_state_icf_like.h:29
ryujin::EulerInitialStates::IsentropicVortex
Definition:
initial_state_isentropic_vortex.h:27
ryujin::EulerInitialStates::LeBlanc
Definition:
initial_state_leblanc.h:29
ryujin::EulerInitialStates::Noh
Definition:
initial_state_noh.h:27
ryujin::EulerInitialStates::RadialContrast
Definition:
initial_state_radial_contrast.h:30
ryujin::EulerInitialStates::RampUp
Definition:
initial_state_ramp_up.h:24
ryujin::EulerInitialStates::Rarefaction
Definition:
initial_state_rarefaction.h:28
ryujin::EulerInitialStates::ShockFront
Definition:
initial_state_shock_front.h:28
ryujin::EulerInitialStates::SmoothWave
Definition:
initial_state_smooth_wave.h:28
ryujin::EulerInitialStates::ThreeStateContrast
Definition:
initial_state_three_state_contrast.h:29
ryujin::EulerInitialStates::Uniform
Definition:
initial_state_uniform.h:25
ryujin::Euler::HyperbolicSystem
Definition:
hyperbolic_system.h:40
ryujin::InitialStateLibrary< Description, dim, Number >
Definition:
initial_state_library.template.h:19
initial_state_astro_jet.h
initial_state_becker_solution.h
initial_state_four_state_contrast.h
initial_state_icf_like.h
initial_state_isentropic_vortex.h
initial_state_leblanc.h
initial_state_library.h
initial_state_noh.h
initial_state_radial_contrast.h
initial_state_ramp_up.h
initial_state_rarefaction.h
initial_state_shock_front.h
initial_state_smooth_wave.h
initial_state_three_state_contrast.h
ryujin::EulerInitialStates::populate_initial_state_list
void populate_initial_state_list(typename ryujin::InitialStateLibrary< Description, dim, Number >::initial_state_list_type &initial_state_list, const typename Description::HyperbolicSystem &h, const std::string &s)
Definition:
initial_state_library_euler.h:32
ryujin
Definition:
convenience_macros.h:16
ryujin::add
DEAL_II_ALWAYS_INLINE FT add(const FT &flux_left_ij, const FT &flux_right_ij)
Definition:
convenience_macros.h:97
initial_state_contrast.h
initial_state_function.h
initial_state_uniform.h
Generated by
1.9.4