DamBreak++ Wave Simulator 0.3
DamBreak++ Simulation Framework
Loading...
Searching...
No Matches
dbpp_Gamma.h
Go to the documentation of this file.
1#pragma once
2
3// C++ include
4#include <optional>
5
6// SfxBase19 includes
7#include "include/BaseMacros.h"
8#include "include/Sfx_DefineTypes.h"
9
10namespace dbpp
11{
15 class Gamma
16 {
17 public:
21 enum class eBndType
22 {
23 None = 0,
24 Neumann = 1,
28 };
29 public:
35 Gamma( eBndType aType = eBndType::None, std::optional<float64> aValue = std::nullopt)
36 : m_Type(aType),
37 m_Value(aValue.value())
38 {
40 {
41 SFX_REQUIRE(aValue != std::nullopt,
42 "A value must be supplied for this type"
43 "of boundary condition");
44 }
45 }
46
50 eBndType type() const noexcept { return m_Type; }
55 float64 value() const noexcept { return m_Value; } // ?? i am not sure
56 private:
59 };
60} // End of namespace
eBndType
Boundary type.
Definition dbpp_Gamma.h:22
@ None
Definition dbpp_Gamma.h:23
@ noncentered
Definition dbpp_Gamma.h:27
@ Neumann
Definition dbpp_Gamma.h:24
@ Dirichlet
Definition dbpp_Gamma.h:25
@ periodic
Definition dbpp_Gamma.h:26
eBndType m_Type
Definition dbpp_Gamma.h:57
eBndType type() const noexcept
boundary condition type
Definition dbpp_Gamma.h:50
float64 m_Value
Definition dbpp_Gamma.h:58
Gamma(eBndType aType=eBndType::None, std::optional< float64 > aValue=std::nullopt)
ctor from b.c. type and a value
Definition dbpp_Gamma.h:35
float64 value() const noexcept
boundary condition value
Definition dbpp_Gamma.h:55
Definition DamBreakProb.h:15
double float64
Definition dbpp_LDeltaOperator.h:12