MAIA
bb96820c
Multiphysics at AIA
Loading...
Searching...
No Matches
dgcartesianbcfactoryacousticperturb.cpp
Go to the documentation of this file.
1
// Copyright (C) 2024 The m-AIA AUTHORS
2
//
3
// This file is part of m-AIA (https://git.rwth-aachen.de/aia/m-AIA/m-AIA)
4
//
5
// SPDX-License-Identifier: LGPL-3.0-only
6
7
#include "
INCLUDE/maiatypes.h
"
8
#include "
dgcartesianboundarycondition.h
"
9
#include "
dgcartesianboundaryconditionfactory.h
"
10
#include "
dgcartesiansyseqnacousticperturb.h
"
11
12
// Includes for boundary conditions start here
13
#include "
dgcartesianbcacousticperturbcbc.h
"
14
#include "
dgcartesianbcacousticperturbrbc.h
"
15
#include "
dgcartesianbcacousticperturbsolidwall.h
"
16
#include "
dgcartesianbcacousticperturbstraightductexit.h
"
17
#include "
dgcartesianbcexact.h
"
18
19
20
namespace
maia
{
21
namespace
dg {
22
namespace
bc {
23
namespace
factory {
24
25
template
<MInt nDim>
26
struct
Init
<nDim,
DgSysEqnAcousticPerturb
<nDim>> {
27
using
SysEqn
=
DgSysEqnAcousticPerturb<nDim>
;
28
using
FactoryType
=
DgBoundaryConditionFactory<nDim, SysEqn>
;
29
static
void
init
(
FactoryType
& factory);
30
};
31
32
template
<MInt nDim>
33
void
Init<nDim, DgSysEqnAcousticPerturb<nDim>
>::init(FactoryType& factory) {
34
// Import namespace for ease-of-use
35
using namespace
maia::dg::bc
;
36
40
41
// Add all boundary conditions with a unique boundary condition id
43
factory.add(0,
Type
<
DgBcExact<nDim, SysEqn>
>());
44
46
factory.add(20,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, false>
>());
47
factory.add(200,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, false>
>());
48
factory.add(201,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, false>
>());
49
factory.add(202,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, false>
>());
50
factory.add(203,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, false>
>());
51
53
factory.add(21,
Type
<
DgBcAcousticPerturbSolidWall<nDim, SysEqn, true>
>());
55
factory.add(22,
Type
<
DgBcAcousticPerturbStraightDuctExit<nDim, SysEqn>
>());
56
58
factory.add(301,
Type
<
DgBcAcousticPerturbCBC<nDim>
>());
// CBC
59
factory.add(304,
Type
<
DgBcAcousticPerturbCBC<nDim>
>());
// CBC
60
62
factory.add(400,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
63
factory.add(401,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
64
factory.add(402,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
65
factory.add(403,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
66
factory.add(404,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
67
factory.add(405,
Type
<
DgBcAcousticPerturbRBC<nDim>
>());
68
70
factory.add(30,
Type
<
DgBcExact<nDim, SysEqn>
>());
71
factory.add(31,
Type
<
DgBcExact<nDim, SysEqn>
>());
72
factory.add(32,
Type
<
DgBcExact<nDim, SysEqn>
>());
73
factory.add(33,
Type
<
DgBcExact<nDim, SysEqn>
>());
74
factory.add(34,
Type
<
DgBcExact<nDim, SysEqn>
>());
75
factory.add(35,
Type
<
DgBcExact<nDim, SysEqn>
>());
76
factory.add(36,
Type
<
DgBcExact<nDim, SysEqn>
>());
77
factory.add(37,
Type
<
DgBcExact<nDim, SysEqn>
>());
78
factory.add(38,
Type
<
DgBcExact<nDim, SysEqn>
>());
79
factory.add(39,
Type
<
DgBcExact<nDim, SysEqn>
>());
80
factory.add(40,
Type
<
DgBcExact<nDim, SysEqn>
>());
81
factory.add(41,
Type
<
DgBcExact<nDim, SysEqn>
>());
82
factory.add(42,
Type
<
DgBcExact<nDim, SysEqn>
>());
83
factory.add(43,
Type
<
DgBcExact<nDim, SysEqn>
>());
84
factory.add(44,
Type
<
DgBcExact<nDim, SysEqn>
>());
85
factory.add(45,
Type
<
DgBcExact<nDim, SysEqn>
>());
86
factory.add(46,
Type
<
DgBcExact<nDim, SysEqn>
>());
87
factory.add(47,
Type
<
DgBcExact<nDim, SysEqn>
>());
88
factory.add(48,
Type
<
DgBcExact<nDim, SysEqn>
>());
89
factory.add(49,
Type
<
DgBcExact<nDim, SysEqn>
>());
90
}
91
93
template
struct
Init<2, DgSysEqnAcousticPerturb<2>>;
94
template
struct
Init<3, DgSysEqnAcousticPerturb<3>>;
95
96
}
// namespace factory
97
}
// namespace bc
98
}
// namespace dg
99
}
// namespace maia
100
102
template
class
DgBoundaryConditionFactory<2, DgSysEqnAcousticPerturb<2>
>;
103
template
class
DgBoundaryConditionFactory<3, DgSysEqnAcousticPerturb<3>
>;
DgBcAcousticPerturbCBC
Definition:
dgcartesianbcacousticperturbcbc.h:13
DgBcAcousticPerturbRBC
Definition:
dgcartesianbcacousticperturbrbc.h:14
DgBcAcousticPerturbSolidWall
Solid (slip) wall boundary condition.
Definition:
dgcartesianbcacousticperturbsolidwall.h:17
DgBcAcousticPerturbStraightDuctExit
Definition:
dgcartesianbcacousticperturbstraightductexit.h:20
DgBcExact
Boundary condition which imposes initial condition ("exact" boundary conditions) at the domain bounda...
Definition:
dgcartesianbcexact.h:26
DgBoundaryConditionFactory
Class to handle creation of boundary condition objects.
Definition:
dgcartesianboundaryconditionfactory.h:48
DgSysEqnAcousticPerturb
Definition:
dgcartesiansyseqnacousticperturb.h:27
dgcartesianbcacousticperturbcbc.h
dgcartesianbcacousticperturbrbc.h
dgcartesianbcacousticperturbsolidwall.h
dgcartesianbcacousticperturbstraightductexit.h
dgcartesianbcexact.h
dgcartesianboundarycondition.h
dgcartesianboundaryconditionfactory.h
dgcartesiansyseqnacousticperturb.h
maiatypes.h
maia::dg::bc
Definition:
dgcartesianbcfactoryacousticperturb.cpp:22
maia
Namespace for auxiliary functions/classes.
Definition:
acaobserverdatacollector.h:76
maia::dg::bc::Type
Simple type-to-type mapper for function overloading.
Definition:
dgcartesianboundaryconditionfactory.h:25
maia::dg::bc::factory::Init
Definition:
dgcartesianboundaryconditionfactory.h:86
maia::dg::bc::factory::Init::init
static void init(FactoryType &factory)
home
gitlab-runner
scratch
builds
oxpnswJ6
1
aia
m-AIA
m-AIA
src
DG
dgcartesianbcfactoryacousticperturb.cpp
Generated on Sun Jun 16 2024 23:44:00 for MAIA by
1.9.5