13 #include "inc_openmp.h" 61 if(
io_l )
write(
io_fid_log,*)
'++++++ Module[DRIVER] / Categ[ATMOS PHY_CP] / Origin[SCALE-RM]' 69 if(
io_l )
write(
io_fid_log,*)
'*** this component is never called.' 128 cloudtop => atmos_phy_cp_cloudtop, &
129 cloudbase => atmos_phy_cp_cloudbase, &
130 cldfrac_dp => atmos_phy_cp_cldfrac_dp, &
131 cldfrac_sh => atmos_phy_cp_cldfrac_sh, &
132 kf_nca => atmos_phy_cp_kf_nca, &
133 kf_w0avg => atmos_phy_cp_kf_w0avg
136 logical,
intent(in) :: update_flag
140 integer :: k, i, j, iq
143 if ( update_flag )
then 171 momz_t_cp(k,i,j) = 0.0_rp
172 momx_t_cp(k,i,j) = 0.0_rp
173 momy_t_cp(k,i,j) = 0.0_rp
181 mflx_cloudbase(i,j) = 0.0_rp
185 call hist_in( mflx_cloudbase(:,:),
'CBMFX',
'cloud base mass flux',
'kg/m2/s', nohalo=.true. )
186 call hist_in( sflx_rain(:,:),
'RAIN_CP',
'surface rain rate by CP',
'kg/m2/s', nohalo=.true. )
187 call hist_in( sflx_rain(:,:),
'PREC_CP',
'surface precipitation rate by CP',
'kg/m2/s', nohalo=.true. )
188 call hist_in( cloudtop(:,:),
'CUMHGT',
'CP cloud top height',
'm', nohalo=.true. )
189 call hist_in( cloudbase(:,:),
'CUBASE',
'CP cloud base height',
'm', nohalo=.true. )
190 call hist_in( cldfrac_dp(:,:,:),
'CUMFRC_DP',
'CP cloud fraction (deep)',
'0-1', nohalo=.true. )
191 call hist_in( cldfrac_sh(:,:,:),
'CUMFRC_SH',
'CP cloud fraction (shallow)',
'0-1', nohalo=.true. )
193 call hist_in( kf_nca(:,:),
'kf_nca',
'advection or cumulus convection timescale for KF',
's', nohalo=.true. )
194 call hist_in( kf_w0avg(:,:,:),
'kf_w0avg',
'rannning mean vertical wind velocity for KF',
'kg/m2/s', nohalo=.true. )
196 call hist_in( dens_t_cp(:,:,:),
'DENS_t_CP',
'tendency DENS in CP',
'kg/m3/s' , nohalo=.true. )
197 call hist_in( momz_t_cp(:,:,:),
'MOMZ_t_CP',
'tendency MOMZ in CP',
'kg/m2/s2' , nohalo=.true. )
198 call hist_in( momx_t_cp(:,:,:),
'MOMX_t_CP',
'tendency MOMX in CP',
'kg/m2/s2' , nohalo=.true. )
199 call hist_in( momy_t_cp(:,:,:),
'MOMY_t_CP',
'tendency MOMY in CP',
'kg/m2/s2' , nohalo=.true. )
200 call hist_in( rhot_t_cp(:,:,:),
'RHOT_t_CP',
'tendency RHOT in CP',
'K*kg/m3/s', nohalo=.true. )
203 call hist_in( rhoq_t_cp(:,:,:,iq), trim(
aq_name(iq))//
'_t_CP', &
204 'tendency rho*'//trim(
aq_name(iq))//
'in CP',
'kg/m3/s', nohalo=.true. )
213 dens_t(k,i,j) = dens_t(k,i,j) + dens_t_cp(k,i,j)
214 momz_t(k,i,j) = momz_t(k,i,j) + momz_t_cp(k,i,j)
215 momx_t(k,i,j) = momx_t(k,i,j) + momx_t_cp(k,i,j)
216 momy_t(k,i,j) = momy_t(k,i,j) + momy_t_cp(k,i,j)
217 rhot_t(k,i,j) = rhot_t(k,i,j) + rhot_t_cp(k,i,j)
227 rhoq_t(k,i,j,iq) = rhoq_t(k,i,j,iq) + rhoq_t_cp(k,i,j,iq)
234 call stat_total( total, dens_t_cp(:,:,:),
'DENS_t_CP' )
235 call stat_total( total, momz_t_cp(:,:,:),
'MOMZ_t_CP' )
236 call stat_total( total, momx_t_cp(:,:,:),
'MOMX_t_CP' )
237 call stat_total( total, momy_t_cp(:,:,:),
'MOMY_t_CP' )
238 call stat_total( total, rhot_t_cp(:,:,:),
'RHOT_t_CP' )
241 call stat_total( total, rhoq_t_cp(:,:,:,iq), trim(
aq_name(iq))//
'_t_CP' )
real(rp), dimension(:,:,:), allocatable, public dens_tp
integer, public is
start point of inner domain: x, local
logical, public atmos_sw_phy_cp
subroutine, public atmos_phy_cp_driver_resume
Redume.
logical, public statistics_checktotal
calc&report variable totals to logfile?
real(rp), dimension(:,:,:), allocatable, target, public momz
real(rp), dimension(:,:,:), allocatable, public atmos_phy_cp_momy_t
integer, public je
end point of inner domain: y, local
module Atmosphere / Physics Cumulus
subroutine, public atmos_phy_cp_setup(CP_TYPE)
Setup Cumulus parameterization.
module ATMOSPHERE / Physics Cumulus Parameterization
real(rp), dimension(:,:,:), allocatable, public atmos_phy_cp_momx_t
real(rp), dimension(:,:,:), allocatable, target, public rhot
real(rp), dimension(:,:,:), allocatable, public momy_tp
logical, public io_l
output log or not? (this process)
module ATMOSPHERE / Physics Cumulus
module ATMOSPHERIC Variables
real(rp), dimension(:,:,:), allocatable, target, public momx
integer, public ke
end point of inner domain: z, local
real(rp), dimension(:,:,:), allocatable, public rhot_tp
character(len=h_short), public atmos_phy_cp_type
real(rp), dimension(:,:,:), allocatable, target, public dens
real(rp), dimension(:,:,:), allocatable, public atmos_phy_cp_dens_t
real(rp), dimension(:,:,:,:), allocatable, public atmos_phy_cp_rhoq_t
subroutine, public atmos_phy_cp_driver_setup
Setup.
real(rp), dimension(:,:,:,:), allocatable, public rhoq_tp
character(len=h_short), dimension(:), allocatable, public aq_name
integer, public js
start point of inner domain: y, local
real(rp), dimension(:,:,:), allocatable, public atmos_phy_cp_momz_t
real(rp), dimension(:,:,:), allocatable, public atmos_phy_cp_rhot_t
subroutine, public atmos_phy_cp_driver(update_flag)
Driver.
integer, public ks
start point of inner domain: z, local
real(dp), public time_dtsec_atmos_phy_cp
time interval of physics(cumulus ) [sec]
real(rp), dimension(:,:,:), allocatable, public momx_tp
real(rp), dimension(:,:,:), allocatable, target, public momy
subroutine, public prof_rapstart(rapname_base, level)
Start raptime.
procedure(cp), pointer, public atmos_phy_cp
real(rp), dimension(:,:,:), allocatable, public momz_tp
integer, public ie
end point of inner domain: x, local
real(rp), dimension(:,:), allocatable, public atmos_phy_cp_mflx_cloudbase
integer, public io_fid_log
Log file ID.
subroutine, public prof_rapend(rapname_base, level)
Save raptime.
real(rp), dimension(:,:), allocatable, public atmos_phy_cp_sflx_rain
real(rp), dimension(:,:,:,:), allocatable, target, public qtrc