340 amrex::Print() <<
"Turbulence Settings at level " << lev << std::endl;
345 amrex::Print() <<
" Using DNS model at level " << lev << std::endl;
346 }
else if (
les_type == LESType::Smagorinsky) {
348 amrex::Print() <<
" Using 2D Smagorinsky LES model at level " << lev << std::endl;
350 amrex::Print() <<
" Using Smagorinsky LES model at level " << lev << std::endl;
353 amrex::Print() <<
" Smagorinsky uses Richardson number correction with Ri_crit = "
356 }
else if (
les_type == LESType::Deardorff) {
357 amrex::Print() <<
" Using Deardorff LES model at level " << lev << std::endl;
358 }
else if (
rans_type == RANSType::kEqn) {
360 <<
" Using Axell & Liungman one-equation RANS k model at level " << lev
362 }
else if (
pbl_type == PBLType::MYJ) {
363 amrex::Print() <<
" Using MYJ PBL model at level " << lev << std::endl;
364 }
else if (
pbl_type == PBLType::MYNN25) {
365 amrex::Print() <<
" Using MYNN2.5 PBL model at level " << lev << std::endl;
366 }
else if (
pbl_type == PBLType::MYNNEDMF) {
367 amrex::Print() <<
" Using MYNNEDMF PBL model at level " << lev << std::endl;
368 }
else if (
pbl_type == PBLType::YSU) {
369 amrex::Print() <<
" Using YSU PBL model at level " << lev << std::endl;
370 }
else if (
pbl_type == PBLType::YSUNew) {
371 amrex::Print() <<
" Using YSU PBL model at level " << lev << std::endl;
372 }
else if (
pbl_type == PBLType::MRF) {
373 amrex::Print() <<
" Using MRF PBL model at level " << lev << std::endl;
374 }
else if (
pbl_type == PBLType::EAMXX_SHOC) {
375 amrex::Print() <<
" Using EAMxx SHOC PBL model at level " << lev << std::endl;
376 }
else if (
pbl_type == PBLType::NATIVE_SHOC) {
377 amrex::Print() <<
" Using native SHOC PBL model at level " << lev << std::endl;
379 amrex::Error(
"Unknown turbulence model");
383 if (
les_type == LESType::Smagorinsky) {
384 amrex::Print() <<
" Cs : " <<
Cs << std::endl;
386 if (
les_type == LESType::Deardorff) {
387 amrex::Print() <<
" Ce : " <<
Ce << std::endl;
388 amrex::Print() <<
" Ce at wall : " <<
Ce_wall << std::endl;
389 amrex::Print() <<
" Ck : " <<
Ck << std::endl;
390 amrex::Print() <<
" sigma_k : " <<
sigma_k << std::endl;
394 amrex::Print() <<
" equivalent Cs : " << Cs_equiv
403 amrex::Print() <<
"Cmu0 : " <<
Cmu0 << std::endl;
404 amrex::Print() <<
"sigma_k : " <<
sigma_k << std::endl;
405 amrex::Print() <<
"Cb : " <<
Cb << std::endl;
406 amrex::Print() <<
"Rt_crit : " <<
Rt_crit << std::endl;
407 amrex::Print() <<
"Rt_min : " <<
Rt_min << std::endl;
408 amrex::Print() <<
"max_geom_lscale : " <<
l_g_max << std::endl;
412 if ((
les_type == LESType::Deardorff) ||
415 amrex::Print() <<
" reference theta : " <<
theta_ref << std::endl;
417 amrex::Print() <<
" reference theta : n/a" << std::endl;
422 amrex::Print() <<
" Pr_t : " <<
Pr_t << std::endl;
423 amrex::Print() <<
" Sc_t : " <<
Sc_t << std::endl;
427 amrex::Print() <<
" pbl_mynn_A1 : " <<
pbl_mynn.
A1 << std::endl;
428 amrex::Print() <<
" pbl_mynn_A2 : " <<
pbl_mynn.
A2 << std::endl;
429 amrex::Print() <<
" pbl_mynn_B1 : " <<
pbl_mynn.
B1 << std::endl;
430 amrex::Print() <<
" pbl_mynn_B2 : " <<
pbl_mynn.
B2 << std::endl;
431 amrex::Print() <<
" pbl_mynn_C1 : " <<
pbl_mynn.
C1 << std::endl;
432 amrex::Print() <<
" pbl_mynn_C2 : " <<
pbl_mynn.
C2 << std::endl;
433 amrex::Print() <<
" pbl_mynn_C3 : " <<
pbl_mynn.
C3 << std::endl;
434 amrex::Print() <<
" pbl_mynn_C4 : " <<
pbl_mynn.
C4 << std::endl;
435 amrex::Print() <<
" pbl_mynn_C5 : " <<
pbl_mynn.
C5 << std::endl;
437 amrex::Print() <<
" pbl_ysu_coriolis_freq : "
439 amrex::Print() <<
" pbl_ysu_use_consistent_coriolis : "
441 amrex::Print() <<
" pbl_ysu_force_over_water : "
443 amrex::Print() <<
" pbl_ysu_land_Ribcr : "
445 amrex::Print() <<
" pbl_ysu_unst_Ribcr : "
447 amrex::Print() <<
" enable_ysu_liquid_theta : "
449 amrex::Print() <<
" enable_ysu_countergradient : "
451 amrex::Print() <<
" enable_ysu_terrain_pblh_floor : "
453 amrex::Print() <<
" enable_ysu_sat_limiter : "
455 amrex::Print() <<
" enable_ysu_topdown : "
457 amrex::Print() <<
" enable_ysu_entrainment : "
459 amrex::Print() <<
" enable_ysu_cloud_pblh : "
461 amrex::Print() <<
" ysu_qcloud_threshold : "
463 amrex::Print() <<
" ysu_moistvars : "
465 amrex::Print() <<
" pbl_ysunew_highres_bounds : "
467 amrex::Print() <<
" enable_mrf_unbounded_vpert : "
469 }
else if (
pbl_type == PBLType::MRF) {
476 amrex::Print() <<
" pbl_mrf_sf : " <<
pbl_mrf_sf
amrex::Real Real
Definition: ERF_ShocInterface.H:19
amrex::Real C4
Definition: ERF_MYNNStruct.H:50
amrex::Real C1
Definition: ERF_MYNNStruct.H:47
amrex::Real C3
Definition: ERF_MYNNStruct.H:49
amrex::Real C2
Definition: ERF_MYNNStruct.H:48
amrex::Real A2
Definition: ERF_MYNNStruct.H:44
amrex::Real B1
Definition: ERF_MYNNStruct.H:45
amrex::Real B2
Definition: ERF_MYNNStruct.H:46
amrex::Real C5
Definition: ERF_MYNNStruct.H:51
amrex::Real A1
Definition: ERF_MYNNStruct.H:43
bool enable_ysu_countergradient
Definition: ERF_TurbStruct.H:610
bool smag2d
Definition: ERF_TurbStruct.H:506
amrex::Real sigma_k
Definition: ERF_TurbStruct.H:522
bool pbl_mrf_use_zero_ri_extent
Definition: ERF_TurbStruct.H:636
MYNNLevel25 pbl_mynn
Definition: ERF_TurbStruct.H:573
PBLType pbl_type
Definition: ERF_TurbStruct.H:541
amrex::Real pbl_mrf_const_b
Definition: ERF_TurbStruct.H:629
amrex::Real ysu_qcloud_threshold
Definition: ERF_TurbStruct.H:622
amrex::Real Rt_min
Definition: ERF_TurbStruct.H:517
amrex::Real pbl_mrf_coriolis_freq
Definition: ERF_TurbStruct.H:627
bool pbl_ysunew_highres_bounds
Definition: ERF_TurbStruct.H:625
bool enable_ysu_topdown
Definition: ERF_TurbStruct.H:616
amrex::Real Ri_crit
Definition: ERF_TurbStruct.H:533
RANSType rans_type
Definition: ERF_TurbStruct.H:536
bool enable_mrf_unbounded_vpert
Definition: ERF_TurbStruct.H:635
amrex::Real pbl_mrf_Ribcr
Definition: ERF_TurbStruct.H:628
amrex::Real Ck
Definition: ERF_TurbStruct.H:511
amrex::Real Cmu0
Definition: ERF_TurbStruct.H:514
bool pbl_ysu_use_consistent_coriolis
Definition: ERF_TurbStruct.H:598
amrex::Real Cb
Definition: ERF_TurbStruct.H:515
amrex::Real pbl_mrf_sf
Definition: ERF_TurbStruct.H:630
bool enable_mrf_countergradient
Definition: ERF_TurbStruct.H:632
bool use_Ri_correction
Definition: ERF_TurbStruct.H:532
bool enable_ysu_sat_limiter
Definition: ERF_TurbStruct.H:614
amrex::Real pbl_ysu_land_Ribcr
Definition: ERF_TurbStruct.H:604
bool mrf_moistvars
Definition: ERF_TurbStruct.H:631
bool enable_ysu_entrainment
Definition: ERF_TurbStruct.H:618
amrex::Real Cs
Definition: ERF_TurbStruct.H:505
amrex::Real Ce
Definition: ERF_TurbStruct.H:509
bool enable_mrf_cloud_adjustment
Definition: ERF_TurbStruct.H:633
bool enable_ysu_cloud_pblh
Definition: ERF_TurbStruct.H:620
bool enable_ysu_terrain_pblh_floor
Definition: ERF_TurbStruct.H:612
amrex::Real pbl_ysu_coriolis_freq
Definition: ERF_TurbStruct.H:595
bool pbl_ysu_force_over_water
Definition: ERF_TurbStruct.H:601
bool enable_ysu_liquid_theta
Definition: ERF_TurbStruct.H:608
bool pbl_mrf_highres_bounds
Definition: ERF_TurbStruct.H:634
amrex::Real Pr_t
Definition: ERF_TurbStruct.H:497
amrex::Real theta_ref
Definition: ERF_TurbStruct.H:525
amrex::Real Sc_t
Definition: ERF_TurbStruct.H:501
amrex::Real Rt_crit
Definition: ERF_TurbStruct.H:516
bool ysu_moistvars
Definition: ERF_TurbStruct.H:624
amrex::Real pbl_ysu_unst_Ribcr
Definition: ERF_TurbStruct.H:606
bool mix_isotropic
Definition: ERF_TurbStruct.H:530
amrex::Real l_g_max
Definition: ERF_TurbStruct.H:518