#!/bin/bash -e # ============================================================================= # # NAME: config.evs.prod.stats.cam.atmos.precip.namnest # CONTRIBUTOR(S): Marcel Caron, marcel.caron@noaa.gov, NOAA/NWS/NCEP/EMC-VPPPGB # PURPOSE: Set up configurations to run EVS NAM Nest Precipitation - Statistics # DEPENDENCIES: $HOMEevs/scripts/stats/cam/exevs_namnest_precip_stats.sh # # ============================================================================= echo "BEGIN: $(basename ${BASH_SOURCE[0]})" # METplus Settings export MET_PLUS_OUT=${DATA}/${VERIF_CASE}/METplus_output export MET_CONFIG_OVERRIDES="" # Restart Settings export RESTART_DIR="${COMOUTsmall}/restart/c${vhr}" export COMPLETED_JOBS_FILE="completed_jobs.txt" # Time Settings export FHR_GROUP_LIST="FULL" export FHR_END_FULL="60" export FHR_INCR_FULL="6" export FHR_END_SHORT="60" export FHR_INCR_SHORT="6" # Model/Obs Settings export COMINfcst=${COMINnam} export OBS_ACC="01" # Additional Verification Settings if [ "$ACC" = "01" ]; then export MODEL_ACC="01" export BUCKET_INTERVAL="3" export FCST_LEV="A1" export FCST_THRESH="ge0.254,ge1.27,ge2.54,ge6.35,ge12.7,ge19.05,ge25.4" if [ "$NEST" = "conus" ]; then export OBS_LEV="A1" elif [ "$NEST" = "ak" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "hi" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "pr" ]; then export OBS_LEV="Z0" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi export OBS_THRESH="ge0.254,ge1.27,ge2.54,ge6.35,ge12.7,ge19.05,ge25.4" if [[ "01 04 07 10 13 16 19 22" =~ (^|[[:space:]])$VHOUR($|[[:space:]]) ]]; then export MODEL_PCP_COMBINE_METHOD="ADD" export MODEL_PCP_COMBINE_COMMAND="" else export MODEL_PCP_COMBINE_METHOD="USER_DEFINED" if [[ "02 05 08 11 14 17 20 23" =~ (^|[[:space:]])$VHOUR($|[[:space:]]) ]]; then if [ "$NEST" = "conus" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.conusnest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.conusnest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A01\\\";'" elif [ "$NEST" = "ak" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.alaskanest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.alaskanest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A01\\\";'" elif [ "$NEST" = "hi" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.hawaiinest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.hawaiinest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A01\\\";'" elif [ "$NEST" = "pr" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.priconest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.priconest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A01\\\";'" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi elif [[ "00 03 06 09 12 15 18 21" =~ (^|[[:space:]])$VHOUR($|[[:space:]]) ]]; then if [ "$NEST" = "conus" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.conusnest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A03\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.conusnest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";'" elif [ "$NEST" = "ak" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.alaskanest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A03\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.alaskanest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";'" elif [ "$NEST" = "hi" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.hawaiinest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A03\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.hawaiinest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";'" elif [ "$NEST" = "pr" ]; then export MODEL_PCP_COMBINE_COMMAND="-subtract ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.priconest.hiresf{lead?fmt=%2H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A03\\\";' ${COMINfcst}/nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%H}z.priconest.hiresf{lead?fmt=%2H?shift=-1H}.tm00.grib2 'name=\\\"APCP\\\"; level=\\\"A02\\\";'" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi else err_exit "The provided VHOUR, $VHOUR, is not supported for $MODELNAME" fi fi elif [ "$ACC" = "03" ]; then export MODEL_ACC="03" export BUCKET_INTERVAL="3" export FCST_LEV="A3" export FCST_THRESH="ge0.254,ge1.27,ge2.54,ge6.35,ge12.7,ge19.05,ge25.4,ge50.8" if [ "$NEST" = "conus" ]; then export OBS_LEV="A3" elif [ "$NEST" = "ak" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "hi" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "pr" ]; then export OBS_LEV="Z0" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi export OBS_THRESH="ge0.254,ge1.27,ge2.54,ge6.35,ge12.7,ge19.05,ge25.4,ge50.8" export MODEL_PCP_COMBINE_METHOD="ADD" export MODEL_PCP_COMBINE_COMMAND="" elif [ "$ACC" = "24" ]; then export MODEL_ACC="03" export BUCKET_INTERVAL="3" export FCST_LEV="A24" export FCST_THRESH="ge0.254,ge2.54,ge6.35,ge12.7,ge25.4,ge38.1,ge50.8,ge76.2,ge101.6,ge152.4" if [ "$NEST" = "conus" ]; then export OBS_LEV="A24" elif [ "$NEST" = "ak" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "hi" ]; then export OBS_LEV="Z0" elif [ "$NEST" = "pr" ]; then export OBS_LEV="Z0" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi export OBS_THRESH="ge0.254,ge2.54,ge6.35,ge12.7,ge25.4,ge38.1,ge50.8,ge76.2,ge101.6,ge152.4" export MODEL_PCP_COMBINE_METHOD="ADD" export MODEL_PCP_COMBINE_COMMAND="" else err_exit "The provided ACC, $ACC, is not supported for $MODELNAME" fi if [ "$BOOL_NBRHD" = True ]; then export OUTPUT_FLAG_NBRHD="STAT" export OUTPUT_FLAG_CATEG="NONE" export NBRHD_WIDTHS="1,3,5,7,9,11,13,17,21,25,31,35,39,43,47,53,57,63" if [ "$NEST" = "conus" ]; then export VERIF_TYPE="ccpa" export COMINobs=${EVSINccpa} export OBSNAME="ccpa" export MIN_IHOUR="00" export GRID="G240" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.conusnest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Bukovsky_G240_CONUS.nc, ${FIXevs}/masks/Bukovsky_G240_CONUS_East.nc, ${FIXevs}/masks/Bukovsky_G240_CONUS_West.nc, ${FIXevs}/masks/Bukovsky_G240_CONUS_Central.nc, ${FIXevs}/masks/Bukovsky_G240_CONUS_South.nc" elif [ "$NEST" = "ak" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G091" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.alaskanest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Alaska_G091.nc" elif [ "$NEST" = "hi" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G196" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.hawaiinest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Hawaii_G196.nc" elif [ "$NEST" = "pr" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G194" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.priconest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Puerto_Rico_G194.nc" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi else export OUTPUT_FLAG_NBRHD="NONE" export OUTPUT_FLAG_CATEG="STAT" export NBRHD_WIDTHS="1" if [ "$NEST" = "conus" ]; then export VERIF_TYPE="ccpa" export COMINobs=${EVSINccpa} export OBSNAME="ccpa" export MIN_IHOUR="00" export GRID="G212" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.conusnest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Bukovsky_G212_CONUS.nc, ${FIXevs}/masks/Bukovsky_G212_CONUS_East.nc, ${FIXevs}/masks/Bukovsky_G212_CONUS_West.nc, ${FIXevs}/masks/Bukovsky_G212_CONUS_Central.nc, ${FIXevs}/masks/Bukovsky_G212_CONUS_South.nc" elif [ "$NEST" = "ak" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G216" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.alaskanest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Alaska_G216.nc" elif [ "$NEST" = "hi" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G196" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.hawaiinest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Hawaii_G196.nc" elif [ "$NEST" = "pr" ]; then export VERIF_TYPE="mrms" export COMINobs=${EVSINmrms} export OBSNAME="mrms" export MIN_IHOUR="00" export GRID="G194" export MODEL_INPUT_TEMPLATE="nam.{init?fmt=%Y%m%d}/nam.t{init?fmt=%2H}z.priconest.hiresf{lead?fmt=%2H}.tm00.grib2" export MASK_POLY_LIST="${FIXevs}/masks/Puerto_Rico_G194.nc" else err_exit "The provided NEST, $NEST, is not supported for $MODELNAME" fi fi echo "END: $(basename ${BASH_SOURCE[0]})"