Skip to content

Commit

Permalink
Squashed 'src/rpnphy/' changes from 62cc207e..366a0126
Browse files Browse the repository at this point in the history
366a0126 Update version and nml ref (6.2.0)
d1a635e2 update nml_mkref script fot GEMoaS
c8251261 rpnphy: update VERSION, doc and nml ref (rpnphy_)
1680a424 rpnphy: stop if adtectke && kfc2 (until a fix is done)

git-subtree-dir: src/rpnphy
git-subtree-split: 366a012686e36a449eaa568df3ecd806b7f6967b
  • Loading branch information
chantal-pic committed Jan 8, 2024
1 parent 9fd1149 commit fe59593
Show file tree
Hide file tree
Showing 5 changed files with 278 additions and 9 deletions.
6 changes: 3 additions & 3 deletions MANIFEST
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
NAME : rpnphy
VERSION : 6.2.0-rc3
VERSION : 6.2.0
BUILD :
DESCRIPTION: RPN Physics parameterisations
SUMMARY : The RPN Physics Library consists of a comprehensive description of the most important physical processes in the atmosphere and at the surface, and provides a unified library environment on which dynamical models can easily interface. The physical parameterizations modify the model basic variables, by adding tendencies due to various physical processes. These processes are either unresolvable by the model dynamics (e.g., turbulent transfers), unresolved (e.g., deep convection, gravity wave drag), or simply missing from the basic dynamic equations (e.g., radiation, surface processes).
MAINTAINER : Ron McTaggart-Cowan - Ron.McTaggart-Cowan@ec.gc.ca
URL : https://gitlab.science.gc.ca/MIG/rpnphy
DOC : https://wiki.cmc.ec.gc.ca/wiki/RPNPhy
DOC : https://wiki.cmc.ec.gc.ca/wiki/RPNPhy

# Dependencies
# =,<,<=,>,>= : Version rules
# ~ : Optional

modelutils = 1.7.0-rc1
modelutils = 1.7.0
8 changes: 4 additions & 4 deletions bin/rpnphy_nml_mkref
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
# @Object: Create a reference nml for rpnphy
# @Author: S.Chamberland
# @Date: Feb 2016, Jan 2021
# @Date: Dec 2022, modified by Chantal Pic for GoaS

DESC='Create a reference nml for rpnphy'

Expand All @@ -27,16 +28,15 @@ fi

if [[ x"${rpnphy_version}" == x"" ]] ; then
cat 1>&2 <<EOF
ERROR: RPNPHY environement not properly set, \${rpnphy_version} not defined.
ERROR: RPNPHY environment not properly set, \${rpnphy_version} not defined.
EOF
exit 1
fi

abs=$(which prphynml_${BASE_ARCH}.Abs)
abs=$(which prphynml)
if [[ x"${abs}" == x"" ]] ; then
cat 1>&2 <<EOF
ERROR: RPNPHY environement not properly set, cannot find all print nml prog
prphynml=${abs:-prphynml_${BASE_ARCH}.Abs}
ERROR: RPNPHY environment not properly set, cannot find all print nml prog
EOF
exit 1
fi
Expand Down
257 changes: 257 additions & 0 deletions share/nml_ref/rpnphy_settings.6.2.0-rc4.ref
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
&convection_cfgs
bkf_closures=CAPE
bkf_detrains=BECHTOLD01
bkf_entrains=BECHTOLD01
bkf_evaps=F
bkf_kch=0
bkf_kens=0
bkf_kice=1
bkf_ktdia=1
bkf_lch1conv=F
bkf_ldown=T
bkf_lshalm=F
bkf_rads=2*50.00000 , 0.0000000E+00
bkf_tperts=2*0.2000000 , 0.0000000E+00
cmt_ecmwf_lambda=2.000000
cmt_gki_cdown=0.0000000E+00
cmt_gki_cup=0.7000000
cmt_type=NIL
deep=nil
deep_cloudobj=F
deep_codecay=600.0000
deep_conserve=PRECIP
deep_timeconv=1h
deep_timeent=timeconv
deep_timerefresh=timeconv
kfcdepth=4000.000
kfcdpdd=10000.00
kfcprod=F
kfcrad=1500.000
kfcradw=-1.000000
kfctaucape=4*-1.000000
kfctrig4=2*0.0000000E+00 , 2*5.0000001E-02
kfctriga=-1.000000
kfctrigl=5.0000001E-02
kfctriglat=F
kfctrigtau=-1.000000
kfctrigw=4*0.0000000E+00
mid=nil
mid_conserve=PRECIP
mid_depth=2000.000
mid_dpdd=6000.000
mid_emffrac=all
mid_emfmod=nil
mid_maxcape=-1.000000
mid_minbase=500.0000
mid_minemf=1.0000000E+07
mid_peff=0.4
shal=nil
shal_conserve=NIL
shal_timeconv=3h
triglat=2*0.0000000E+00
/
&physics_cfgs
acchr=0
advectke=F
clip_tr_l=T
cond_conserve=NIL
cond_evap=1.9999999E-04
cond_hmrst=3.0000001E-04
cond_hu0max=0.9750000
cond_hu0min=0.8500000
cond_iceacc=5.000000
debug_alldiag_l=F
debug_initonly_l=F
debug_mem_l=F
debug_trace_l=F
diffuw=F
etrmin2=9.9999997E-05
fluvert=NIL
fnn_mask=F
fnn_reduc=1.000000
fnnmod=2.000000
gwdrag=NIL
hines_flux_filter=0
iheatcal=0
indiag_list_s=DEFAULT LIST
inilwc=F
input_type=DIST
intozot=F
iuv_method=IntegFit
kntrad_s=,
kntraduv_s=,
lhn=NIL
lhn_filter=-1.000000
lhn_ramp_s=10p
lhn_start_s=10p
lhn_stop_s=360p
lhn_weight=0.0000000E+00
linoz_chm=NIL
lmetox=F
longmel=BLAC62
moyhr=0
mp_aeroact=1
mpdiag_for_sfc=F
my_ccntype=1
my_diagon=T
my_iceon=T
my_rainon=T
my_sedion=T
my_snowon=T
my_warmon=T
ninblocx=1
ninblocy=1
non_oro=F
non_oro_pbot=61000.00
nsloflux=0
p3_debug=F
p3_depfact=1.000000
p3_dtmax=60.00000
p3_ncat=1
p3_pfrac=1.000000
p3_resfact=1.000000
p3_scpf_on=F
p3_subfact=1.000000
p_runlgt=-1
pbl_cmu_timeavg=F
pbl_conserve=NIL
pbl_cucloud=T
pbl_diff_condens=F
pbl_diss=NIL
pbl_dissheat=NIL
pbl_func_stab=DELAGE97
pbl_func_unstab=DELAGE92
pbl_mlblac_max=BLAC62
pbl_mlturb_diss=F
pbl_moistke_legacy_cloud=F
pbl_nonloc=NIL
pbl_ribkg=F
pbl_ricrit=2*1.000000
pbl_shal=NIL
pbl_slblend_layer=2*-1.000000
pbl_tkediff=1.000000
pbl_tkediff2dt=F
pbl_turbsl_depth=3000.000
pbl_ysu_rpnsolve=F
pbl_zerobc=F
pbl_zntau=7200.000
pcptype=NIL
phystat_2d_l=F
phystat_dble_l=F
phystat_freq_s=0h
phystat_input_l=F
phystat_list_s=,
qcfc11=-1.000000
qcfc12=-1.000000
qch4=-1.000000
qco2=-1.000000
qn2o=-1.000000
rad_atmpath=RODGERS67
rad_cond_rei=15.
rad_cond_rew=BARKER
rad_conserve=NIL
rad_esfc=F
rad_linoz_l=F
rad_lw=T
rad_part_nomp=BOUOPS
rad_siglim=0.7000000 , 0.4000000 , 0.7000000 , 0.4000000
rad_sun_angle_fix_l=F
rad_sw=T
rad_zlim=3200.000 , 6500.000
radghg_l=F
radia=NIL
radslope=F
rmscon=1.000000
satuco=T
sfcflx_filter_iter=1
sfcflx_filter_order=-1
sgo_bhfac=1.500000
sgo_cdmin=1.000000
sgo_nldirfac=T
sgo_phic=0.2000000
sgo_stabfac=T
sgo_tdfilter=1.000000
sgo_windfac=2.000000 , 9.9999998E-03
stcond=NIL
stratos=F
taufac=8.0000000E-06
test_phy=F
timings_l=F
tofd=NIL
tofd_alpha=12.00000
/
&series
p_serg_serstp=2147483647
p_serg_srprf_s=,
p_serg_srsrf_s=,
p_serg_srwri=1
xst_stn_latlon=-9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED, -9999.000, -9999.000, UNDEFINED
/
&surface_cfgs
adj_i0_snow=T
beta=1.000000
diusst=NIL
diusst_lakes=T
diusst_ocean=T
diusst_warmlayer_lakes=T
dp_svs=50*-1.000000
ice_emiss=0.99
icelac=F
icemelt=F
impflx=F
isba_melting_fix=F
isba_snow_z0veg=F
isba_soil_emiss=0.95
isba_zr_freeze=F
kdp=-1
khyd=-1
kntveg_s=,
lake_leadfrac=0.0000000E+00
leadfrac=2.9999999E-02
limsnodp=F
lsoil_freezing_svs1=F
lwater_ponding_svs1=F
owflux=F
read_emis=F
read_z0vh=F
salty_qsat=F
schmlake=NIL
schmriver=NIL
schmsol=ISBA
schmurb=NIL
sl_func_stab=DELAGE97
sl_func_unstab=DELAGE92
sl_lmin_glacier=-1.000000
sl_lmin_seaice=-1.000000
sl_lmin_soil=-1.000000
sl_lmin_town=-1.000000
sl_lmin_water=-1.000000
sl_rineutral=0.0000000E+00
sl_z0ref=F
snoalb_anl=T
snow_emiss=1.
soiltext=GSDE
svs_dynamic_z0h=F
svs_hrsurf_sltext=F
svs_local_z0m=F
svs_snow_rain=BELAIR03
svs_urban_params=F
tdiaglim=F
urb_diagtemp=F
urb_diagwind=F
use_eff_surf_tq=F
use_photo=T
veg_rs_mult=1.000000
vf_type=CLASSIC
water_emiss=1.
z0dir=F
z0hcon=3.9999999E-05
z0min=1.5000000E-05
z0mtype=CHARNOCK
z0seaice=1.6000000E-04
z0tevol=FIXED
z0tlat=2*0.0000000E+00
z0ttype=MOMENTUM
zt=1.500000
zu=10.00000
/
5 changes: 5 additions & 0 deletions share/nml_upd/rpnphy_nml_update_db.txt
Original file line number Diff line number Diff line change
Expand Up @@ -614,4 +614,9 @@ fileVersion: 6.2.0-b2 > 6.2.0-b3
fileVersion: 6.2.0-rc1 > 6.2.0-rc2
#------
fileVersion: 6.2.0-rc2 > 6.2.0-rc3
#------
fileVersion: 6.2.0-rc3 > 6.2.0-rc4
#------
fileVersion: 6.2.0-rc4 > 6.2.0


11 changes: 9 additions & 2 deletions src/api/phy_nml.F90
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,6 @@ function phy_nml(F_namelist) result(F_status)
F_status = PHY_NONE
return
endif
err = phy_nml_check()
if (.not.RMN_IS_OK(err)) return

!# Read surface namelist
err = sfc_nml2(F_namelist)
Expand All @@ -100,6 +98,10 @@ function phy_nml(F_namelist) result(F_status)
call msg(MSG_ERROR, '(phy_nml) Problem reading chemestry namelist')
return
endif

!# Check namelist options validity and consistency
err = phy_nml_check()
if (.not.RMN_IS_OK(err)) return

!#
err = phy_nml_post_init()
Expand Down Expand Up @@ -393,6 +395,11 @@ function phy_nml_check() result(m_istat)
call msg(MSG_ERROR,'(phy_nml_check) sfcflx_filter_order must be -1, 2 or 4')
return
endif

if (advectke .and. deep == 'KFC2') then
call msg(MSG_ERROR,'(phy_nml_check) Cannot use ADVECTKE with KFC2 (fix pending)')
return
endif

m_istat = RMN_OK
!----------------------------------------------------------------
Expand Down

0 comments on commit fe59593

Please sign in to comment.