|
ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
Go to the source code of this file.
Functions | |
| ParmParse | pp ("prob") |
| pp | query ("p_inf", p_inf) |
| pp | query ("T_inf", T_inf) |
| pp | query ("M_inf", M_inf) |
| pp | query ("alpha", alpha) |
| pp | query ("gamma", gamma) |
| pp | query ("beta", beta) |
| pp | query ("sigma", sigma) |
| pp | query ("R", R) |
| pp | query ("xc", xc_frac) |
| pp | query ("yc", yc_frac) |
| ParallelFor (bx, [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { const Real *dx=geomdata.CellSize();const Real x=(i+0.5) *dx[0];const Real y=(j+0.5) *dx[1];const Real Omg=erf_vortex_Gaussian(x, y, xc, yc, R, beta, sigma);const Real deltaT=-(gamma - 1.0)/(2.0 *sigma *sigma) *Omg *Omg;const Real rho_norm=std::pow(1.0+deltaT, inv_gm1);state_pert(i, j, k, Rho_comp)=rho_norm *rho_0 - r_hse(i, j, k);const Real T=(1.0+deltaT) *T_inf;const Real p=std::pow(rho_norm, Gamma)/Gamma *rho_0 *a_inf *a_inf;const Real rho_theta=rho_0 *rho_norm *(T *std::pow(p_0/p, rdOcp));state_pert(i, j, k, RhoTheta_comp)=rho_theta - getRhoThetagivenP(p_hse(i, j, k));const Real r2d_xy=std::sqrt((x-xc) *(x-xc)+(y-yc) *(y-yc));state_pert(i, j, k, RhoScalar_comp)=0.25 *(1.0+std::cos(PI *std::min(r2d_xy, R)/R));}) | |
Variables | |
| amrex::Real | p_inf = p_0 |
| amrex::Real | T_inf = 300.0 |
| amrex::Real | M_inf = 0.2 |
| amrex::Real | alpha = 0.0 |
| amrex::Real | gamma = Gamma |
| amrex::Real | beta = 0.01 |
| amrex::Real | sigma = 1.0 |
| amrex::Real | R = 2.0 |
| amrex::Real | xc_frac = 0.5 |
| amrex::Real | yc_frac = 0.5 |
| const amrex::Real * | prob_lo = geomdata.ProbLo() |
| const amrex::Real * | prob_hi = geomdata.ProbHi() |
| amrex::Real | xc = xc_frac * (prob_hi[0] - prob_lo[0]) |
| amrex::Real | yc = yc_frac * (prob_hi[1] - prob_lo[1]) |
| amrex::Real | inv_gm1 = 1.0 / (gamma - 1.0) |
| amrex::Real | rho_0 = p_inf / (R_d * T_inf) |
| amrex::Real | a_inf = std::sqrt(gamma * R_d * T_inf) |
| const amrex::Real | rdOcp = sc.rdOcp |
| ParallelFor | ( | bx | , |
| [=] AMREX_GPU_DEVICE(int i, int j, int k) noexcept { const Real *dx=geomdata.CellSize();const Real x=(i+0.5) *dx[0];const Real y=(j+0.5) *dx[1];const Real Omg=erf_vortex_Gaussian(x, y, xc, yc, R, beta, sigma);const Real deltaT=-(gamma - 1.0)/(2.0 *sigma *sigma) *Omg *Omg;const Real rho_norm=std::pow(1.0+deltaT, inv_gm1);state_pert(i, j, k, Rho_comp)=rho_norm *rho_0 - r_hse(i, j, k);const Real T=(1.0+deltaT) *T_inf;const Real p=std::pow(rho_norm, Gamma)/Gamma *rho_0 *a_inf *a_inf;const Real rho_theta=rho_0 *rho_norm *(T *std::pow(p_0/p, rdOcp));state_pert(i, j, k, RhoTheta_comp)=rho_theta - getRhoThetagivenP(p_hse(i, j, k));const Real r2d_xy=std::sqrt((x-xc) *(x-xc)+(y-yc) *(y-yc));state_pert(i, j, k, RhoScalar_comp)=0.25 *(1.0+std::cos(PI *std::min(r2d_xy, R)/R));} | |||
| ) |

| ParmParse pp | ( | "prob" | ) |
| amrex::Real a_inf = std::sqrt(gamma * R_d * T_inf) |
Referenced by ParallelFor().
| amrex::Real alpha = 0.0 |
| amrex::Real beta = 0.01 |
| amrex::Real gamma = Gamma |
Referenced by HSEutils::compute_dewpoint_temperature(), and ParallelFor().
| amrex::Real inv_gm1 = 1.0 / (gamma - 1.0) |
Referenced by ParallelFor().
| amrex::Real M_inf = 0.2 |
| amrex::Real p_inf = p_0 |
| const amrex::Real* prob_hi = geomdata.ProbHi() |
Referenced by if(), ParallelFor(), and writeNCPlotFile().
| const amrex::Real* prob_lo = geomdata.ProbLo() |
Referenced by ComputeGlobalMinLocation(), ForestDrag::define_drag_field(), ERF::ErrorEst(), ERF::FillForecastStateMultiFabs(), ERF::FillSurfaceStateMultiFabs(), ERF::FindInitialEye(), HurricaneEyeTrackerNotInitial(), HurricaneMaxVelTracker(), HurricaneMinPressureTracker(), init_bx_scalars_from_input_sounding(), init_bx_scalars_from_input_sounding_hse(), init_bx_velocities_from_input_sounding(), ParallelFor(), ParallelForRNG(), ERF::poisson_wall_dist(), ERF::setSpongeRefFromSounding(), tag_on_distance_from_eye(), thinbody_wall_dist(), and writeNCPlotFile().
| amrex::Real R = 2.0 |
Referenced by erf_vortex_Gaussian(), and ParallelFor().
| const amrex::Real rdOcp = sc.rdOcp |
Referenced by ParallelFor().
| amrex::Real rho_0 = p_inf / (R_d * T_inf) |
| amrex::Real sigma = 1.0 |
| amrex::Real T_inf = 300.0 |
Referenced by ParallelFor().
| amrex::Real xc = xc_frac * (prob_hi[0] - prob_lo[0]) |
Referenced by erf_vortex_Gaussian(), ParallelFor(), and ParallelForRNG().
| amrex::Real xc_frac = 0.5 |
| amrex::Real yc = yc_frac * (prob_hi[1] - prob_lo[1]) |
Referenced by erf_vortex_Gaussian(), ParallelFor(), and ParallelForRNG().
| amrex::Real yc_frac = 0.5 |