Skip to content

Commit

Permalink
Updates to aerosol RTs - new dust and fcsav (#1170)
Browse files Browse the repository at this point in the history
* Update AERO_ExtData.rc for new fengsha dust input

* Brings the regression tests closer to the p8c target configuration. Changes include:
- Updating fractional clay and sand to the SOILGRIDSv2 data - REF: https://soil.copernicus.org/articles/7/217/2021/
- Silt isn't actually used in the scheme.  Set to /dev/null:0.0 to skip reading a file and instead fill with zeros
- SSM is no longer used as the albedo drag partition describes the same information to the scheme. Set to /dev/null:1.0 so that all values are unity
- `DU_RDRAG` now uses a three year climatology of the Chappel and Webb 2016 albedo drag partition derived from the latest 3 years of MODIS BRDF Albedo monthly averages
- `DU_UTHRES` now uses a more robust threshold velocity derived from known historical dust point observations using a data driven approach from the combination of a met reanalysis, SOILGRIDSv2, and a RandomForest ensemble

* Update alpha to be consistent with latest scaling 
- This updates the `alpha` parameter to be consistent with the latest dust code changes and inputs 
- Note that gamma here doesn't matter because the `ssm=1` now in the `AERO_ExtData.rc` file

* Add FSCAV_AERO for regression tests
- Adds the environment vairable FSCAV_AERO so that the wet scavaging coeffients are not by default set to zero ensuring that the convective parameterizations are fully tested when aerosols are used.
  • Loading branch information
bbakernoaa authored May 19, 2022
1 parent 5c2d1a9 commit bea6b56
Show file tree
Hide file tree
Showing 19 changed files with 4,525 additions and 4,622 deletions.
408 changes: 212 additions & 196 deletions tests/RegressionTests_cheyenne.gnu.log

Large diffs are not rendered by default.

1,183 changes: 596 additions & 587 deletions tests/RegressionTests_cheyenne.intel.log

Large diffs are not rendered by default.

1,358 changes: 680 additions & 678 deletions tests/RegressionTests_gaea.intel.log

Large diffs are not rendered by default.

324 changes: 162 additions & 162 deletions tests/RegressionTests_hera.gnu.log

Large diffs are not rendered by default.

1,063 changes: 530 additions & 533 deletions tests/RegressionTests_hera.intel.log

Large diffs are not rendered by default.

928 changes: 458 additions & 470 deletions tests/RegressionTests_jet.intel.log

Large diffs are not rendered by default.

1,363 changes: 688 additions & 675 deletions tests/RegressionTests_orion.intel.log

Large diffs are not rendered by default.

883 changes: 436 additions & 447 deletions tests/RegressionTests_wcoss_cray.log

Large diffs are not rendered by default.

1,296 changes: 597 additions & 699 deletions tests/RegressionTests_wcoss_dell_p3.log

Large diffs are not rendered by default.

36 changes: 18 additions & 18 deletions tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -567,34 +567,34 @@ elif [[ $MACHINE_ID = cheyenne.* ]]; then
INPES_cpl_atmw_gdas=6; JNPES_cpl_atmw_gdas=8; WPG_cpl_atmw_gdas=24
WAV_tasks_atmw_gdas=264

TASKS_cpl_c96=192; THRD_cpl_c96=1
INPES_cpl_c96=3; JNPES_cpl_c96=8; WPG_cpl_c96=6
OCN_tasks_cpl_c96=30
ICE_tasks_cpl_c96=12
TASKS_cpl_c96=324; THRD_cpl_c96=1
INPES_cpl_c96=6; JNPES_cpl_c96=8; WPG_cpl_c96=6
OCN_tasks_cpl_c96=20
ICE_tasks_cpl_c96=10

TASKS_cpl_dflt=200; THRD_cpl_dflt=1
INPES_cpl_dflt=3; JNPES_cpl_dflt=8; WPG_cpl_dflt=6
TASKS_cpl_dflt=344; THRD_cpl_dflt=1
INPES_cpl_dflt=6; JNPES_cpl_dflt=8; WPG_cpl_dflt=6
OCN_tasks_cpl_dflt=20
ICE_tasks_cpl_dflt=10
WAV_tasks_cpl_dflt=20

TASKS_cpl_thrd=120; THRD_cpl_thrd=2
INPES_cpl_thrd=3; JNPES_cpl_thrd=4; WPG_cpl_thrd=6
TASKS_cpl_thrd=200; THRD_cpl_thrd=2
INPES_cpl_thrd=6; JNPES_cpl_thrd=4; WPG_cpl_thrd=6
OCN_tasks_cpl_thrd=20
ICE_tasks_cpl_thrd=10
WAV_tasks_cpl_thrd=12
WAV_tasks_cpl_thrd=20

TASKS_cpl_dcmp=200; THRD_cpl_dcmp=1
INPES_cpl_dcmp=4; JNPES_cpl_dcmp=6; WPG_cpl_dcmp=6
TASKS_cpl_dcmp=344; THRD_cpl_dcmp=1
INPES_cpl_dcmp=4; JNPES_cpl_dcmp=12; WPG_cpl_dcmp=6
OCN_tasks_cpl_dcmp=20
ICE_tasks_cpl_dcmp=10
WAV_tasks_cpl_dcmp=20

TASKS_cpl_mpi=280; THRD_cpl_mpi=1
INPES_cpl_mpi=4; JNPES_cpl_mpi=8; WPG_cpl_mpi=6
OCN_tasks_cpl_mpi=34
ICE_tasks_cpl_mpi=20
WAV_tasks_cpl_mpi=28
TASKS_cpl_mpi=498; THRD_cpl_mpi=1
INPES_cpl_mpi=6; JNPES_cpl_mpi=12; WPG_cpl_mpi=6
OCN_tasks_cpl_mpi=24
ICE_tasks_cpl_mpi=12
WAV_tasks_cpl_mpi=24

TASKS_cpl_c384=728; THRD_cpl_c384=3
INPES_cpl_c384=8; JNPES_cpl_c384=12; WPG_cpl_c384=24
Expand Down Expand Up @@ -929,7 +929,7 @@ export RANDOM_CLDS=.false.
export CNVCLD=.true.

# Aerosol convective scavenging
export FSCAV_AERO="'*:0.0'"
export FSCAV_AERO='"*:0.3","so2:0.0","msa:0.0","dms:0.0","nh3:0.4","nh4:0.6","bc1:0.6","bc2:0.6","dust1:0.6","dust2:0.6","dust3:0.6","dust4:0.6","dust5:0.6","seas1:0.5","seas2:0.5","seas3:0.5","seas4:0.5","seas5:0.5"'

# SFC
export DO_MYJSFC=.false.
Expand Down Expand Up @@ -1248,7 +1248,6 @@ export DO_SAT_ADJ=.false.
# P7 default mushy thermo
export KTHERM=2
export TFREEZE_OPTION=mushy

export CPLFLX=.true.
export CPLICE=.true.
export CPL=.true.
Expand Down Expand Up @@ -1336,6 +1335,7 @@ export HAFS=false
export DATM_CDEPS=true
export DOCN_CDEPS=false
export CPLWAV=.false.
export CPLCHM=.false.
export DAYS=1
export FHMAX=24
export FHROT=0
Expand Down
2 changes: 1 addition & 1 deletion tests/fv3_conf/control_run.IN
Original file line number Diff line number Diff line change
Expand Up @@ -132,5 +132,5 @@ fi
#prognostic aerosols
if [ $CPLCHM = .true. ]; then
cp ${PATHRT}/parm/gocart/*.rc .
ln -sf @[INPUTDATA_ROOT]/GOCART/ExtData .
ln -sf @[INPUTDATA_ROOT]/GOCART/p8/ExtData .
fi
1 change: 0 additions & 1 deletion tests/fv3_conf/cpld_control_run.IN
Original file line number Diff line number Diff line change
Expand Up @@ -136,6 +136,5 @@ fi

#prognostic aerosols
if [ $CPLCHM = .true. ]; then
cp @[INPUTDATA_ROOT]/GOCART/p8/rc/*.rc .
ln -sf @[INPUTDATA_ROOT]/GOCART/p8/ExtData .
fi
5 changes: 3 additions & 2 deletions tests/parm/gocart/AERO.rc
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
NX: 4
NY: 24
NX: 4
NY: 24

# Atmospheric Model Configuration Parameters
# ------------------------------------------
IOSERVER_NODES: 0
Expand Down
176 changes: 73 additions & 103 deletions tests/parm/gocart/AERO_ExtData.rc

Large diffs are not rendered by default.

106 changes: 63 additions & 43 deletions tests/parm/gocart/AERO_HISTORY.rc
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,22 @@ EXPSRC: GEOSgcm-v10.16.0


COLLECTIONS: 'inst_aod'
'tavg_cmass'
# 'inst_du_ss'
# 'inst_ca'
# 'inst_ni'
# 'inst_su'
# 'inst_du_bin'
# 'inst_ss_bin'
# 'inst_ca_bin'
# 'inst_ni_bin'
# 'inst_su_bin'
# 'inst_2d'
# 'inst_3d'
# 'inst_aod'
# 'tavg_du_ss'
# 'tavg_du_bin'
# 'tavg_2d_rad'
# 'tavg_3d_rad'
::

##################################################
Expand Down Expand Up @@ -43,20 +58,34 @@ PC720x361-DC.LM: 72
inst_du_ss.mode: 'instantaneous',
inst_du_ss.grid_label: PC720x361-DC ,
inst_du_ss.splitField: 1,
inst_du_ss.frequency: 010000 ,
inst_du_ss.frequency: 120000 ,
inst_du_ss.duration: 010000 ,
inst_du_ss.ref_time: 000000 ,
inst_du_ss.nbits: 10,
inst_du_ss.fields: 'DU' , 'DU' ,
'SS' , 'SS' ,
::

tavg_du_ss.format: 'CFIO' ,
tavg_du_ss.descr: '3d,Hourly,Instantaneous,Model-Level,Aerosol Concentrations',
tavg_du_ss.template: '%y4%m2%d2_%h2%n2z.nc4',
tavg_du_ss.mode: 'time-averaged',
tavg_du_ss.grid_label: PC720x361-DC ,
tavg_du_ss.splitField: 1,
tavg_du_ss.frequency: 120000 ,
tavg_du_ss.duration: 010000 ,
tavg_du_ss.ref_time: 000000 ,
tavg_du_ss.nbits: 10,
tavg_du_ss.fields: 'DU' , 'DU' ,
'SS' , 'SS' ,
::

inst_ca.format: 'CFIO' ,
inst_ca.descr: '3d,Hourly,Instantaneous,Model-Level,Aerosol Concentrations',
inst_ca.template: '%y4%m2%d2_%h2%n2z.nc4',
inst_ca.mode: 'instantaneous',
inst_ca.grid_label: PC720x361-DC ,
inst_ca.frequency: 010000 ,
inst_ca.frequency: 120000 ,
inst_ca.duration: 010000 ,
inst_ca.ref_time: 000000 ,
inst_ca.nbits: 10,
Expand All @@ -71,7 +100,7 @@ PC720x361-DC.LM: 72
inst_ni.template: '%y4%m2%d2_%h2%n2z.nc4',
inst_ni.mode: 'instantaneous',
inst_ni.grid_label: PC720x361-DC ,
inst_ni.frequency: 010000 ,
inst_ni.frequency: 120000 ,
inst_ni.duration: 010000 ,
inst_ni.ref_time: 000000 ,
inst_ni.nbits: 10,
Expand All @@ -87,7 +116,7 @@ PC720x361-DC.LM: 72
inst_su.template: '%y4%m2%d2_%h2%n2z.nc4',
inst_su.mode: 'instantaneous',
inst_su.grid_label: PC720x361-DC ,
inst_su.frequency: 010000 ,
inst_su.frequency: 120000 ,
inst_su.duration: 010000 ,
inst_su.ref_time: 000000 ,
inst_su.nbits: 10,
Expand Down Expand Up @@ -117,13 +146,30 @@ PC720x361-DC.LM: 72
'DUSV' , 'DU' ,
::

tavg_du_bin.format: 'CFIO' ,
tavg_du_bin.descr: '2d,Hourly,Instantaneous'
tavg_du_bin.template: '%y4%m2%d2_%h2%n2z.nc4',
tavg_du_bin.mode: 'time-averaged'
tavg_du_bin.grid_label: PC720x361-DC ,
tavg_du_bin.splitField: 1,
tavg_du_bin.frequency: 030000 ,
tavg_du_bin.duration: 010000 ,
tavg_du_bin.ref_time: 000000 ,
tavg_du_bin.nbits: 10,
tavg_du_bin.fields: 'DUEM' , 'DU' ,
'DUSD' , 'DU' ,
'DUDP' , 'DU' ,
'DUWT' , 'DU' ,
'DUSV' , 'DU' ,
::

inst_ss_bin.format: 'CFIO' ,
inst_ss_bin.descr: '2d,Hourly,Instantaneous'
inst_ss_bin.template: '%y4%m2%d2_%h2%n2z.nc4',
inst_ss_bin.mode: 'instantaneous'
inst_ss_bin.grid_label: PC720x361-DC ,
inst_ss_bin.splitField: 1,
inst_ss_bin.frequency: 010000 ,
inst_ss_bin.frequency: 060000 ,
inst_ss_bin.duration: 010000 ,
inst_ss_bin.ref_time: 000000 ,
inst_ss_bin.nbits: 10,
Expand All @@ -140,7 +186,7 @@ PC720x361-DC.LM: 72
inst_ca_bin.mode: 'instantaneous'
inst_ca_bin.grid_label: PC720x361-DC ,
inst_ca_bin.splitField: 1,
inst_ca_bin.frequency: 010000 ,
inst_ca_bin.frequency: 120000 ,
inst_ca_bin.duration: 010000 ,
inst_ca_bin.ref_time: 000000 ,
inst_ca_bin.nbits: 10,
Expand All @@ -162,7 +208,7 @@ PC720x361-DC.LM: 72
inst_ni_bin.mode: 'instantaneous',
inst_ni_bin.grid_label: PC720x361-DC ,
inst_ni_bin.splitField: 1,
inst_ni_bin.frequency: 010000 ,
inst_ni_bin.frequency: 120000 ,
inst_ni_bin.duration: 010000 ,
inst_ni_bin.ref_time: 000000 ,
inst_ni_bin.nbits: 10,
Expand All @@ -179,7 +225,7 @@ PC720x361-DC.LM: 72
inst_su_bin.mode: 'instantaneous',
inst_su_bin.grid_label: PC720x361-DC ,
inst_su_bin.splitField: 1,
inst_su_bin.frequency: 010000 ,
inst_su_bin.frequency: 120000 ,
inst_su_bin.duration: 010000 ,
inst_su_bin.ref_time: 000000 ,
inst_su_bin.nbits: 10,
Expand All @@ -198,8 +244,8 @@ PC720x361-DC.LM: 72
inst_2d.template: '%y4%m2%d2_%h2%n2z.nc4',
inst_2d.archive: '%c/Y%y4',
inst_2d.mode: 'instantaneous'
inst_2d.frequency: 010000,
inst_2d.duration: 010000,
inst_2d.frequency: 030000,
inst_2d.duration: 030000,
inst_2d.ref_time: 000000,
inst_2d.grid_label: PC720x361-DC
inst_2d.fields: 'DUSMASS' , 'DU' ,
Expand Down Expand Up @@ -290,40 +336,14 @@ PC720x361-DC.LM: 72
'SO2EMVE' , 'SU' ,
::

tavg_cmass.format: 'CFIO' ,
tavg_cmass.descr: '2d,3-hourly,Time-averaged'
tavg_cmass.template: '%y4%m2%d2_%h2%n2z.nc4',
tavg_cmass.archive: '%c/Y%y4',
tavg_cmass.mode: 'time-averaged'
tavg_cmass.frequency: 030000,
tavg_cmass.duration: 030000,
tavg_cmass.ref_time: 000000,
tavg_cmass.grid_label: PC720x361-DC
tavg_cmass.fields: 'DUCMASS' , 'DU' ,
'DUCMASS25' , 'DU' ,
'SSCMASS' , 'SS' ,
'SSCMASS25' , 'SS' ,
'CACMASSCA.bc' , 'CA.bc' ,
'CACMASSCA.oc' , 'CA.oc' ,
'HNO3CMASS' , 'NI' ,
'NH3CMASS' , 'NI' ,
'NH4CMASS' , 'NI' ,
'NICMASS' , 'NI' ,
'NICMASS25' , 'NI' ,
'SO2CMASS' , 'SU' ,
'SO4CMASS' , 'SU' ,
'DMSCMASS' , 'SU' ,
'MSACMASS' , 'SU' ,
::

#
# 3d diagnostics
#
inst_3d.format: 'CFIO' ,
inst_3d.template: '%y4%m2%d2_%h2%n2z.nc4' ,
inst_3d.archive: '%c/Y%y4' ,
inst_3d.mode: 'instantaneous'
inst_3d.frequency: 010000,
inst_3d.frequency: 060000,
inst_3d.duration: 010000,
inst_3d.ref_time: 000000,
inst_3d.grid_label: PC720x361-DC
Expand Down Expand Up @@ -361,7 +381,7 @@ PC720x361-DC.LM: 72
inst_aod.template: '%y4%m2%d2_%h2%n2z.nc4' ,
inst_aod.archive: '%c/Y%y4' ,
inst_aod.mode: 'instantaneous'
inst_aod.frequency: 010000,
inst_aod.frequency: 060000,
inst_aod.duration: 010000,
inst_aod.ref_time: 000000,
inst_aod.grid_label: PC720x361-DC
Expand All @@ -379,8 +399,8 @@ PC720x361-DC.LM: 72
tavg_2d_rad.template: '%y4%m2%d2_%h2%n2z.nc4',
tavg_2d_rad.archive: '%c/Y%y4',
tavg_2d_rad.mode: 'time-averaged',
tavg_2d_rad.frequency: 030000,
tavg_2d_rad.duration: 030000,
tavg_2d_rad.frequency: 120000,
tavg_2d_rad.duration: 120000,
tavg_2d_rad.ref_time: 000000,
tavg_2d_rad.grid_label: PC720x361-DC
tavg_2d_rad.fields: 'CAEXTTAUCA.bc' , 'CA.bc' ,
Expand Down Expand Up @@ -413,8 +433,8 @@ PC720x361-DC.LM: 72
tavg_3d_rad.template: '%y4%m2%d2_%h2%n2z.nc4',
tavg_3d_rad.archive: '%c/Y%y4',
tavg_3d_rad.mode: 'time-averaged',
tavg_3d_rad.frequency: 030000,
tavg_3d_rad.duration: 030000,
tavg_3d_rad.frequency: 120000,
tavg_3d_rad.duration: 120000,
tavg_3d_rad.ref_time: 000000,
tavg_3d_rad.grid_label: PC720x361-DC
tavg_3d_rad.splitField: 1,
Expand Down
6 changes: 3 additions & 3 deletions tests/parm/gocart/DU2G_instance_DU.rc
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ nbins: 5
pressure_lid_in_hPa: 0.01

# Emissions methods
emission_scheme: ginoux # choose among: fengsha, ginoux, k14
emission_scheme: fengsha # choose among: fengsha, ginoux, k14

# FENGSHA settings
alpha: 0.7
gamma: 1.0
alpha: 0.04
gamma: 0.8
vertical_to_horizontal_flux_ratio_limit: 2.e-04
2 changes: 1 addition & 1 deletion tests/rt.sh
Original file line number Diff line number Diff line change
Expand Up @@ -485,7 +485,7 @@ if [[ $TESTS_FILE =~ '35d' ]] || [[ $TESTS_FILE =~ 'weekly' ]]; then
TEST_35D=true
fi

BL_DATE=20220516
BL_DATE=20220517
if [[ $MACHINE_ID = hera.* ]] || [[ $MACHINE_ID = orion.* ]] || [[ $MACHINE_ID = cheyenne.* ]] || [[ $MACHINE_ID = gaea.* ]] || [[ $MACHINE_ID = jet.* ]] || [[ $MACHINE_ID = s4.* ]]; then
RTPWD=${RTPWD:-$DISKNM/NEMSfv3gfs/develop-${BL_DATE}/${RT_COMPILER^^}}
else
Expand Down
4 changes: 4 additions & 0 deletions tests/run_test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -255,6 +255,10 @@ if [[ $CPLWAV == .true. ]]; then
atparse < ${PATHRT}/parm/ww3_multi.inp.IN > ww3_multi.inp
fi

if [[ $CPLCHM == .true. ]]; then
cp ${PATHRT}/parm/gocart/*.rc .
fi

if [[ $DATM_CDEPS = 'true' ]] || [[ $S2S = 'true' ]]; then
if [[ $HAFS = 'false' ]]; then
atparse < ${PATHRT}/parm/ice_in_template > ice_in
Expand Down
3 changes: 0 additions & 3 deletions tests/tests/control_atm_aerosols
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,7 @@ export LIST_FILES="sfcf000.nc \
GFSFLX.GrbF24 \
GFSPRS.GrbF00 \
GFSPRS.GrbF24 \
gocart.inst_aod.20210322_0700z.nc4 \
gocart.inst_aod.20210323_0600z.nc4 \
gocart.tavg_cmass.20210322_0730z.nc4 \
gocart.tavg_cmass.20210323_0430z.nc4 \
RESTART/coupler.res \
RESTART/fv_core.res.nc \
RESTART/fv_core.res.tile1.nc \
Expand Down

0 comments on commit bea6b56

Please sign in to comment.