ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
#include <ERF.H>
#include <ERF_EOS.H>
#include <ERF_Utils.H>
#include <ERF_prob_common.H>
#include <ERF_HSE_utils.H>
Go to the source code of this file.
Functions | |
void | read_from_metgrid (int lev, const amrex::Box &domain, const std::string &fname, std::string &NC_dateTime, amrex::Real &NC_epochTime, int &flag_psfc, int &flag_msfu, int &flag_msfv, int &flag_msfm, int &flag_hgt, int &flag_sst, int &flag_lmask, int &NC_nx, int &NC_ny, amrex::Real &NC_dx, amrex::Real &NC_dy, amrex::FArrayBox &NC_xvel_fab, amrex::FArrayBox &NC_yvel_fab, amrex::FArrayBox &NC_temp_fab, amrex::FArrayBox &NC_rhum_fab, amrex::FArrayBox &NC_pres_fab, amrex::FArrayBox &NC_ght_fab, amrex::FArrayBox &NC_hgt_fab, amrex::FArrayBox &NC_psfc_fab, amrex::FArrayBox &NC_msfu_fab, amrex::FArrayBox &NC_msfv_fab, amrex::FArrayBox &NC_msfm_fab, amrex::FArrayBox &NC_sst_fab, amrex::FArrayBox &NC_LAT_fab, amrex::FArrayBox &NC_LON_fab, amrex::IArrayBox &NC_lmask_iab, amrex::Real &Latitude, amrex::Real &Longitude, amrex::Geometry &geom) |
void | init_terrain_from_metgrid (amrex::FArrayBox &z_phys_nd_fab, const amrex::Vector< amrex::FArrayBox > &NC_hgt_fab) |
void | init_state_from_metgrid (const bool use_moisture, const amrex::Real l_rdOcp, amrex::Box &tbxc, amrex::Box &tbxu, amrex::Box &tbxv, amrex::FArrayBox &state_fab, amrex::FArrayBox &x_vel_fab, amrex::FArrayBox &y_vel_fab, amrex::FArrayBox &z_vel_fab, amrex::FArrayBox &z_phys_nd_fab, const amrex::Vector< amrex::FArrayBox > &NC_hgt_fab, const amrex::Vector< amrex::FArrayBox > &NC_ght_fab, const amrex::Vector< amrex::FArrayBox > &NC_xvel_fab, const amrex::Vector< amrex::FArrayBox > &NC_yvel_fab, const amrex::Vector< amrex::FArrayBox > &NC_zvel_fab, const amrex::Vector< amrex::FArrayBox > &NC_temp_fab, const amrex::Vector< amrex::FArrayBox > &NC_rhum_fab, amrex::Vector< amrex::FArrayBox > &theta_fab, amrex::Vector< amrex::FArrayBox > &mxrat_fab, amrex::Vector< amrex::Vector< amrex::FArrayBox >> &fabs_for_bcs, const amrex::Array4< const int > &mask_c_arr, const amrex::Array4< const int > &mask_u_arr, const amrex::Array4< const int > &mask_v_arr) |
void | init_msfs_from_metgrid (amrex::FArrayBox &msfu_fab, amrex::FArrayBox &msfv_fab, amrex::FArrayBox &msfm_fab, const int &flag_msfu, const int &flag_msfv, const int &flag_msfm, const amrex::Vector< amrex::FArrayBox > &NC_MSFU_fab, const amrex::Vector< amrex::FArrayBox > &NC_MSFV_fab, const amrex::Vector< amrex::FArrayBox > &NC_MSFM_fab) |
void | init_base_state_from_metgrid (const bool use_moisture, const amrex::Real l_rdOcp, const amrex::Box &valid_bx, const amrex::Vector< int > &flag_psfc, amrex::FArrayBox &state, amrex::FArrayBox &r_hse_fab, amrex::FArrayBox &p_hse_fab, amrex::FArrayBox &pi_hse_fab, amrex::FArrayBox &th_hse_fab, amrex::FArrayBox &z_phys_cc_fab, const amrex::Vector< amrex::FArrayBox > &NC_ght_fab, const amrex::Vector< amrex::FArrayBox > &NC_psfc_fab, amrex::Vector< amrex::Vector< amrex::FArrayBox >> &fabs_for_bcs) |
AMREX_FORCE_INLINE AMREX_GPU_DEVICE amrex::Real | interpolate_column_metgrid (const int &i, const int &j, const int &k, char stag, int src_comp, const amrex::Array4< amrex::Real const > &orig_z, const amrex::Array4< amrex::Real const > &orig_data, const amrex::Array4< amrex::Real const > &new_z) |
AMREX_FORCE_INLINE AMREX_GPU_DEVICE void | rh_to_mxrat (int i, int j, int k, const amrex::Array4< amrex::Real const > &rhum, const amrex::Array4< amrex::Real const > &temp, const amrex::Array4< amrex::Real const > &pres, const amrex::Array4< amrex::Real > &mxrat) |
void init_base_state_from_metgrid | ( | const bool | use_moisture, |
const amrex::Real | l_rdOcp, | ||
const amrex::Box & | valid_bx, | ||
const amrex::Vector< int > & | flag_psfc, | ||
amrex::FArrayBox & | state, | ||
amrex::FArrayBox & | r_hse_fab, | ||
amrex::FArrayBox & | p_hse_fab, | ||
amrex::FArrayBox & | pi_hse_fab, | ||
amrex::FArrayBox & | th_hse_fab, | ||
amrex::FArrayBox & | z_phys_cc_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_ght_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_psfc_fab, | ||
amrex::Vector< amrex::Vector< amrex::FArrayBox >> & | fabs_for_bcs | ||
) |
void init_msfs_from_metgrid | ( | amrex::FArrayBox & | msfu_fab, |
amrex::FArrayBox & | msfv_fab, | ||
amrex::FArrayBox & | msfm_fab, | ||
const int & | flag_msfu, | ||
const int & | flag_msfv, | ||
const int & | flag_msfm, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_MSFU_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_MSFV_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_MSFM_fab | ||
) |
void init_state_from_metgrid | ( | const bool | use_moisture, |
const amrex::Real | l_rdOcp, | ||
amrex::Box & | tbxc, | ||
amrex::Box & | tbxu, | ||
amrex::Box & | tbxv, | ||
amrex::FArrayBox & | state_fab, | ||
amrex::FArrayBox & | x_vel_fab, | ||
amrex::FArrayBox & | y_vel_fab, | ||
amrex::FArrayBox & | z_vel_fab, | ||
amrex::FArrayBox & | z_phys_nd_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_hgt_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_ght_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_xvel_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_yvel_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_zvel_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_temp_fab, | ||
const amrex::Vector< amrex::FArrayBox > & | NC_rhum_fab, | ||
amrex::Vector< amrex::FArrayBox > & | theta_fab, | ||
amrex::Vector< amrex::FArrayBox > & | mxrat_fab, | ||
amrex::Vector< amrex::Vector< amrex::FArrayBox >> & | fabs_for_bcs, | ||
const amrex::Array4< const int > & | mask_c_arr, | ||
const amrex::Array4< const int > & | mask_u_arr, | ||
const amrex::Array4< const int > & | mask_v_arr | ||
) |
void init_terrain_from_metgrid | ( | amrex::FArrayBox & | z_phys_nd_fab, |
const amrex::Vector< amrex::FArrayBox > & | NC_hgt_fab | ||
) |
AMREX_FORCE_INLINE AMREX_GPU_DEVICE amrex::Real interpolate_column_metgrid | ( | const int & | i, |
const int & | j, | ||
const int & | k, | ||
char | stag, | ||
int | src_comp, | ||
const amrex::Array4< amrex::Real const > & | orig_z, | ||
const amrex::Array4< amrex::Real const > & | orig_data, | ||
const amrex::Array4< amrex::Real const > & | new_z | ||
) |
void read_from_metgrid | ( | int | lev, |
const amrex::Box & | domain, | ||
const std::string & | fname, | ||
std::string & | NC_dateTime, | ||
amrex::Real & | NC_epochTime, | ||
int & | flag_psfc, | ||
int & | flag_msfu, | ||
int & | flag_msfv, | ||
int & | flag_msfm, | ||
int & | flag_hgt, | ||
int & | flag_sst, | ||
int & | flag_lmask, | ||
int & | NC_nx, | ||
int & | NC_ny, | ||
amrex::Real & | NC_dx, | ||
amrex::Real & | NC_dy, | ||
amrex::FArrayBox & | NC_xvel_fab, | ||
amrex::FArrayBox & | NC_yvel_fab, | ||
amrex::FArrayBox & | NC_temp_fab, | ||
amrex::FArrayBox & | NC_rhum_fab, | ||
amrex::FArrayBox & | NC_pres_fab, | ||
amrex::FArrayBox & | NC_ght_fab, | ||
amrex::FArrayBox & | NC_hgt_fab, | ||
amrex::FArrayBox & | NC_psfc_fab, | ||
amrex::FArrayBox & | NC_msfu_fab, | ||
amrex::FArrayBox & | NC_msfv_fab, | ||
amrex::FArrayBox & | NC_msfm_fab, | ||
amrex::FArrayBox & | NC_sst_fab, | ||
amrex::FArrayBox & | NC_LAT_fab, | ||
amrex::FArrayBox & | NC_LON_fab, | ||
amrex::IArrayBox & | NC_lmask_iab, | ||
amrex::Real & | Latitude, | ||
amrex::Real & | Longitude, | ||
amrex::Geometry & | geom | ||
) |
AMREX_FORCE_INLINE AMREX_GPU_DEVICE void rh_to_mxrat | ( | int | i, |
int | j, | ||
int | k, | ||
const amrex::Array4< amrex::Real const > & | rhum, | ||
const amrex::Array4< amrex::Real const > & | temp, | ||
const amrex::Array4< amrex::Real const > & | pres, | ||
const amrex::Array4< amrex::Real > & | mxrat | ||
) |