/home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/tke/source_terms/KransAxell.H Source File

AMR-Wind API: /home/runner/work/amr-wind/amr-wind/amr-wind/equation_systems/tke/source_terms/KransAxell.H Source File
AMR-Wind API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
KransAxell.H
Go to the documentation of this file.
1#ifndef KRANSAXELL_H
2#define KRANSAXELL_H
3
7#include "AMReX_REAL.H"
8
9using namespace amrex::literals;
10
11namespace amr_wind::pde::tke {
12
19class KransAxell : public TKESource::Register<KransAxell>
20{
21public:
22 static std::string identifier() { return "KransAxell"; }
23
24 explicit KransAxell(const CFDSim& /*sim*/);
25
26 ~KransAxell() override;
27
28 void operator()(
29 const int lev,
30 const amrex::MFIter& mfi,
31 const amrex::Box& bx,
32 const FieldState fstate,
33 const amrex::Array4<amrex::Real>& src_term) const override;
34
35private:
41 amrex::Real m_Cmu{0.556_rt};
42 amrex::Real m_heat_flux{0.0_rt};
43 amrex::Real m_z0{0.1_rt};
44 amrex::Real m_kappa{0.41_rt};
45 amrex::Real m_meso_start{600.0_rt};
46 amrex::Vector<amrex::Real> m_gravity{0.0_rt, 0.0_rt, -9.81_rt};
48 const CFDSim& m_sim;
49 const amrex::AmrCore& m_mesh;
51 std::string m_1d_rans;
52 amrex::Vector<amrex::Real> m_wind_heights;
53 amrex::Vector<amrex::Real> m_tke_values;
54 amrex::Gpu::DeviceVector<amrex::Real> m_wind_heights_d;
55 amrex::Gpu::DeviceVector<amrex::Real> m_tke_values_d;
58
60 std::unique_ptr<ScratchField> m_ref_theta;
62 amrex::Real m_sponge_strength{1.0_rt};
63 amrex::Real m_sponge_distance_west{-1000.0_rt};
64 amrex::Real m_sponge_distance_east{1000.0_rt};
65 amrex::Real m_sponge_distance_south{-1000.0_rt};
66 amrex::Real m_sponge_distance_north{1000.0_rt};
71 std::string m_wall_het_model{"none"};
73 amrex::Real m_gamma_m{5.0_rt};
74 amrex::Real m_beta_m{16.0_rt};
75};
76
77} // namespace amr_wind::pde::tke
78
79#endif /* KRANSAXELL_H */
Definition CFDSim.H:54
Definition Field.H:116
Definition SimTime.H:33
const Field & m_velocity
Definition KransAxell.H:50
const SimTime & m_time
Definition KransAxell.H:47
int m_sponge_south
Definition KransAxell.H:69
amrex::Real m_beta_m
Definition KransAxell.H:74
Field & m_turb_lscale
Definition KransAxell.H:36
const amrex::AmrCore & m_mesh
Definition KransAxell.H:49
amrex::Real m_heat_flux
Definition KransAxell.H:42
amrex::Gpu::DeviceVector< amrex::Real > m_wind_heights_d
Definition KransAxell.H:54
amrex::Real m_sponge_distance_west
Definition KransAxell.H:63
amrex::Vector< amrex::Real > m_tke_values
Definition KransAxell.H:53
const CFDSim & m_sim
Definition KransAxell.H:48
bool m_horizontal_sponge
Definition KransAxell.H:61
std::string m_wall_het_model
Definition KransAxell.H:71
int m_sponge_west
Definition KransAxell.H:67
const transport::TransportModel & m_transport
Transport model.
Definition KransAxell.H:57
amrex::Real m_meso_start
Definition KransAxell.H:45
Field & m_buoy_prod
Definition KransAxell.H:38
amrex::Real m_gamma_m
Definition KransAxell.H:73
amrex::Real m_monin_obukhov_length
Definition KransAxell.H:72
amrex::Vector< amrex::Real > m_wind_heights
Definition KransAxell.H:52
amrex::Vector< amrex::Real > m_gravity
Definition KransAxell.H:46
static std::string identifier()
Definition KransAxell.H:22
int m_sponge_north
Definition KransAxell.H:70
std::string m_1d_rans
Definition KransAxell.H:51
amrex::Real m_sponge_distance_south
Definition KransAxell.H:65
KransAxell(const CFDSim &)
Definition KransAxell.cpp:14
std::unique_ptr< ScratchField > m_ref_theta
Reference temperature.
Definition KransAxell.H:60
amrex::Real m_Cmu
Definition KransAxell.H:41
int m_sponge_east
Definition KransAxell.H:68
void operator()(const int lev, const amrex::MFIter &mfi, const amrex::Box &bx, const FieldState fstate, const amrex::Array4< amrex::Real > &src_term) const override
Definition KransAxell.cpp:81
amrex::Real m_sponge_strength
Definition KransAxell.H:62
Field & m_tke
Definition KransAxell.H:40
amrex::Real m_sponge_distance_east
Definition KransAxell.H:64
amrex::Real m_kappa
Definition KransAxell.H:44
amrex::Gpu::DeviceVector< amrex::Real > m_tke_values_d
Definition KransAxell.H:55
Field & m_dissip
Definition KransAxell.H:39
Field & m_shear_prod
Definition KransAxell.H:37
amrex::Real m_z0
Definition KransAxell.H:43
amrex::Real m_sponge_distance_north
Definition KransAxell.H:66
Definition TransportModel.H:32
FieldState
Definition FieldDescTypes.H:14
static constexpr amrex::Real LARGE_NUM
A large positive number.
Definition constants.H:29
Definition SDRSrc.cpp:10