FE-Project
Loading...
Searching...
No Matches
mod_atmos_phy_cp_vars Module Reference

module Atmosphere / Physics / Cumulus Parameterization More...

Data Types

type  atmosphycpvars
 Derived type to manage variables with cumulus parameterization component in atmospheric model. More...

Functions/Subroutines

subroutine, public atmosphycpvars_getlocalmeshfields_tend (domid, mesh, bl_tends_list, cp_dens_t, cp_rhot_t, cp_rhoqv_t, lcmesh3d)
subroutine, public atmosphycpvars_getlocalmeshfields_sfcflx (domid, mesh, sfcflx_list, sflx_rain, sflx_snow, sflx_engi)

Variables

integer, parameter, public atmos_phy_cp_dens_t_id = 1
integer, parameter, public atmos_phy_cp_rhow_t_id = 2
integer, parameter, public atmos_phy_cp_rhot_t_id = 3
integer, parameter, public atmos_phy_cp_rhoqv_t_id = 4
integer, parameter, public atmos_phy_cp_tends_num1 = 4
type(variableinfo), dimension(atmos_phy_cp_tends_num1), public atmos_phy_cp_tend_vinfo
integer, parameter, public atmos_phy_cp_aux2d_sflx_rain_id = 1
integer, parameter, public atmos_phy_cp_aux2d_sflx_snow_id = 2
integer, parameter, public atmos_phy_cp_aux2d_sflx_engi_id = 3
integer, parameter, public atmos_phy_cp_aux2d_num = 3
type(variableinfo), dimension(atmos_phy_cp_aux2d_num), public atmos_phy_cp_aux2d_vinfo

Detailed Description

module Atmosphere / Physics / Cumulus Parameterization

Description
Container for variables with cumulus parameterization component in atmospheric model
Author
Yuta Kawai, Team SCALE
NAMELIST
  • No namelist group
History Output
namedescriptionunitvariable
CP_SFLX_RAINprecipitation flux (liquid) in CP processkg/m2/sCP_SFLX_RAIN
CP_SFLX_SNOWprecipitation flux (solid) in CP processkg/m2/sCP_SFLX_SNOW
CP_SFLX_ENGIinternal energy flux flux in CP processJ/m2/sCP_SFLX_ENGI
CP_DENS_ttendency of density in CP processkg/m3/sCP_DENS_t
CP_RHOW_ttendency of water vapor in CP processkg/m3/sCP_RHOW_t
CP_RHOT_ttendency of rho*PT in CP processkg/m3.K/sCP_RHOT_t
CP_RHOQV_ttendency of rho*QV in CP processkg/m3/sCP_RHOQV_t
CP_{HYD_NAME}_ttendency of rho*{HYD_NAME} in CP process;
{HYD_NAME} is QC, QR, QI, QS, QG, QH.
TRACER_UNITTRACER_NAME

Function/Subroutine Documentation

◆ atmosphycpvars_getlocalmeshfields_tend()

subroutine, public mod_atmos_phy_cp_vars::atmosphycpvars_getlocalmeshfields_tend ( integer, intent(in) domid,
class(meshbase), intent(in) mesh,
class(modelvarmanager), intent(inout) bl_tends_list,
class(localmeshfieldbase), intent(out), pointer cp_dens_t,
class(localmeshfieldbase), intent(out), pointer cp_rhot_t,
class(localmeshfieldbase), intent(out), pointer cp_rhoqv_t,
class(localmesh3d), intent(out), optional, pointer lcmesh3d )

Definition at line 240 of file mod_atmos_phy_cp_vars.F90.

244
245 use scale_mesh_base, only: meshbase
247 implicit none
248
249 integer, intent(in) :: domID
250 class(MeshBase), intent(in) :: mesh
251 class(ModelVarManager), intent(inout) :: bl_tends_list
252 class(LocalMeshFieldBase), pointer, intent(out) :: cp_DENS_t
253 class(LocalMeshFieldBase), pointer, intent(out) :: cp_RHOT_t
254 class(LocalMeshFieldBase), pointer, intent(out) :: cp_RHOQv_t
255 class(LocalMesh3D), pointer, intent(out), optional :: lcmesh3D
256
257 class(MeshFieldBase), pointer :: field
258 class(LocalMeshBase), pointer :: lcmesh
259
260 integer :: iq
261 !-------------------------------------------------------
262
263 !--
264 call bl_tends_list%Get(atmos_phy_cp_dens_t_id, field)
265 call field%GetLocalMeshField(domid, cp_dens_t)
266
267 call bl_tends_list%Get(atmos_phy_cp_rhot_t_id, field)
268 call field%GetLocalMeshField(domid, cp_rhot_t)
269
270 call bl_tends_list%Get(atmos_phy_cp_rhoqv_t_id, field)
271 call field%GetLocalMeshField(domid, cp_rhoqv_t)
272
273 if (present(lcmesh3d)) then
274 call mesh%GetLocalMesh( domid, lcmesh )
275 nullify( lcmesh3d )
276
277 select type(lcmesh)
278 type is (localmesh3d)
279 if (present(lcmesh3d)) lcmesh3d => lcmesh
280 end select
281 end if
282
283 return
module FElib / Mesh / Base
module FElib / Data / base
Base type to manage a computational mesh.
Derived type representing a field (base type)

References atmos_phy_cp_dens_t_id, atmos_phy_cp_rhoqv_t_id, and atmos_phy_cp_rhot_t_id.

Referenced by mod_atmos_phy_cp_vars::atmosphycpvars::history().

◆ atmosphycpvars_getlocalmeshfields_sfcflx()

subroutine, public mod_atmos_phy_cp_vars::atmosphycpvars_getlocalmeshfields_sfcflx ( integer, intent(in) domid,
class(meshbase), intent(in) mesh,
class(modelvarmanager), intent(inout) sfcflx_list,
class(localmeshfieldbase), intent(out), pointer sflx_rain,
class(localmeshfieldbase), intent(out), pointer sflx_snow,
class(localmeshfieldbase), intent(out), pointer sflx_engi )

Definition at line 287 of file mod_atmos_phy_cp_vars.F90.

289
290 use scale_mesh_base, only: meshbase
292 implicit none
293
294 integer, intent(in) :: domID
295 class(MeshBase), intent(in) :: mesh
296 class(ModelVarManager), intent(inout) :: sfcflx_list
297 class(LocalMeshFieldBase), pointer, intent(out) :: SFLX_rain
298 class(LocalMeshFieldBase), pointer, intent(out) :: SFLX_snow
299 class(LocalMeshFieldBase), pointer, intent(out) :: SFLX_engi
300
301 class(MeshFieldBase), pointer :: field
302 !-------------------------------------------------------
303
304 call sfcflx_list%Get(atmos_phy_cp_aux2d_sflx_rain_id, field)
305 call field%GetLocalMeshField(domid, sflx_rain)
306
307 call sfcflx_list%Get(atmos_phy_cp_aux2d_sflx_snow_id, field)
308 call field%GetLocalMeshField(domid, sflx_snow)
309
310 call sfcflx_list%Get(atmos_phy_cp_aux2d_sflx_engi_id, field)
311 call field%GetLocalMeshField(domid, sflx_engi)
312
313 return

References atmos_phy_cp_aux2d_num, atmos_phy_cp_aux2d_sflx_engi_id, atmos_phy_cp_aux2d_sflx_rain_id, and atmos_phy_cp_aux2d_sflx_snow_id.

Referenced by mod_atmos_component::atmos_setup(), and mod_atmos_phy_cp_vars::atmosphycpvars::history().

Variable Documentation

◆ atmos_phy_cp_dens_t_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_dens_t_id = 1

Definition at line 77 of file mod_atmos_phy_cp_vars.F90.

77 integer, public, parameter :: ATMOS_PHY_CP_DENS_t_ID = 1

Referenced by atmosphycpvars_getlocalmeshfields_tend().

◆ atmos_phy_cp_rhow_t_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_rhow_t_id = 2

Definition at line 78 of file mod_atmos_phy_cp_vars.F90.

78 integer, public, parameter :: ATMOS_PHY_CP_RHOW_t_ID = 2

◆ atmos_phy_cp_rhot_t_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_rhot_t_id = 3

Definition at line 79 of file mod_atmos_phy_cp_vars.F90.

79 integer, public, parameter :: ATMOS_PHY_CP_RHOT_t_ID = 3

Referenced by atmosphycpvars_getlocalmeshfields_tend().

◆ atmos_phy_cp_rhoqv_t_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_rhoqv_t_id = 4

Definition at line 80 of file mod_atmos_phy_cp_vars.F90.

80 integer, public, parameter :: ATMOS_PHY_CP_RHOQV_t_ID = 4

Referenced by atmosphycpvars_getlocalmeshfields_tend().

◆ atmos_phy_cp_tends_num1

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_tends_num1 = 4

Definition at line 81 of file mod_atmos_phy_cp_vars.F90.

81 integer, public, parameter :: ATMOS_PHY_CP_TENDS_NUM1 = 4

◆ atmos_phy_cp_tend_vinfo

type(variableinfo), dimension(atmos_phy_cp_tends_num1), public mod_atmos_phy_cp_vars::atmos_phy_cp_tend_vinfo

Definition at line 83 of file mod_atmos_phy_cp_vars.F90.

83 type(VariableInfo), public :: ATMOS_PHY_CP_TEND_VINFO(ATMOS_PHY_CP_TENDS_NUM1)

◆ atmos_phy_cp_aux2d_sflx_rain_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_aux2d_sflx_rain_id = 1

Definition at line 94 of file mod_atmos_phy_cp_vars.F90.

94 integer, public, parameter :: ATMOS_PHY_CP_AUX2D_SFLX_RAIN_ID = 1

Referenced by atmosphycpvars_getlocalmeshfields_sfcflx().

◆ atmos_phy_cp_aux2d_sflx_snow_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_aux2d_sflx_snow_id = 2

Definition at line 95 of file mod_atmos_phy_cp_vars.F90.

95 integer, public, parameter :: ATMOS_PHY_CP_AUX2D_SFLX_SNOW_ID = 2

Referenced by atmosphycpvars_getlocalmeshfields_sfcflx().

◆ atmos_phy_cp_aux2d_sflx_engi_id

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_aux2d_sflx_engi_id = 3

Definition at line 96 of file mod_atmos_phy_cp_vars.F90.

96 integer, public, parameter :: ATMOS_PHY_CP_AUX2D_SFLX_ENGI_ID = 3

Referenced by atmosphycpvars_getlocalmeshfields_sfcflx().

◆ atmos_phy_cp_aux2d_num

integer, parameter, public mod_atmos_phy_cp_vars::atmos_phy_cp_aux2d_num = 3

Definition at line 97 of file mod_atmos_phy_cp_vars.F90.

97 integer, public, parameter :: ATMOS_PHY_CP_AUX2D_NUM = 3

Referenced by atmosphycpvars_getlocalmeshfields_sfcflx().

◆ atmos_phy_cp_aux2d_vinfo

type(variableinfo), dimension(atmos_phy_cp_aux2d_num), public mod_atmos_phy_cp_vars::atmos_phy_cp_aux2d_vinfo

Definition at line 99 of file mod_atmos_phy_cp_vars.F90.

99 type(VariableInfo), public :: ATMOS_PHY_CP_AUX2D_VINFO(ATMOS_PHY_CP_AUX2D_NUM)