ryujin 2.1.1 revision 336b16a72e829721302c626ec7071b92032b8248
initial_state_library.template.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
9
10#include "description.h"
12
13namespace ryujin
14{
15 using namespace Skeleton;
16
17 template <int dim, typename Number>
18 class InitialStateLibrary<Description, dim, Number>
19 {
20 public:
22
24 std::set<std::unique_ptr<InitialState<Description, dim, Number>>>;
25
26 static void
28 const HyperbolicSystem &h,
29 const std::string &s)
30 {
31 auto add = [&](auto &&object) {
32 initial_state_list.emplace(std::move(object));
33 };
34
35 add(std::make_unique<Uniform<dim, Number>>(h, s));
36 }
37 };
38} // namespace ryujin
std::set< std::unique_ptr< InitialState< Description, dim, Number > > > initial_state_list_type
static void populate_initial_state_list(initial_state_list_type &initial_state_list, const HyperbolicSystem &h, const std::string &s)
DEAL_II_ALWAYS_INLINE FT add(const FT &flux_left_ij, const FT &flux_right_ij)
Euler::Description Description
Euler::HyperbolicSystem HyperbolicSystem
Definition: description.h:32