Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

additional changes to run in realtime #20

Merged
merged 2 commits into from
Dec 8, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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