CCPP SciDoc v7.0.0  v7.0.0
Common Community Physics Package Developed at DTC
 
Loading...
Searching...
No Matches
module_mp_fer_hires Module Reference

Functions/Subroutines

subroutine fer_hires (dt, rhgrd, prsi, p_phy, t_phy, q, qt, lowlyr, sr, train_phy, f_ice_phy, f_rain_phy, f_rimef_phy, qc, qr, qs, rainnc, rainncv, threads, ims, ime, lm, d_ss, refl_10cm, dx1)
 This is the driver scheme of Ferrier-Aligo microphysics scheme. NOTE: The only differences between FER_HIRES and FER_HIRES_ADVECT is that the QT, and F_* are all local variables in the advected version, and QRIMEF is only in the advected version. The innards are all the same.
 
subroutine egcp01column_hr (arain, asnow, dtph, rhc_col, i_index, j_index, lsfc, p_col, qi_col, qr_col, q_col, qw_col, rimef_col, t_col, thick_col, wc_col, lm, pcond1d, pidep1d, piacw1d, piacwi1d, piacwr1d, piacr1d, picnd1d, pievp1d, pimlt1d, praut1d, pracw1d, prevp1d, pisub1d, pevap1d, dbz_col, nr_col, ns_col, vsnow1d, vrain11d, vrain21d, vci1d, nsmice1d, indexs1d, indexr1d, rflag1d, dx1)
 This is the grid-scale microphysical processes of Ferrier-Aligo microphysics scheme (i.e., condensation and precipitation).
 
subroutine, public ferrier_init_hr (gsmdt, mpi_comm_comp, mpirank, mpiroot, threads, errmsg, errflg)
 
subroutine my_growth_rates_nmm_hr (dtph)
 
subroutine, public gpvs_hr
 
real function, public fpvs (t)
 
real function, public fpvs0 (t)
 
real function fpvsx (t)
 
real function fpvsx0 (t)
 
subroutine ferhires_finalize ()
 

Variables

real, parameter pi =3.141592653589793
 
real, parameter cp =1004.6
 
real, parameter epsq =1.e-12
 
real, parameter grav = 9.8060226
 
real, parameter rhol =1000.
 
real, parameter rd =287.04
 
real, parameter rv =461.6
 
real, parameter t0c = 273.15
 
real, parameter eps =RD/RV
 
real, parameter eps1 =RV/RD-1.
 
real, parameter cliq = 4190.
 
real, parameter cice = 2106.
 
real, parameter xlv = 2.5E6
 
real, save, private abfr
 
real, save, private cbfr
 
real, save, private ciacw
 
real, save, private ciacr
 
real, save, private c_n0r0
 
real, save, private c_nr
 
real, save, private crain
 
real, save, private cracw
 
real, save, private araut
 
real, save, private braut
 
real, save, private esw0
 
real, save, private rfmx1
 
real, save, private arcw
 
real, save, private rh_ngc
 
real, save, private rh_ngt
 
real, save, private rr_drmin
 
real, save, private rr_dr1
 
real, save, private rr_dr2
 
real, save, private rr_dr3
 
real, save, private rr_dr4
 
real, save, private rr_dr5
 
real, save, private rr_drmax
 
real, save, private beta6
 
real, save, private rqhail
 
real, save, private avhail
 
real, save, private bvhail
 
real, save, private qaut0
 
integer, parameter, private indexrstrmax =500
 
real, save, public cn0r0
 
real, save, public cn0r_dmrmin
 
real, save, public cn0r_dmrmax
 
real, save, public rfmax
 
real, save, public rqr_drmax
 
real, save, public rqr_drmin
 
integer, parameter, private my_t1 =1
 
integer, parameter, private my_t2 =35
 
real, dimension(my_t1:my_t2), save, private my_growth_nmm
 
real, parameter, private dmimin =.05e-3
 
real, parameter, private dmimax =1.e-3
 
real, parameter, private deldmi =1.e-6
 
real, parameter, private xmimin =1.e6*DMImin
 
real, parameter, public xmimax =1.e6*DMImax
 
real, parameter, public xmiexp =.0536
 
integer, parameter, public mdimin =XMImin
 
integer, parameter, public mdimax =XMImax
 
real, dimension(:), allocatable accri
 
real, dimension(:), allocatable vsnowi
 
real, dimension(:), allocatable venti1
 
real, dimension(:), allocatable venti2
 
real, dimension(mdimin:mdimax), public sdens
 
real, parameter, private dmrmin =.05e-3
 
real, parameter, private dmrmax =1.0e-3
 
real, parameter, private deldmr =1.e-6
 
real, parameter, private xmrmin =1.e6*DMRmin
 
real, parameter, private xmrmax =1.e6*DMRmax
 
integer, parameter, public mdrmin =XMRmin
 
integer, parameter, public mdrmax =XMRmax
 
real, dimension(:), allocatable accrr
 
real, dimension(:), allocatable massr
 
real, dimension(:), allocatable rrate
 
real, dimension(:), allocatable vrain
 
real, dimension(:), allocatable ventr1
 
real, dimension(:), allocatable ventr2
 
integer, parameter, private nrime =40
 
real, dimension(:,:), allocatable vel_rf
 
integer, parameter, public nx =7501
 
real, parameter xmin =180.0
 
real, parameter xmax =330.0
 
real, dimension(nx), save, public tbpvs
 
real, dimension(nx), save, public tbpvs0
 
real, save, public c1xpvs0
 
real, save, public c2xpvs0
 
real, save, public c1xpvs
 
real, save, public c2xpvs
 
real, dimension(my_t2+8) mp_restart_state
 
real, dimension(nxtbpvs_state
 
real, dimension(nxtbpvs0_state
 
real, parameter, private cvap =1846.
 
real, parameter, private xlf =3.3358e+5
 
real, parameter, private xls =XLV+XLF
 
real, parameter, private epsq1 =1.001*EPSQ
 
real, parameter, private rcp =1./CP
 
real, parameter, private rcprv =RCP/RV
 
real, parameter, private rgrav =1./GRAV
 
real, parameter, private rrhol =1./RHOL
 
real, parameter, private xlv1 =XLV/CP
 
real, parameter, private xlf1 =XLF/CP
 
real, parameter, private xls1 =XLS/CP
 
real, parameter, private xlv2 =XLV*XLV/RV
 
real, parameter, private xls2 =XLS*XLS/RV
 
real, parameter, private xlv3 =XLV*XLV*RCPRV
 
real, parameter, private xls3 =XLS*XLS*RCPRV
 
real, parameter, private climit =10.*EPSQ
 
real, parameter, private climit1 =-CLIMIT
 
real, parameter, private c1 =1./3.
 
real, parameter, private dmr1 =.1E-3
 
real, parameter, private dmr2 =.2E-3
 
real, parameter, private dmr3 =.32E-3
 
real, parameter, private dmr4 =0.45E-3
 
real, parameter, private dmr5 =0.67E-3
 
real, parameter, private xmr1 =1.e6*DMR1
 
real, parameter, private xmr2 =1.e6*DMR2
 
real, parameter, private xmr3 =1.e6*DMR3
 
real, parameter, private xmr4 =1.e6*DMR4
 
real, parameter, private xmr5 =1.e6*DMR5
 
real, parameter, private rqrmix =0.05E-3
 
real, parameter, private rqsmix =1.E-3
 
real, parameter, private cdry =1.634e13
 
real, parameter, private cwet =1./.224
 
integer, parameter mdr1 =XMR1
 
integer, parameter mdr2 =XMR2
 
integer, parameter mdr3 =XMR3
 
integer, parameter mdr4 =XMR4
 
integer, parameter mdr5 =XMR5
 
logical, save warn1 =.TRUE.
 
logical, save warn2 =.TRUE.
 
logical, save warn3 =.TRUE.
 
logical, save warn5 =.TRUE.
 
real, save pwarn =75.E2
 
real, save qtwarn =1.E-3
 
integer, parameter max_iterations =10
 
real, parameter, public rhgrd_in =1.
 
real, parameter, public p_rhgrd_out =850.E2
 
real, parameter, public t_ice =-40.
 
real, parameter, public t_icek =T0C+T_ICE
 
real, parameter, public t_ice_init =-12.
 
real, parameter, public nsi_max =250.E3
 
real, parameter, public nlimin =1.0E3
 
real, parameter, public n0r0 =8.E6
 
real, parameter, public n0rmin =1.E4
 
real, parameter, public ncw =250.E6
 
real, dimension(:), allocatable massi