ryujin
2.1.1 revision ee5cbcbf2346c1299c942d0e1f13b46449973c18
Loading...
Searching...
No Matches
source
scalar_conservation
initial_state_uniform.h
Go to the documentation of this file.
1
//
2
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
3
// Copyright (C) 2022 - 2025 by the ryujin authors
4
//
5
6
#pragma once
7
8
#include <compile_time_options.h>
9
10
#include "
hyperbolic_system.h
"
11
#include <
initial_state_library.h
>
12
13
namespace
ryujin
14
{
15
namespace
ScalarConservation
16
{
17
struct
Description
;
18
24
template
<
int
dim,
typename
Number>
25
class
Uniform
:
public
InitialState
<Description, dim, Number>
26
{
27
public
:
28
using
View
=
HyperbolicSystemView<dim, Number>
;
29
using
state_type
=
typename
View::state_type
;
30
31
Uniform
(
const
HyperbolicSystem
&hyperbolic_system,
32
const
std::string subsection)
33
:
InitialState
<
Description
, dim, Number>(
"uniform"
, subsection)
34
, hyperbolic_system(hyperbolic_system)
35
{
36
primitive_[0] = 1.0;
37
this->add_parameter(
38
"primitive state"
, primitive_,
"Initial 1d primitive state"
);
39
}
40
41
state_type
compute
(
const
dealii::Point<dim> &
/*point*/
,
42
Number
/*t*/
)
final
43
{
44
const
auto
view = hyperbolic_system.
view
<dim, Number>();
45
return
view.from_primitive_state(view.expand_state(primitive_));
46
}
47
48
private
:
49
const
HyperbolicSystem
&hyperbolic_system;
50
51
state_type
primitive_;
52
};
53
}
// namespace ScalarConservation
54
}
// namespace ryujin
ryujin::InitialState
Definition
initial_state_library.h:34
ryujin::ScalarConservation::HyperbolicSystemView
Definition
hyperbolic_system.h:120
ryujin::ScalarConservation::HyperbolicSystemView::state_type
dealii::Tensor< 1, problem_dimension, Number > state_type
Definition
hyperbolic_system.h:140
ryujin::ScalarConservation::HyperbolicSystem
Definition
hyperbolic_system.h:39
ryujin::ScalarConservation::HyperbolicSystem::view
auto view() const
Definition
hyperbolic_system.h:65
ryujin::ScalarConservation::Uniform
Definition
initial_state_uniform.h:26
ryujin::ScalarConservation::Uniform::compute
state_type compute(const dealii::Point< dim > &, Number) final
Definition
initial_state_uniform.h:41
ryujin::ScalarConservation::Uniform::state_type
typename View::state_type state_type
Definition
initial_state_uniform.h:29
ryujin::ScalarConservation::Uniform::Uniform
Uniform(const HyperbolicSystem &hyperbolic_system, const std::string subsection)
Definition
initial_state_uniform.h:31
initial_state_library.h
ryujin
Definition
computing_timer.h:22
ryujin::Description
Euler::Description Description
Definition
initial_state_library.template.h:15
hyperbolic_system.h
ryujin::ScalarConservation::Description
Definition
description.h:37
Generated by
1.9.8