private subroutine riming(temp, rhof, visco, l_qc, rc, nc, ilamc, mvd_c, l_qs, rs, smo0, smob, smoc, smoe, vtboost, l_qg, rg, ng, ilamg, idx, l_qh, rh, nh, ilamh, tend, odt)
proc~~riming~~UsesGraph
proc~riming
riming
module~module_mp_tempo_params
module_mp_tempo_params
proc~riming->module~module_mp_tempo_params
ccpp_kind_types
ccpp_kind_types
module~module_mp_tempo_params->ccpp_kind_types
iso_fortran_env
iso_fortran_env
module~module_mp_tempo_params->iso_fortran_env
module~machine
machine
module~module_mp_tempo_params->module~machine
mpas_kind_types
mpas_kind_types
module~module_mp_tempo_params->mpas_kind_types
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
snow and graupel riming
Note
snow collecting cloud water - assume dc << ds and vtc
at temperatures below melting, if the riming rate is greater than the depositional
growth rate for snow by a factor rime_threshold, convert a portion of rimed snow
to graupel
hail collecting cloud water - assume dc << dh and vtc
graupel collecting cloud water - assume dc << dg and vtc
rime density formula is from
Cober and List (1993)
hail size increases below the melting level so the collection efficiency
is reduced (proxy for shedding of collected cloud water)
rime splintering is from
Hallet and Mossop (1974)
Arguments
Type
Intent Optional Attributes
Name
real(kind=wp),
intent(in),
dimension(:)
::
temp
real(kind=wp),
intent(in),
dimension(:)
::
rhof
real(kind=wp),
intent(in),
dimension(:)
::
visco
logical,
intent(in),
dimension(:)
::
l_qc
real(kind=wp),
intent(in),
dimension(:)
::
rc
real(kind=wp),
intent(in),
dimension(:)
::
nc
real(kind=dp),
intent(in),
dimension(:)
::
ilamc
real(kind=wp),
intent(in),
dimension(:)
::
mvd_c
logical,
intent(in),
dimension(:)
::
l_qs
real(kind=wp),
intent(in),
dimension(:)
::
rs
real(kind=dp),
intent(in),
dimension(:)
::
smo0
real(kind=dp),
intent(in),
dimension(:)
::
smob
real(kind=dp),
intent(in),
dimension(:)
::
smoc
real(kind=dp),
intent(in),
dimension(:)
::
smoe
real(kind=wp),
intent(out),
dimension(:)
::
vtboost
logical,
intent(in),
dimension(:)
::
l_qg
real(kind=wp),
intent(in),
dimension(:)
::
rg
real(kind=wp),
intent(in),
dimension(:)
::
ng
real(kind=dp),
intent(in),
dimension(:)
::
ilamg
integer,
intent(in),
dimension(:)
::
idx
logical,
intent(in),
dimension(:)
::
l_qh
real(kind=wp),
intent(in),
dimension(:)
::
rh
real(kind=wp),
intent(in),
dimension(:)
::
nh
real(kind=dp),
intent(in),
dimension(:)
::
ilamh
type(ty_tend ),
intent(inout)
::
tend
real(kind=wp),
intent(in)
::
odt
proc~~riming~~CallsGraph
proc~riming
riming
proc~get_nuc
get_nuc
proc~riming->proc~get_nuc
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
proc~~riming~~CalledByGraph
proc~riming
riming
proc~tempo_main
tempo_main
proc~tempo_main->proc~riming
proc~tempo_run
tempo_run
proc~tempo_run->proc~tempo_main
proc~test_cloud_number_aerosolaware
test_cloud_number_aerosolaware
proc~test_cloud_number_aerosolaware->proc~tempo_run
proc~test_cloud_number_ml
test_cloud_number_ml
proc~test_cloud_number_ml->proc~tempo_run
proc~test_cloud_number_non_aerosolaware
test_cloud_number_non_aerosolaware
proc~test_cloud_number_non_aerosolaware->proc~tempo_run
proc~test_graupel_sedimentation
test_graupel_sedimentation
proc~test_graupel_sedimentation->proc~tempo_run
proc~test_ml_cloud_effective_radius
test_ml_cloud_effective_radius
proc~test_ml_cloud_effective_radius->proc~tempo_run
proc~test_snow_sedimentation
test_snow_sedimentation
proc~test_snow_sedimentation->proc~tempo_run
program~run_tempo_tests
run_tempo_tests
program~run_tempo_tests->proc~test_cloud_number_aerosolaware
program~run_tempo_tests->proc~test_cloud_number_ml
program~run_tempo_tests->proc~test_cloud_number_non_aerosolaware
program~run_tempo_tests->proc~test_graupel_sedimentation
program~run_tempo_tests->proc~test_ml_cloud_effective_radius
program~run_tempo_tests->proc~test_snow_sedimentation
Nodes of different colours represent the following:
Graph Key
Subroutine
Subroutine
Function
Function
Interface
Interface
Type Bound Procedure
Type Bound Procedure
Unknown Procedure Type
Unknown Procedure Type
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.