Skip to content

Commit

Permalink
Merge pull request #20 from jkhender/feature/chem
Browse files Browse the repository at this point in the history
additional changes to run in realtime
  • Loading branch information
jkhender committed Dec 8, 2020
2 parents 09d424b + feb26c7 commit 318b0b7
Show file tree
Hide file tree
Showing 52 changed files with 4,722 additions and 149 deletions.
174 changes: 167 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,15 +1,175 @@
# Ignore all compiled files
__pycache__
*.pyc
*.o
*.mod

# Ignore exec folder
exec/

# Ignore sorc folders from externals
sorc/logs/
sorc/fv3gfs.fd/
sorc/gsi.fd/
sorc/ufs_utils.fd/
sorc/gfs_wafs.fd/
sorc/verif-global.fd/
# Ignore fix directory symlinks
fix/0readme
fix/fix_*
fix/gdas/
fix/wafs

# Ignore sorc and logs folders from externals
sorc/*log
sorc/logs
sorc/fv3gfs.fd
sorc/fv3gfs_ccpp_chem.fd
sorc/gfs_post.fd
sorc/gsi.fd
sorc/ufs_utils.fd
sorc/gfs_wafs.fd
sorc/verif-global.fd
sorc/prepchem_NC.fd

# Ignore sorc symlinks
sorc/calc_analysis.fd
sorc/calc_increment_ens.fd
sorc/calc_increment_ens_ncio.fd
sorc/chgres_cube.fd
sorc/emcsfc_ice_blend.fd
sorc/emcsfc_snow2mdl.fd
sorc/filter_topo.fd
sorc/fregrid.fd
sorc/gdas2gldas.fd
sorc/getsfcensmeanp.fd
sorc/getsigensmeanp_smooth.fd
sorc/getsigensstatp.fd
sorc/gfs_ncep_post.fd
sorc/gldas.fd
sorc/gldas2gdas.fd
sorc/gldas_forcing.fd
sorc/gldas_model.fd
sorc/gldas_post.fd
sorc/gldas_rst.fd
sorc/global_chgres.fd
sorc/global_cycle.fd
sorc/global_enkf.fd
sorc/global_gsi.fd
sorc/interp_inc.fd
sorc/make_hgrid.fd
sorc/make_solo_mosaic.fd
sorc/mkgfsnemsioctl.fd
sorc/nemsio_chgdate.fd
sorc/nemsio_get.fd
sorc/nemsio_read.fd
sorc/nst_tf_chg.fd
sorc/orog.fd
sorc/oznmon_horiz.fd
sorc/oznmon_time.fd
sorc/radmon_angle.fd
sorc/radmon_bcoef.fd
sorc/radmon_bcor.fd
sorc/radmon_time.fd
sorc/recentersigp.fd
sorc/shave.fd
sorc/wafs_awc_wafavn.fd
sorc/wafs_blending.fd
sorc/wafs_cnvgrib2.fd
sorc/wafs_gcip.fd
sorc/wafs_makewafs.fd
sorc/wafs_setmissing.fd

# Ignore parm file symlinks
parm/config/config.base
parm/gldas
parm/mon
parm/post
parm/wafs

# Ignore scripts from externals
jobs/JGDAS_ENKF_CHGRES
jobs/JGDAS_ENKF_FCST
jobs/JGDAS_ENKF_POST
jobs/JGDAS_ENKF_RECENTER
jobs/JGDAS_ENKF_SURFACE
jobs/JGDAS_GLDAS
jobs/JGDAS_VERFOZN
jobs/JGDAS_VERFRAD
jobs/JGDAS_VMINMON
jobs/JGFS_VMINMON
jobs/JGFS_WAFS
jobs/JGFS_WAFS_BLENDING
jobs/JGFS_WAFS_GCIP
jobs/JGFS_WAFS_GRIB2
jobs/JGLOBAL_ANALCALC
jobs/JGLOBAL_ANALDIAG
jobs/JGLOBAL_ANALYSIS
jobs/JGLOBAL_ENKF_ANALDIAG
jobs/JGLOBAL_ENKF_INNOVATE_OBS
jobs/JGLOBAL_ENKF_SELECT_OBS
jobs/JGLOBAL_ENKF_UPDATE
jobs/JGLOBAL_NCEPPOST
jobs/JGLOBAL_POST_MANAGER
scripts/exemcsfc_global_sfc_prep.sh.ecf
scripts/exgdas_gldas.sh.ecf
scripts/exgdas_nceppost.sh.ecf
scripts/exgdas_vrfminmon.sh.ecf
scripts/exgdas_vrfyozn.sh.ecf
scripts/exgdas_vrfyrad.sh.ecf
scripts/exgfs_nceppost.sh.ecf
scripts/exgfs_vrfminmon.sh.ecf
scripts/exgfs_wafs_blending.sh.ecf
scripts/exgfs_wafs_gcip.sh.ecf
scripts/exgfs_wafs_grib.sh.ecf
scripts/exgfs_wafs_grib2.sh.ecf
scripts/exglobal_analcalc_fv3gfs.sh.ecf
scripts/exglobal_analdiag_fv3gfs.sh.ecf
scripts/exglobal_analysis_fv3gfs.sh.ecf
scripts/exglobal_enkf_chgres_fv3gfs.sh.ecf
scripts/exglobal_enkf_fcst_fv3gfs.sh.ecf
scripts/exglobal_enkf_innovate_obs_fv3gfs.sh.ecf
scripts/exglobal_enkf_post_fv3gfs.sh.ecf
scripts/exglobal_enkf_recenter_fv3gfs.sh.ecf
scripts/exglobal_enkf_surface_fv3gfs.sh.ecf
scripts/exglobal_enkf_update_fv3gfs.sh.ecf
scripts/exglobal_innovate_obs_fv3gfs.sh.ecf
scripts/exglobal_pmgr.sh.ecf
ush/calcanl_gfs.py
ush/calcinc_gfs.py
ush/emcsfc_ice_blend.sh
ush/emcsfc_snow.sh
ush/fix_precip.sh
ush/fv3gfs_chgres.sh
ush/fv3gfs_downstream_nems.sh
ush/fv3gfs_driver_grid.sh
ush/fv3gfs_dwn_nems.sh
ush/fv3gfs_filter_topo.sh
ush/fv3gfs_make_grid.sh
ush/fv3gfs_make_orog.sh
ush/getncdimlen
ush/gfs_nceppost.sh
ush/gfs_transfer.sh
ush/gldas_archive.sh
ush/gldas_forcing.sh
ush/gldas_get_data.sh
ush/gldas_liscrd.sh
ush/gldas_post.sh
ush/gldas_process_data.sh
ush/global_chgres.sh
ush/global_chgres_driver.sh
ush/global_cycle.sh
ush/global_cycle_driver.sh
ush/gsi_utils.py
ush/link_crtm_fix.sh
ush/minmon_xtrct_costs.pl
ush/minmon_xtrct_gnorms.pl
ush/minmon_xtrct_reduct.pl
ush/mkwfsgbl.sh
ush/mod_icec.sh
ush/ozn_xtrct.sh
ush/radmon_ck_stdout.sh
ush/radmon_err_rpt.sh
ush/radmon_verf_angle.sh
ush/radmon_verf_bcoef.sh
ush/radmon_verf_bcor.sh
ush/radmon_verf_time.sh
ush/trim_rh.sh
ush/wafs_blending.sh
ush/wafs_intdsk.sh
util/sub_slurm
util/sub_wcoss_c
util/sub_wcoss_d
126 changes: 126 additions & 0 deletions FV3GFSwfm/rt_ccpp-chem/config.anal
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
#!/bin/ksh -x

########## config.anal ##########
# Analysis specific

echo "BEGIN: config.anal"

# Get task specific resources
. $EXPDIR/config.resources anal

if [ $DONST = "YES" ]; then
. $EXPDIR/config.nsst
fi

if [[ "$CDUMP" = "gfs" ]] ; then
export USE_RADSTAT="NO" # This can be only used when bias correction is not-zero.
export GENDIAG="NO"
export SETUP='diag_rad=.false.,diag_pcp=.false.,diag_conv=.false.,diag_ozone=.false.,write_diag(3)=.false.,niter(2)=100,'
export DIAG_TARBALL="NO"
fi

export ANALYSISSH="$HOMEgsi/scripts/exglobal_analysis_fv3gfs.sh.ecf"
export npe_gsi=$npe_anal

# Set parameters specific to L127
if [ $LEVS = "128" ]; then
export GRIDOPTS="nlayers(63)=1,nlayers(64)=1,"
export SETUP="gpstop=55,nsig_ext=56,$SETUP"
fi

# Set namelist option for LETKF
export lobsdiag_forenkf=".false." # anal does not need to write out jacobians
# set to .true. in config.eobs and config.eupd

if [ $OUTPUT_FILE = "nemsio" ]; then
export DO_CALC_INCREMENT="YES"
export DO_CALC_ANALYSIS="NO"
fi

# Do not process the following datasets
export GSNDBF=${GSNDBF:-/dev/null}
export AMSREBF=${AMSREBF:-/dev/null}
export SSMITBF=${SSMITBF:-/dev/null}
export AMSR2BF=${AMSR2BF:-/dev/null}


# Use experimental dumps in GFS v16 parallels
export ABIBF="/dev/null"
if [[ "$CDATE" -ge "2019022800" ]] ; then
export ABIBF="$DMPDIR/${CDUMP}x.${PDY}/${cyc}/${CDUMP}.t${cyc}z.gsrcsr.tm00.bufr_d"
if [[ "$CDATE" -ge "2019111000" && "$CDATE" -le "2020052612" ]]; then
export ABIBF="$DMPDIR/${CDUMP}y.${PDY}/${cyc}/${CDUMP}.t${cyc}z.gsrcsr.tm00.bufr_d"
fi
fi

export AHIBF="/dev/null"
if [[ "$CDATE" -ge "2019042300" ]]; then
export AHIBF="$DMPDIR/${CDUMP}x.${PDY}/${cyc}/${CDUMP}.t${cyc}z.ahicsr.tm00.bufr_d"
fi


# Adjust data usage for GFS v16 parallels
#
# NOTE: Remember to set PRVT in config.prep as OBERROR is set below
#
# Set default values
export CONVINFO=$FIXgsi/global_convinfo.txt
export OZINFO=$FIXgsi/global_ozinfo.txt
export SATINFO=$FIXgsi/global_satinfo.txt
export OBERROR=$FIXgsi/prepobs_errtable.global


# Set convinfo and prepobs.errtable.global for start of GFS v16 parallels
if [[ "$CDATE" -ge "2019021900" && "$CDATE" -lt "2019110706" ]]; then
export CONVINFO=$FIXgsi/gfsv16_historical/global_convinfo.txt.2019021900
export OBERROR=$FIXgsi/gfsv16_historical/prepobs_errtable.global.2019021900
fi

# Place GOES-15 AMVs in monitor, assimilate GOES-17 AMVs, assimilate KOMPSAT-5 gps
if [[ "$CDATE" -ge "2019110706" && "$CDATE" -lt "2020040718" ]]; then
export CONVINFO=$FIXgsi/gfsv16_historical/global_convinfo.txt.2019110706
export OBERROR=$FIXgsi/gfsv16_historical/prepobs_errtable.global.2019110706
fi

# Assimilate 135 (T) & 235 (uv) Canadian AMDAR observations
if [[ "$CDATE" -ge "2020040718" && "$CDATE" -lt "2020052612" ]]; then
export CONVINFO=$FIXgsi/gfsv16_historical/global_convinfo.txt.2020040718
fi

# NOTE:
# As of 2020052612, gfsv16_historical/global_convinfo.txt.2020052612 is
# identical to ../global_convinfo.txt. Thus, the logic below is not
# needed at this time.
# Assimilate COSMIC-2 GPS
##if [[ "$CDATE" -ge "2020052612" && "$CDATE" -lt "YYYYMMDDHH" ]]; then
## export CONVINFO=$FIXgsi/gfsv16_historical/global_convinfo.txt.2020052612
##fi


# Turn off assmilation of OMPS during period of bad data
if [[ "$CDATE" -ge "2020011600" && "$CDATE" -lt "2020011806" ]]; then
export OZINFO=$FIXgsi/gfsv16_historical/global_ozinfo.txt.2020011600
fi


# Set satinfo for start of GFS v16 parallels
if [[ "$CDATE" -ge "2019021900" && "$CDATE" -lt "2019110706" ]]; then
export SATINFO=$FIXgsi/gfsv16_historical/global_satinfo.txt.2019021900
fi

# Turn on assimilation of Metop-C AMSUA and MHS
if [[ "$CDATE" -ge "2019110706" && "$CDATE" -lt "2020022012" ]]; then
export SATINFO=$FIXgsi/gfsv16_historical/global_satinfo.txt.2019110706
fi

# NOTE:
# As of 2020022012, gfsv16_historical/global_satinfo.txt.2020022012 is
# identical to ../global_satinfo.txt. Thus, the logic below is not
# needed at this time
#
# Turn off assmilation of all Metop-A MHS
## if [[ "$CDATE" -ge "2020022012" && "$CDATE" -lt "YYYYMMDDHH" ]]; then
## export SATINFO=$FIXgsi/gfsv16_historical/global_satinfo.txt.2020022012
## fi

echo "END: config.anal"
13 changes: 13 additions & 0 deletions FV3GFSwfm/rt_ccpp-chem/config.analcalc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/ksh -x

########## config.analcalc ##########
# GFS post-anal specific (non-diag)

echo "BEGIN: config.analcalc"

# Get task specific resources
. $EXPDIR/config.resources analcalc

export ANALCALCSH=$HOMEgsi/scripts/exglobal_analcalc_fv3gfs.sh.ecf

echo "END: config.analcalc"
13 changes: 13 additions & 0 deletions FV3GFSwfm/rt_ccpp-chem/config.analdiag
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/ksh -x

########## config.analdiag ##########
# GFS post-anal specific (diag)

echo "BEGIN: config.analdiag"

# Get task specific resources
. $EXPDIR/config.resources analdiag

export ANALDIAGSH=$HOMEgsi/scripts/exglobal_analdiag_fv3gfs.sh.ecf

echo "END: config.analdiag"
25 changes: 25 additions & 0 deletions FV3GFSwfm/rt_ccpp-chem/config.arch
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#!/bin/ksh -x

########## config.arch ##########
# Archive specific

echo "BEGIN: config.arch"

# Get task specific resources
. $EXPDIR/config.resources arch

#--online archive of nemsio files for fit2obs verification
export FITSARC="YES"
export FHMAX_FITS=132
[[ "$FHMAX_FITS" -gt "$FHMAX_GFS" ]] && export FHMAX_FITS=$FHMAX_GFS

#--starting and ending hours of previous cycles to be removed from rotating directory
export RMOLDSTD=144
export RMOLDEND=24

#--keep forcing data for running gldas step
if [[ "$DO_GLDAS" == "YES" && "$CDUMP" == "gdas" ]]; then
[[ $RMOLDSTD -lt 144 ]] && export RMOLDSTD=144
fi

echo "END: config.arch"
17 changes: 17 additions & 0 deletions FV3GFSwfm/rt_ccpp-chem/config.awips
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#!/bin/ksh -x

########## config.awips ##########
# GFS awips step specific

echo "BEGIN: config.awips"

# Get task specific resources
. $EXPDIR/config.resources awips

export AWIPS20SH=$HOMEgfs/jobs/JGFS_AWIPS_20KM_1P0DEG
export AWIPSG2SH=$HOMEgfs/jobs/JGFS_AWIPS_G2

# No. of concurrent awips jobs
export NAWIPSGRP=42

echo "END: config.awips"
Loading

0 comments on commit 318b0b7

Please sign in to comment.