FE-Project
|
module FElib / Atmosphere / Physics cloud microphysics / common More...
Functions/Subroutines | |
subroutine, public | atm_phy_mp_dgm_common_gen_intweight (intweight, lcmesh) |
subroutine, public | atm_phy_mp_dgm_common_gen_vmap (vmapm, vmapp, lmesh, elem) |
subroutine, public | atm_phy_mp_dgm_common_precipitation (dens, rhoq, cptot, cvtot, rhoe, flx_hydro, sflx_rain, sflx_snow, esflx, temp, vterm, dt, rnstep, dz, lift, nz, vmapm, vmapp, intweight, qha, qla, qia, lcmesh, elem) |
subroutine, public | atm_phy_mp_dgm_common_precipitation_momentum (momu_t, momv_t, momz_t, dens, momu, momv, momz, mflx, dz, lift, nz, vmapm, vmapp, lcmesh, elem) |
subroutine, public | atm_phy_mp_dgm_common_negative_fixer (qtrc, ddens, pres, cvtot, cptot, rtot, dens_hyd, pres_hyd, dt, lmesh, elem, qa, qla, qia, drhot) |
module FElib / Atmosphere / Physics cloud microphysics / common
To preserve nonnegativity in precipitation process, a limiter proposed by Light and Durran (2016, MWR) is used
subroutine, public scale_atm_phy_mp_dgm_common::atm_phy_mp_dgm_common_gen_intweight | ( | real(rp), dimension(lcmesh%refelem3d%nfaces,lcmesh%refelem3d%nfptot), intent(out) | intweight, |
class(localmesh3d), target | lcmesh ) |
Definition at line 77 of file scale_atm_phy_mp_dgm_common.F90.
References scale_polynominal::polynominal_gengausslobattoptintweight().
subroutine, public scale_atm_phy_mp_dgm_common::atm_phy_mp_dgm_common_gen_vmap | ( | integer, dimension(elem%nfptot,lmesh%nez), intent(out) | vmapm, |
integer, dimension(elem%nfptot,lmesh%nez), intent(out) | vmapp, | ||
class(localmesh3d), intent(in) | lmesh, | ||
class(elementbase3d), intent(in) | elem ) |
Definition at line 137 of file scale_atm_phy_mp_dgm_common.F90.
subroutine, public scale_atm_phy_mp_dgm_common::atm_phy_mp_dgm_common_precipitation | ( | real(rp), dimension (elem%np,lcmesh%nez,lcmesh%ne2d), intent(inout) | dens, |
real(rp), dimension (elem%np,lcmesh%nez,lcmesh%ne2d,qha), intent(inout) | rhoq, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(inout) | cptot, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(inout) | cvtot, | ||
real(rp), dimension (elem%np,lcmesh%nez,lcmesh%ne2d), intent(inout) | rhoe, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(inout) | flx_hydro, | ||
real(rp), dimension(elem%nfp_v,lcmesh%ne2da), intent(inout) | sflx_rain, | ||
real(rp), dimension(elem%nfp_v,lcmesh%ne2da), intent(inout) | sflx_snow, | ||
real(rp), dimension (elem%nfp_v,lcmesh%ne2da), intent(inout) | esflx, | ||
real(rp), dimension (elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | temp, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d,qha), intent(in) | vterm, | ||
real(rp), intent(in) | dt, | ||
real(rp), intent(in) | rnstep, | ||
type(sparsemat), intent(in) | dz, | ||
type(sparsemat), intent(in) | lift, | ||
real(rp), dimension(elem%nfptot,lcmesh%nez,lcmesh%ne2d), intent(in) | nz, | ||
integer, dimension(elem%nfptot,lcmesh%nez), intent(in) | vmapm, | ||
integer, dimension(elem%nfptot,lcmesh%nez), intent(in) | vmapp, | ||
real(rp), dimension(elem%nfaces,elem%nfptot), intent(in) | intweight, | ||
integer, intent(in) | qha, | ||
integer, intent(in) | qla, | ||
integer, intent(in) | qia, | ||
class(localmesh3d), intent(in) | lcmesh, | ||
class(elementbase3d), intent(in) | elem ) |
[in] | qha | hydrometeor (water + ice) |
Definition at line 184 of file scale_atm_phy_mp_dgm_common.F90.
subroutine, public scale_atm_phy_mp_dgm_common::atm_phy_mp_dgm_common_precipitation_momentum | ( | real(rp), dimension(elem%np,lcmesh%nea), intent(out) | momu_t, |
real(rp), dimension(elem%np,lcmesh%nea), intent(out) | momv_t, | ||
real(rp), dimension(elem%np,lcmesh%nea), intent(out) | momz_t, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | dens, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | momu, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | momv, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | momz, | ||
real(rp), dimension(elem%np,lcmesh%nez,lcmesh%ne2d), intent(in) | mflx, | ||
type(sparsemat), intent(in) | dz, | ||
type(sparsemat), intent(in) | lift, | ||
real(rp), dimension(elem%nfptot,lcmesh%nez,lcmesh%ne2d), intent(in) | nz, | ||
integer, dimension(elem%nfptot,lcmesh%nez), intent(in) | vmapm, | ||
integer, dimension(elem%nfptot,lcmesh%nez), intent(in) | vmapp, | ||
class(localmesh3d), intent(in) | lcmesh, | ||
class(elementbase3d), intent(in) | elem ) |
Definition at line 411 of file scale_atm_phy_mp_dgm_common.F90.
subroutine, public scale_atm_phy_mp_dgm_common::atm_phy_mp_dgm_common_negative_fixer | ( | type(localmeshfieldbaselist), dimension(qa), intent(inout) | qtrc, |
real(rp), dimension(elem%np,lmesh%nea), intent(inout) | ddens, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(inout) | pres, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(inout) | cvtot, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(inout) | cptot, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(inout) | rtot, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(in) | dens_hyd, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(in) | pres_hyd, | ||
real(rp), intent(in) | dt, | ||
class(localmesh3d), intent(in) | lmesh, | ||
class(elementbase3d), intent(in) | elem, | ||
integer, intent(in) | qa, | ||
integer, intent(in) | qla, | ||
integer, intent(in) | qia, | ||
real(rp), dimension(elem%np,lmesh%nea), intent(inout), optional | drhot ) |
Definition at line 477 of file scale_atm_phy_mp_dgm_common.F90.