forked from NOAA-EMC/GSI
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
a3f1478
commit 49e7aec
Showing
1 changed file
with
245 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,245 @@ | ||
#!/bin/sh | ||
# It is now possible to run all regression tests (except RTMA) using the hybrid ensemble option with | ||
# internally generated random ensemble perturbations. No script changes are required. | ||
# To run with hybrid ensemble option on, change HYBENS_GLOBAL and/or HYBENS_REGIONAL from "false" to "true". | ||
# These are located at the end of this script. | ||
|
||
if [ "$#" = 7 ] ; then | ||
export basedir=$1 | ||
export builddir=$2 | ||
export gsisrc=$3 | ||
export gsiexec_updat=$4 | ||
export enkfexec_updat=$5 | ||
export gsiexec_contrl=$6 | ||
export enkfexec_contrl=$7 | ||
export fixgsi="$gsisrc/fix" | ||
export scripts="$gsisrc/regression" | ||
export ush="$gsisrc/ush" | ||
export cmaketest="true" | ||
export clean="false" | ||
dir_root="${builddir%/*}" | ||
export ptmpName="${dir_root##*/}" | ||
else | ||
# Name of the branch being tested | ||
updat="mine" | ||
contrl="develop" | ||
export cmaketest="false" | ||
export clean="false" | ||
export ptmpName="" | ||
fi | ||
|
||
# Determine the machine | ||
if [[ -d /glade ]]; then # Cheyenne | ||
export machine="Cheyenne" | ||
elif [[ -d /scratch1 ]]; then # Hera | ||
export machine="Hera" | ||
elif [[ -d /mnt/lfs4 || -d /jetmon || -d /mnt/lfs1 ]]; then # Jet | ||
export machine="Jet" | ||
elif [[ -d /discover ]]; then # NCCS Discover | ||
export machine="Discover" | ||
elif [[ -d /sw/gaea ]]; then # Gaea | ||
export machine="Gaea" | ||
elif [[ -d /data/prod ]]; then # S4 | ||
export machine="S4" | ||
elif [[ -d /work ]]; then # Orion | ||
export machine="Orion" | ||
elif [[ -d /lfs/h2 ]]; then # wcoss2 | ||
export machine="wcoss2" | ||
fi | ||
echo "Running Regression Tests on '$machine'"; | ||
|
||
case $machine in | ||
Cheyenne) | ||
export queue="economy" | ||
export noscrub="/glade/scratch/$LOGNAME" | ||
export group="global" | ||
if [[ "$cmaketest" = "false" ]]; then | ||
export basedir="/glade/scratch/$LOGNAME/gsi" | ||
fi | ||
export ptmp="/glade/scratch/$LOGNAME/$ptmpName" | ||
|
||
export casesdir="/glade/p/ral/jntp/tools/CASES" | ||
|
||
export check_resource="no" | ||
export accnt="p48503002" | ||
;; | ||
wcoss2) | ||
export local_or_default="${local_or_default:-/lfs/h2/emc/da/noscrub/$LOGNAME}" | ||
if [ -d $local_or_default ]; then | ||
export noscrub="$local_or_default/noscrub" | ||
elif [ -d /lfs/h2/emc/global/noscrub/$LOGNAME ]; then | ||
export noscrub="/lfs/h2/emc/global/noscrub/$LOGNAME/noscrub" | ||
fi | ||
|
||
export queue="${queue:-dev}" | ||
export group="${group:-global}" | ||
if [[ "$cmaketest" = "false" ]]; then | ||
export basedir="/lfs/h2/emc/da/noscrub/$LOGNAME/gsi" | ||
fi | ||
export ptmp="${ptmp:-/lfs/h2/emc/ptmp/$LOGNAME/$ptmpName}" | ||
|
||
export casesdir="/lfs/h2/emc/da/noscrub/russ.treadon/CASES/regtest" | ||
|
||
export check_resource="no" | ||
export accnt="${accnt:-GFS-DEV}" | ||
;; | ||
Orion) | ||
export local_or_default="${local_or_default:-/work/noaa/da/$LOGNAME}" | ||
if [ -d $local_or_default ]; then | ||
export noscrub="$local_or_default/noscrub" | ||
elif [ -d /work/noaa/global/$LOGNAME ]; then | ||
export noscrub="/work/noaa/global/$LOGNAME/noscrub" | ||
fi | ||
|
||
export queue="${queue:-batch}" | ||
export group="${group:-global}" | ||
if [[ "$cmaketest" = "false" ]]; then | ||
export basedir="/work/noaa/da/$LOGNAME/gsi" | ||
fi | ||
export ptmp="${ptmp:-/work/noaa/stmp/$LOGNAME/$ptmpName}" | ||
|
||
export casesdir="/work/noaa/da/rtreadon/CASES/regtest" | ||
|
||
export check_resource="no" | ||
export accnt="${accnt:-da-cpu}" | ||
;; | ||
Hera) | ||
|
||
export local_or_default="${local_or_default:-/scratch1/NCEPDEV/da/$LOGNAME}" | ||
if [ -d $local_or_default ]; then | ||
export noscrub="$local_or_default/noscrub" | ||
elif [ -d /scratch1/NCEPDEV/global/$LOGNAME ]; then | ||
export noscrub="/scratch1/NCEPDEV/global/$LOGNAME/noscrub" | ||
elif [ -d /scratch2/BMC/gsienkf/$LOGNAME ]; then | ||
export noscrub="/scratch2/BMC/gsienkf/$LOGNAME" | ||
fi | ||
|
||
export group="${group:-global}" | ||
export queue="${queue:-batch}" | ||
if [[ "$cmaketest" = "false" ]]; then | ||
export basedir="/scratch1/NCEPDEV/da/$LOGNAME/git/gsi" | ||
fi | ||
|
||
export ptmp="${ptmp:-/scratch1/NCEPDEV/stmp2/$LOGNAME/$ptmpName}" | ||
|
||
export casesdir="/scratch1/NCEPDEV/da/Russ.Treadon/CASES/regtest" | ||
|
||
export check_resource="no" | ||
export accnt="${accnt:-da-cpu}" | ||
|
||
# On Hera, there are no scrubbers to remove old contents from stmp* directories. | ||
# After completion of regression tests, will remove the regression test subdirecories | ||
export clean=".false." | ||
;; | ||
Jet) | ||
|
||
export noscrub=/lfs1/NESDIS/nesdis-rdo2/$LOGNAME/noscrub | ||
export ptmp=/lfs1/NESDIS/nesdis-rdo2/$LOGNAME/ptmp | ||
export casesdir="/lfs1/NESDIS/nesdis-rdo2/David.Huber/save/CASES/regtest" | ||
export check_resource="no" | ||
export accnt="nesdis-rdo2" | ||
|
||
export group="global" | ||
export queue="batch" | ||
if [[ "$cmaketest" = "false" ]]; then | ||
export basedir="/lfs1/NESDIS/nesdis-rdo2/$LOGNAME/save/git/gsi" | ||
fi | ||
|
||
# On Jet, there are no scrubbers to remove old contents from stmp* directories. | ||
# After completion of regression tests, will remove the regression test subdirecories | ||
export clean=".true." | ||
;; | ||
Discover) | ||
if [[ "$cmaketest" = "false" ]]; then | ||
echo "Regression tests on Discover need to be run via ctest" | ||
exit 1 | ||
fi | ||
export ptmp=$basedir | ||
export ptmp=$basedir | ||
export noscrub=$basedir | ||
export casesdir="/discover/nobackup/projects/gmao/obsdev/wrmccart/NCEP_regression/CASES" | ||
export check_resource="no" | ||
export accnt="g0613" | ||
export queue="compute" | ||
export clean=".false." | ||
;; | ||
*) | ||
echo "Regression tests are not setup on '$machine', ABORT!" | ||
exit 1 | ||
;; | ||
esac | ||
|
||
# We are dealing with *which* endian files | ||
export endianness="Big_Endian" | ||
|
||
# Paths to tmpdir and savedir base on ptmp | ||
export tmpdir="$ptmp" | ||
export savdir="$ptmp" | ||
|
||
# Variables with the same values are defined below. | ||
|
||
# Default resolution | ||
export JCAP="62" | ||
|
||
# Case Study analysis dates | ||
export global_adate="2022110900" | ||
export rtma_adate="2020022420" | ||
export hwrf_nmm_adate="2012102812" | ||
export fv3_netcdf_adate="2017030100" | ||
export rrfs_3denvar_glbens_adate="2021072518" | ||
|
||
# Paths for canned case data. | ||
export global_data="$casesdir/gfs/prod" | ||
export rtma_obs="$casesdir/regional/rtma_binary/$rtma_adate" | ||
export rtma_ges="$casesdir/regional/rtma_binary/$rtma_adate" | ||
export hwrf_nmm_obs="$casesdir/regional/hwrf_nmm/$hwrf_nmm_adate" | ||
export hwrf_nmm_ges="$casesdir/regional/hwrf_nmm/$hwrf_nmm_adate" | ||
export fv3_netcdf_obs="$casesdir/regional/fv3_netcdf/$fv3_netcdf_adate" | ||
export fv3_netcdf_ges="$casesdir/regional/fv3_netcdf/$fv3_netcdf_adate" | ||
export rrfs_3denvar_glbens_obs="$casesdir/regional/rrfs/$rrfs_3denvar_glbens_adate/obs" | ||
export rrfs_3denvar_glbens_ges="$casesdir/regional/rrfs/$rrfs_3denvar_glbens_adate/ges" | ||
export rrfs_3denvar_glbens_ens="$casesdir/regional/rrfs/$rrfs_3denvar_glbens_adate/ens" | ||
|
||
# Define type of GPSRO data to be assimilated (refractivity or bending angle) | ||
export gps_dtype="gps_bnd" | ||
|
||
# Regression vfydir | ||
export regression_vfydir="$noscrub/regression" | ||
|
||
# Define debug variable - If you want to run the debug tests, set this variable to .true. Default is .false. | ||
export debug=".false." | ||
|
||
# Define parameters for global_3dvar, global_4dvar, global_4denvar | ||
export minimization="lanczos" # If "lanczos", use sqrtb lanczos minimization algorithm. Otherwise use "pcgsoi". | ||
export nhr_obsbin="6" # Time window for observation binning. Use "6" for 3d4dvar test. Otherwise use "1" | ||
|
||
# Define parameters for hybrid ensemble option test. | ||
# (default is set to false, so no hybrid ensemble option test.) | ||
|
||
export HYBENS_GLOBAL=".false." | ||
export ENSEMBLE_SIZE_GLOBAL="10" | ||
export HYBENS_UV_GLOBAL=".true." | ||
export BETA_S0_GLOBAL="0.5" | ||
export HYBENS_HOR_SCALE_GLOBAL="1500" | ||
export HYBENS_VER_SCALE_GLOBAL="20" | ||
export GENERATE_ENS_GLOBAL=".true." | ||
export HYBENS_ANISO_GLOBAL=".false." | ||
|
||
export HYBENS_REGIONAL=".false." | ||
export ENSEMBLE_SIZE_REGIONAL="10" | ||
export HYBENS_UV_REGIONAL=".true." | ||
export BETA_S0_REGIONAL="0.5" | ||
export HYBENS_HOR_SCALE_REGIONAL="1500" | ||
export HYBENS_VER_SCALE_REGIONAL="20" | ||
export GENERATE_ENS_REGIONAL=".true." | ||
export HYBENS_ANISO_REGIONAL=".false." | ||
export NLON_ENS_REGIONAL="0" | ||
export NLAT_ENS_REGIONAL="0" | ||
export JCAP_ENS_REGIONAL="0" | ||
export JCAP_ENS_TEST_REGIONAL="0" | ||
|
||
# Toggle EnKF update code bias correction flag: lupd_satbiasc | ||
# TRUE = compute and update radiance bias correction | ||
# FALSE = do NOT compute or update radiance bias correction | ||
# default is FALSE (as done in NCEP operations) | ||
export lupd_satbiasc=".false." |