/home/runner/work/kynema-sgf/kynema-sgf/src/turbulence/RANS/KOmegaSST.H Source File

Kynema-SGF API: /home/runner/work/kynema-sgf/kynema-sgf/src/turbulence/RANS/KOmegaSST.H Source File
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
KOmegaSST.H
Go to the documentation of this file.
1#ifndef KOMEGASST_H
2#define KOMEGASST_H
3
4#include <string>
7#include "AMReX_REAL.H"
8
9using namespace amrex::literals;
10
11namespace kynema_sgf::turbulence {
12
36template <typename Transport>
37class KOmegaSST : public TurbModelBase<Transport>
38{
39public:
40 static std::string identifier()
41 {
42 return "KOmegaSST-" + Transport::identifier();
43 }
44
45 explicit KOmegaSST(CFDSim& sim);
46
47 ~KOmegaSST() override;
48
49 [[nodiscard]] std::string model_name() const override
50 {
51 return "KOmegaSST";
52 }
53
56 FieldState fstate, DiffusionType diff_type) override;
57
59 void post_advance_work() override {}
60
62 void post_init_actions() override;
63
65 void post_regrid_actions() override;
66
68 void update_scalar_diff(Field& deff, const std::string& name) override;
69
71 void parse_model_coeffs() override;
72
74 [[nodiscard]] TurbulenceModel::CoeffsDictType model_coeffs() const override;
75
76protected:
78
87
90
92 amrex::Real m_beta_star{0.09_rt};
93 amrex::Real m_alpha1{0.5555555555555556_rt};
94 amrex::Real m_alpha2{0.44_rt};
95 amrex::Real m_beta1{0.075_rt};
96 amrex::Real m_beta2{0.0828_rt};
97 amrex::Real m_sigma_k1{0.85_rt};
98 amrex::Real m_sigma_k2{1.0_rt};
99 amrex::Real m_sigma_omega1{0.5_rt};
100 amrex::Real m_sigma_omega2{0.856_rt};
101 amrex::Real m_a1{0.31_rt};
102 amrex::Real m_tke_amb{0.0_rt};
103 amrex::Real m_sdr_amb{0.0_rt};
104
107 amrex::Real m_buoyancy_factor = 0.0_rt;
108 amrex::Real m_sigma_t{0.85_rt};
109 amrex::Vector<amrex::Real> m_gravity{0.0_rt, 0.0_rt, -9.81_rt};
110
111 std::unique_ptr<ScratchField> m_gradK;
112 std::unique_ptr<ScratchField> m_gradOmega;
113 std::unique_ptr<ScratchField> m_gradden;
114};
115
116} // namespace kynema_sgf::turbulence
117
118#endif /* KOMEGASST_H */
Definition CFDSim.H:55
Definition Field.H:112
amrex::Real m_alpha2
Definition KOmegaSST.H:94
Field & m_vel
Definition KOmegaSST.H:77
amrex::Real m_alpha1
Definition KOmegaSST.H:93
Field & m_buoy_term
Definition KOmegaSST.H:81
Field & m_f1
Definition KOmegaSST.H:79
amrex::Real m_beta_star
Turbulence constants.
Definition KOmegaSST.H:92
amrex::Real m_sigma_omega2
Definition KOmegaSST.H:100
amrex::Real m_sdr_amb
Definition KOmegaSST.H:103
amrex::Real m_tke_amb
Definition KOmegaSST.H:102
void update_turbulent_viscosity(FieldState fstate, DiffusionType diff_type) override
Update the turbulent viscosity field.
Definition KOmegaSST.cpp:86
std::unique_ptr< ScratchField > m_gradK
Definition KOmegaSST.H:111
Field * m_tke
Definition KOmegaSST.H:88
void update_scalar_diff(Field &deff, const std::string &name) override
Update the effective scalar diffusivity field.
Definition KOmegaSST.cpp:302
std::unique_ptr< ScratchField > m_gradden
Definition KOmegaSST.H:113
amrex::Real m_a1
Definition KOmegaSST.H:101
static std::string identifier()
Definition KOmegaSST.H:40
amrex::Real m_beta1
Definition KOmegaSST.H:95
amrex::Real m_buoyancy_factor
Definition KOmegaSST.H:107
Field * m_sdr
Definition KOmegaSST.H:89
std::string model_name() const override
String representation of this turbulence model for I/O.
Definition KOmegaSST.H:49
amrex::Real m_sigma_k2
Definition KOmegaSST.H:98
std::unique_ptr< ScratchField > m_gradOmega
Definition KOmegaSST.H:112
Field & m_diss
Definition KOmegaSST.H:82
void parse_model_coeffs() override
Parse turbulence model coefficients.
Definition KOmegaSST.cpp:19
Field & m_walldist
Definition KOmegaSST.H:86
bool m_include_buoyancy
Buoyancy modified constants.
Definition KOmegaSST.H:106
void post_advance_work() override
No post advance work for this model.
Definition KOmegaSST.H:59
Field & m_sdr_src
Definition KOmegaSST.H:83
TurbulenceModel::CoeffsDictType model_coeffs() const override
Return turbulence model coefficients.
Definition KOmegaSST.cpp:52
KOmegaSST(CFDSim &sim)
Definition KOmegaSSTI.H:17
amrex::Real m_beta2
Definition KOmegaSST.H:96
Field & m_shear_prod
Definition KOmegaSST.H:80
amrex::Vector< amrex::Real > m_gravity
Definition KOmegaSST.H:109
Field & m_sdr_diss
Definition KOmegaSST.H:84
void post_init_actions() override
Actions to perform post initialization.
Definition KOmegaSST.cpp:70
Field & m_rho
Definition KOmegaSST.H:85
void post_regrid_actions() override
Actions to perform post regrid.
Definition KOmegaSST.cpp:78
amrex::Real m_sigma_k1
Definition KOmegaSST.H:97
amrex::Real m_sigma_t
Definition KOmegaSST.H:108
amrex::Real m_sigma_omega1
Definition KOmegaSST.H:99
TurbModelBase(CFDSim &sim)
Definition TurbModelBase.H:95
std::unordered_map< std::string, amrex::Real > CoeffsDictType
Default identifier used by factor methods.
Definition TurbulenceModel.H:35
FieldState
Definition FieldDescTypes.H:16
DiffusionType
Definition incflo_enums.H:6
Definition CFDSim.H:31