ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
ERF_InitRayleighDamping.H
Go to the documentation of this file.
1 #include <ERF_ParFunctions.H>
2 
3 /**
4  * Initialize a Rayleigh damping layer with the same structure as in WRF, based
5  * on Durran and Klemp 1983
6 */
7 void
8 erf_init_rayleigh (amrex::Vector<amrex::Vector<amrex::Real> >& rayleigh_ptrs,
9  amrex::Geometry const& geom,
10  std::unique_ptr<amrex::MultiFab>& /*z_phys_nd*/,
11  amrex::Real /*zdamp*/) override
12 {
13  amrex::ParmParse pp("prob");
14  amrex::Real U_0 = 0.0; pp.query("rayleigh_U_0", U_0);
15  amrex::Real V_0 = 0.0; pp.query("rayleigh_V_0", V_0);
16  amrex::Real W_0 = 0.0; pp.query("rayleigh_W_0", W_0);
17  amrex::Real T_0 = 300.0; pp.query("rayleigh_T_0", T_0);
18 
19  const int khi = geom.Domain().bigEnd()[2];
20 
21  for (int k = 0; k <= khi; k++)
22  {
23  rayleigh_ptrs[Rayleigh::ubar][k] = U_0;
24  rayleigh_ptrs[Rayleigh::vbar][k] = V_0;
25  rayleigh_ptrs[Rayleigh::wbar][k] = W_0;
26  rayleigh_ptrs[Rayleigh::thetabar][k] = T_0;
27  }
28 }
@ ubar
Definition: ERF_DataStruct.H:97
@ wbar
Definition: ERF_DataStruct.H:97
@ vbar
Definition: ERF_DataStruct.H:97
@ thetabar
Definition: ERF_DataStruct.H:97
ParmParse pp("prob")
const int khi
Definition: ERF_InitCustomPert_ParticleTests.H:11
Real T_0
Definition: ERF_InitCustomPert_TaylorGreenVortex.H:4
Real V_0
Definition: ERF_InitCustomPert_TaylorGreenVortex.H:6
Real U_0
Definition: ERF_InitCustomPert_TurbulentInflow.H:13
Real W_0
Definition: ERF_InitCustomPert_TurbulentInflow.H:15
void erf_init_rayleigh(amrex::Vector< amrex::Vector< amrex::Real > > &rayleigh_ptrs, amrex::Geometry const &geom, std::unique_ptr< amrex::MultiFab > &, amrex::Real) override
Definition: ERF_InitRayleighDamping.H:8
amrex::Real Real
Definition: ERF_ShocInterface.H:19