250 amrex::Print() <<
"Turbulence Settings at level " << lev << std::endl;
255 amrex::Print() <<
" Using DNS model at level " << lev << std::endl;
256 }
else if (
les_type == LESType::Smagorinsky) {
258 amrex::Print() <<
" Using 2D Smagorinsky LES model at level " << lev << std::endl;
260 amrex::Print() <<
" Using Smagorinsky LES model at level " << lev << std::endl;
263 amrex::Print() <<
" Smagorinsky uses Richardson number correction with Ri_crit = "
266 }
else if (
les_type == LESType::Deardorff) {
267 amrex::Print() <<
" Using Deardorff LES model at level " << lev << std::endl;
268 }
else if (
rans_type == RANSType::kEqn) {
270 <<
" Using Axell & Liungman one-equation RANS k model at level " << lev << std::endl;
271 }
else if (
pbl_type == PBLType::MYJ) {
272 amrex::Print() <<
" Using MYJ PBL model at level " << lev << std::endl;
273 }
else if (
pbl_type == PBLType::MYNN25) {
274 amrex::Print() <<
" Using MYNN2.5 PBL model at level " << lev << std::endl;
275 }
else if (
pbl_type == PBLType::MYNNEDMF) {
276 amrex::Print() <<
" Using MYNNEDMF PBL model at level " << lev << std::endl;
277 }
else if (
pbl_type == PBLType::YSU) {
278 amrex::Print() <<
" Using YSU PBL model at level " << lev << std::endl;
279 }
else if (
pbl_type == PBLType::MRF) {
280 amrex::Print() <<
" Using MRF PBL model at level " << lev << std::endl;
282 amrex::Error(
"Unknown turbulence model");
286 if (
les_type == LESType::Smagorinsky) {
287 amrex::Print() <<
" Cs : " <<
Cs << std::endl;
289 if (
les_type == LESType::Deardorff) {
290 amrex::Print() <<
" Ce : " <<
Ce << std::endl;
291 amrex::Print() <<
" Ce at wall : " <<
Ce_wall << std::endl;
292 amrex::Print() <<
" Ck : " <<
Ck << std::endl;
293 amrex::Print() <<
" sigma_k : " <<
sigma_k << std::endl;
297 amrex::Print() <<
" equivalent Cs : " << Cs_equiv
306 amrex::Print() <<
"Cmu0 : " <<
Cmu0 << std::endl;
307 amrex::Print() <<
"sigma_k : " <<
sigma_k << std::endl;
308 amrex::Print() <<
"Cb : " <<
Cb << std::endl;
309 amrex::Print() <<
"Rt_crit : " <<
Rt_crit << std::endl;
310 amrex::Print() <<
"Rt_min : " <<
Rt_min << std::endl;
311 amrex::Print() <<
"max_geom_lscale : " <<
l_g_max << std::endl;
315 if ((
les_type == LESType::Deardorff) ||
318 amrex::Print() <<
" reference theta : " <<
theta_ref << std::endl;
320 amrex::Print() <<
" reference theta : n/a" << std::endl;
325 amrex::Print() <<
" Pr_t : " <<
Pr_t << std::endl;
326 amrex::Print() <<
" Sc_t : " <<
Sc_t << std::endl;
330 amrex::Print() <<
" pbl_mynn_A1 : " <<
pbl_mynn.
A1 << std::endl;
331 amrex::Print() <<
" pbl_mynn_A2 : " <<
pbl_mynn.
A2 << std::endl;
332 amrex::Print() <<
" pbl_mynn_B1 : " <<
pbl_mynn.
B1 << std::endl;
333 amrex::Print() <<
" pbl_mynn_B2 : " <<
pbl_mynn.
B2 << std::endl;
334 amrex::Print() <<
" pbl_mynn_C1 : " <<
pbl_mynn.
C1 << std::endl;
335 amrex::Print() <<
" pbl_mynn_C2 : " <<
pbl_mynn.
C2 << std::endl;
336 amrex::Print() <<
" pbl_mynn_C3 : " <<
pbl_mynn.
C3 << std::endl;
337 amrex::Print() <<
" pbl_mynn_C4 : " <<
pbl_mynn.
C4 << std::endl;
338 amrex::Print() <<
" pbl_mynn_C5 : " <<
pbl_mynn.
C5 << std::endl;
339 }
else if (
pbl_type == PBLType::YSU) {
340 amrex::Print() <<
" pbl_ysu_coriolis_freq : "
342 amrex::Print() <<
" pbl_ysu_use_consistent_coriolis : "
344 amrex::Print() <<
" pbl_ysu_force_over_water : "
346 amrex::Print() <<
" pbl_ysu_land_Ribcr : "
348 amrex::Print() <<
" pbl_ysu_unst_Ribcr : "
350 }
else if (
pbl_type == PBLType::MRF) {
357 amrex::Print() <<
" pbl_mrf_sf : " <<
pbl_mrf_sf
amrex::Real Real
Definition: ERF_ShocInterface.H:19
amrex::Real C4
Definition: ERF_MYNNStruct.H:48
amrex::Real C1
Definition: ERF_MYNNStruct.H:45
amrex::Real C3
Definition: ERF_MYNNStruct.H:47
amrex::Real C2
Definition: ERF_MYNNStruct.H:46
amrex::Real A2
Definition: ERF_MYNNStruct.H:42
amrex::Real B1
Definition: ERF_MYNNStruct.H:43
amrex::Real B2
Definition: ERF_MYNNStruct.H:44
amrex::Real C5
Definition: ERF_MYNNStruct.H:49
amrex::Real A1
Definition: ERF_MYNNStruct.H:41
bool smag2d
Definition: ERF_TurbStruct.H:377
amrex::Real sigma_k
Definition: ERF_TurbStruct.H:393
MYNNLevel25 pbl_mynn
Definition: ERF_TurbStruct.H:412
amrex::Real pbl_mrf_const_b
Definition: ERF_TurbStruct.H:448
amrex::Real Rt_min
Definition: ERF_TurbStruct.H:388
amrex::Real pbl_mrf_coriolis_freq
Definition: ERF_TurbStruct.H:445
amrex::Real Ri_crit
Definition: ERF_TurbStruct.H:404
RANSType rans_type
Definition: ERF_TurbStruct.H:407
amrex::Real pbl_mrf_Ribcr
Definition: ERF_TurbStruct.H:446
amrex::Real Ck
Definition: ERF_TurbStruct.H:382
amrex::Real Cmu0
Definition: ERF_TurbStruct.H:385
bool pbl_ysu_use_consistent_coriolis
Definition: ERF_TurbStruct.H:434
amrex::Real Cb
Definition: ERF_TurbStruct.H:386
amrex::Real pbl_mrf_sf
Definition: ERF_TurbStruct.H:450
bool use_Ri_correction
Definition: ERF_TurbStruct.H:403
amrex::Real pbl_ysu_land_Ribcr
Definition: ERF_TurbStruct.H:440
bool mrf_moistvars
Definition: ERF_TurbStruct.H:452
amrex::Real Cs
Definition: ERF_TurbStruct.H:376
amrex::Real Ce
Definition: ERF_TurbStruct.H:380
amrex::Real pbl_ysu_coriolis_freq
Definition: ERF_TurbStruct.H:431
bool pbl_ysu_force_over_water
Definition: ERF_TurbStruct.H:437
amrex::Real Pr_t
Definition: ERF_TurbStruct.H:368
amrex::Real theta_ref
Definition: ERF_TurbStruct.H:396
amrex::Real Sc_t
Definition: ERF_TurbStruct.H:372
amrex::Real Rt_crit
Definition: ERF_TurbStruct.H:387
amrex::Real pbl_ysu_unst_Ribcr
Definition: ERF_TurbStruct.H:442
bool mix_isotropic
Definition: ERF_TurbStruct.H:401
amrex::Real l_g_max
Definition: ERF_TurbStruct.H:389