/home/runner/work/amr-wind/amr-wind/amr-wind/turbulence/LES/Kosovic.H Source File

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/turbulence/LES/Kosovic.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
Kosovic.H
Go to the documentation of this file.
1#ifndef KOSOVIC_H
2#define KOSOVIC_H
3
4#include <string>
8#include "AMReX_REAL.H"
9
10using namespace amrex::literals;
11
12namespace amr_wind::turbulence {
13
17template <typename Transport>
18class Kosovic : public TurbModelBase<Transport>
19{
20public:
21 static std::string identifier()
22 {
23 return "Kosovic-" + Transport::identifier();
24 }
25
26 explicit Kosovic(CFDSim& sim);
27
29 std::string model_name() const override { return "Kosovic"; }
30
33 const FieldState fstate, const DiffusionType /*unused*/) override;
34
36 void post_advance_work() override {}
37
39 void update_alphaeff(Field& alphaeff) override;
40
42 void parse_model_coeffs() override;
43
46
47private:
49 // Ref: Mirocha et. al "Implementation of a Nonlinear Subfilter Turbulence
50 // Stress Model for Large-Eddy Simulation in the Advanced Research WRF
51 // Model"
52 // , MWR 2012.
53 amrex::Real m_Cb{0.36_rt};
54 amrex::Real m_Cs{0.135_rt};
55 amrex::Real m_C1{2.1_rt};
56 amrex::Real m_C2{2.1_rt};
57 amrex::Real m_Sk{0.5_rt};
58 bool m_surfaceRANS{false};
59 amrex::Real m_surfaceFactor{0.0_rt};
60 amrex::Real m_switchLoc{24.0_rt};
61 amrex::Real m_surfaceRANSExp{2.0_rt};
62 amrex::Real m_LESTurnOff{1.0e15_rt};
63 bool m_writeTerms{false};
64 const Field& m_vel;
65 const Field& m_rho;
68 std::string m_wall_het_model{"none"};
70 amrex::Real m_kappa{0.41_rt};
71 amrex::Real m_gamma_m{5.0_rt};
72 amrex::Real m_beta_m{16.0_rt};
73 amrex::Real m_surface_roughness_z0{0.1_rt};
74};
75
76} // namespace amr_wind::turbulence
77
78#endif /* SMAGORINSKY_H */
Definition CFDSim.H:54
Definition Field.H:116
amrex::Real m_LESTurnOff
Definition Kosovic.H:62
amrex::Real m_monin_obukhov_length
Definition Kosovic.H:69
Field & m_Nij
Definition Kosovic.H:66
bool m_surfaceRANS
Definition Kosovic.H:58
amrex::Real m_C2
Definition Kosovic.H:56
void parse_model_coeffs() override
Parse turbulence model coefficients.
Definition Kosovic.cpp:231
void post_advance_work() override
No post advance work for this model.
Definition Kosovic.H:36
std::string m_wall_het_model
Definition Kosovic.H:68
amrex::Real m_C1
Definition Kosovic.H:55
const Field & m_vel
Definition Kosovic.H:64
amrex::Real m_Sk
Definition Kosovic.H:57
Field & m_divNij
Definition Kosovic.H:67
Kosovic(CFDSim &sim)
Definition Kosovic.cpp:19
amrex::Real m_beta_m
Definition Kosovic.H:72
bool m_writeTerms
Definition Kosovic.H:63
void update_turbulent_viscosity(const FieldState fstate, const DiffusionType) override
Update the turbulent viscosity field.
Definition Kosovic.cpp:57
std::string model_name() const override
Model name for debugging purposes.
Definition Kosovic.H:29
amrex::Real m_surfaceFactor
Definition Kosovic.H:59
amrex::Real m_gamma_m
Definition Kosovic.H:71
amrex::Real m_Cs
Definition Kosovic.H:54
const Field & m_rho
Definition Kosovic.H:65
amrex::Real m_Cb
Kosovic coefficient (default value set for ABL simulations)
Definition Kosovic.H:53
static std::string identifier()
Definition Kosovic.H:21
amrex::Real m_surfaceRANSExp
Definition Kosovic.H:61
amrex::Real m_switchLoc
Definition Kosovic.H:60
amrex::Real m_kappa
Definition Kosovic.H:70
void update_alphaeff(Field &alphaeff) override
Update the effective thermal diffusivity field.
Definition Kosovic.cpp:205
TurbulenceModel::CoeffsDictType model_coeffs() const override
Return model coefficients dictionary.
Definition Kosovic.cpp:239
amrex::Real m_surface_roughness_z0
Definition Kosovic.H:73
TurbModelBase(CFDSim &sim)
Definition TurbModelBase.H:101
Field & alphaeff() override
Return the effective thermal diffusivity field.
Definition TurbModel.H:53
std::unordered_map< std::string, amrex::Real > CoeffsDictType
Default identifier used by factor methods.
Definition TurbulenceModel.H:35
FieldState
Definition FieldDescTypes.H:14
DiffusionType
Definition incflo_enums.H:4
static constexpr amrex::Real LARGE_NUM
A large positive number.
Definition constants.H:29
Definition CFDSim.H:30