Skip to content

Commit

Permalink
Merge branch 'develop' into sync_cice_2025-01
Browse files Browse the repository at this point in the history
  • Loading branch information
NickSzapiro-NOAA authored Feb 5, 2025
2 parents 0f5f74a + ee3d52d commit 02818c1
Show file tree
Hide file tree
Showing 45 changed files with 3,019 additions and 3,337 deletions.
11 changes: 11 additions & 0 deletions .cicd/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,17 @@ def generateStage(nodeLabel) {
catch(err) {
echo "Error: Post Results from ${nodeLabel}"
}
sh '''
export machine=${NODE_NAME}
export CHANGE_ID=${CHANGE_ID}
GIT_OWNER=$(echo $GIT_URL | cut -d '/' -f4)
GIT_REPO_NAME=$(echo $GIT_URL | cut -d '/' -f5 | cut -d '.' -f1)
set +x
echo "Testing concluded...removing label ${label} for ${machine} from ${GIT_URL}"
echo "https://api.github.com/repos/${GIT_OWNER}/${GIT_REPO_NAME}/issues/${CHANGE_ID}/labels /${machine}-${label}"
curl --silent -X DELETE -H "Accept: application/vnd.github.v3+json" -H "Authorization: Bearer ${GITHUB_TOKEN}" https://api.github.com/repos/${GIT_OWNER}/${GIT_REPO_NAME}/issues/${CHANGE_ID}/labels/{$machine-RT,$machine-BL}
'''
}
}
}
Expand Down
13 changes: 0 additions & 13 deletions .cicd/scripts/post_test_results.sh
Original file line number Diff line number Diff line change
Expand Up @@ -41,19 +41,6 @@ function post_test() {
GIT_URL=${GIT_URL:-"ufs-weather-model"}
CHANGE_ID=${CHANGE_ID:-"develop"}

GIT_OWNER=$(echo ${GIT_URL} | cut -d '/' -f4)
GIT_REPO_NAME=$(echo ${GIT_URL} | cut -d '/' -f5 | cut -d '.' -f1)

set +x
echo "GIT_URL=${GIT_URL}"
echo "CHANGE_ID=${CHANGE_ID}"
echo "GIT_OWNER=${GIT_OWNER} GIT_REPO_NAME=${GIT_REPO_NAME}"

echo "Testing concluded...removing label ${label} for ${machine} from ${GIT_URL}"
echo "https://api.github.com/repos/${GIT_OWNER}/${GIT_REPO_NAME}/issues/${CHANGE_ID}/labels /${machine}-${label}"
curl --silent -X DELETE -H "Accept: application/vnd.github.v3+json" -H "Authorization: Bearer ${GITHUB_TOKEN}" https://api.github.com/repos/${GIT_OWNER}/${GIT_REPO_NAME}/issues/${CHANGE_ID}/labels/${machine}-${label}
set -x

git config user.email "[email protected]"
git config user.name "epic-cicd-jenkins"

Expand Down
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -79,3 +79,6 @@ fail_compile_*
fail_test_*
tests/run_dir
tests/logs/log_*
compile_0_time.log
tests/modules.ufs_model.lua
tests/ufs_common.lua
2 changes: 1 addition & 1 deletion CMEPS-interface/CMEPS
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules/Modules)
###############################################################################

# Valid applications and choices
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATMWM ATML ATMF LND LND-LM4 S2S S2SA S2SW S2SWA S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS)
list(APPEND VALID_APPS ATM ATMAERO ATMAQ ATMW ATMWM ATML ATMF LND LND-LM4 S2S S2SL S2SA S2SW S2SWA S2SWL S2SWAL ATM_DS2S ATM_DS2S-PCICE HAFS HAFSW HAFS-MOM6 HAFS-MOM6W HAFS-ALL NG-GODAS)
set(APP NONE CACHE BOOL "Application Name")
if(NOT (APP IN_LIST VALID_APPS))
message(FATAL_ERROR "${APP} is not a valid application.\nValid Applications are: ${VALID_APPS}")
Expand Down Expand Up @@ -157,7 +157,7 @@ if(FMS)
find_package(FMS 2022.04 REQUIRED COMPONENTS R4 R8)
if(APP MATCHES "^(HAFSW)$")
add_library(fms ALIAS FMS::fms_r4)
elseif (APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL|ATM_DS2S|ATM_DS2S-PCICE|NG-GODAS|HAFS-MOM6|HAFS-MOM6W)$")
elseif (APP MATCHES "^(S2S|S2SA|S2SL|S2SW|S2SWL|S2SWA|S2SWAL|ATM_DS2S|ATM_DS2S-PCICE|NG-GODAS|HAFS-MOM6|HAFS-MOM6W)$")
add_library(fms ALIAS FMS::fms_r8)
endif()
if(APP MATCHES "^(ATM|ATMAERO|ATMAQ|ATMWM|ATMW|ATML|ATMF|ATML-LM4|LND-LM4|HAFS|HAFS-ALL)$")
Expand Down
2 changes: 1 addition & 1 deletion WW3
Submodule WW3 updated 1 files
+14 −3 model/src/w3initmd.F90
6 changes: 3 additions & 3 deletions cmake/configure_apps.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ if(APP MATCHES "^(NG-GODAS)$")
message("Configuring UFS app in (CDEPS) Data Atmosphere mode")
endif()

if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$")
if(APP MATCHES "^(S2S|S2SL|S2SA|S2SW|S2SWL|S2SWA|S2SWAL)$")
set(APP_MSG "Configuring UFS app in S2S")
set(CMEPS ON CACHE BOOL "Enable CMEPS" FORCE)
set(FMS ON CACHE BOOL "Enable FMS" FORCE)
Expand All @@ -61,15 +61,15 @@ if(APP MATCHES "^(S2S|S2SA|S2SW|S2SWA|S2SWAL)$")
set(CICE6 ON CACHE BOOL "Enable CICE6" FORCE)
set(CDEPS ON CACHE BOOL "Enable CDEPS" FORCE)
set(STOCH_PHYS ON CACHE BOOL "Enable Stochastic Physics" FORCE)
if(APP MATCHES "^(S2SW|S2SWA|S2SWAL)")
if(APP MATCHES "^(S2SW|S2SWL|S2SWA|S2SWAL)")
set(WW3 ON CACHE BOOL "Enable WAVEWATCH III" FORCE)
string(CONCAT APP_MSG ${APP_MSG} " with Waves")
endif()
if(APP MATCHES "^(S2SA|S2SWA|S2SWAL)")
set(UFS_GOCART ON CACHE BOOL "Enable GOCART" FORCE)
string(CONCAT APP_MSG ${APP_MSG} " with Aerosols")
endif()
if(APP MATCHES "^S2SWAL")
if(APP MATCHES "^(S2SL|S2SWL|S2SWAL)")
set(NOAHMP ON CACHE BOOL "Enable NOAHMP" FORCE)
endif()
message("${APP_MSG} mode")
Expand Down
2 changes: 1 addition & 1 deletion tests/bl_date.conf
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export BL_DATE=20250107
export BL_DATE=20250129
13 changes: 13 additions & 0 deletions tests/default_vars.sh
Original file line number Diff line number Diff line change
Expand Up @@ -566,6 +566,7 @@ export OUTPUT_HISTORY=.true.
export HISTORY_FILE_ON_NATIVE_GRID=.false.
export WRITE_DOPOST=.false.
export NUM_FILES=2
export FV3ATM_OUTPUT_DIR="./"
export FILENAME_BASE="'atm' 'sfc'"
export OUTPUT_GRID="'cubed_sphere_grid'"
export OUTPUT_FILE="'netcdf'"
Expand Down Expand Up @@ -1061,6 +1062,18 @@ export FNSNOC="'global_snoclim.1.875.grb'"
export FNZORC="'igbp'"
export FNAISC="'IMS-NIC.blended.ice.monthly.clim.grb'"
export LDEBUG=.false.

# Land IAU defaults
export DO_LAND_IAU=.false.
export LAND_IAU_FHRS=3,6,9
export LAND_IAU_DELHRS=6
export LAND_IAU_INC_FILES="'sfc_inc',''"
export LSOIL_INCR=3
export LAND_IAU_FILTER_INC=.false.
export LAND_IAU_UPD_STC=.true.
export LAND_IAU_UPD_SLC=.true.
export LAND_IAU_DP_STCSMC_ADJ=.true.
export LAND_IAU_MIN_T_INC=0.0001
}

# Add section for tiled grid namelist
Expand Down
6 changes: 1 addition & 5 deletions tests/fv3_conf/control_run.IN
Original file line number Diff line number Diff line change
Expand Up @@ -93,11 +93,7 @@ else
fi

if [ $TILEDFIX = .true. ]; then
if [ $CPLLND == .true. ]; then
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc INPUT/.
else
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc .
fi
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc .
cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb .
Expand Down
1 change: 1 addition & 0 deletions tests/fv3_conf/fv3_slurm.IN_hercules
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ elif [[ @[RT_COMPILER] == gnu ]]; then
export MV2_HOMOGENEOUS_CLUSTER=1
export MV2_USE_ALIGNED_ALLOC=1
fi
export FI_MLX_INJECT_LIMIT=0

# Avoid job errors because of filesystem synchronization delays
sync && sleep 1
Expand Down
1 change: 1 addition & 0 deletions tests/fv3_conf/fv3_slurm.IN_orion
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export OMP_NUM_THREADS=@[THRD]
#export PSM_SHAREDCONTEXTS=1
export ESMF_RUNTIME_PROFILE=ON
export ESMF_RUNTIME_PROFILE_OUTPUT="SUMMARY"
export FI_MLX_INJECT_LIMIT=0

# Avoid job errors because of filesystem synchronization delays
sync && sleep 1
Expand Down
199 changes: 148 additions & 51 deletions tests/fv3_conf/noahmp_run.IN
Original file line number Diff line number Diff line change
@@ -1,64 +1,161 @@
mkdir -p INPUT RESTART

if [ "$LNDRES" = "C96" ]; then
if [ "$ATMRES" = "C96" ]; then
inputdir=FV3_input_data
elif [ "$LNDRES" = "C48" ]; then
inputdir=FV3_input_data48
elif [ "$LNDRES" = "C192" ]; then
inputdir=FV3_input_data192
elif [ "$LNDRES" = "C384" ]; then
inputdir=FV3_input_data384
elif [ "$LNDRES" = "C768" ]; then
inputdir=FV3_input_data768
else
inputdir=FV3_input_data${ATMRES#C}
fi
echo "inputdir=$inputdir,LNDRES=$LNDRES"
echo "inputdir=$inputdir,ATMRES=$ATMRES"

V2_SFC_FILE=${V2_SFC_FILE:-false}
SUFFIX=${RT_SUFFIX}

if [ $DATM_CDEPS == true ]; then
if [[ $DATM_CDEPS == true ]] || [[ $S2S = false ]]; then
targetdir="./INPUT"
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile2.nc ./${targetdir}/@[LNDRES].initial.tile2.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile3.nc ./${targetdir}/@[LNDRES].initial.tile3.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile4.nc ./${targetdir}/@[LNDRES].initial.tile4.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile5.nc ./${targetdir}/@[LNDRES].initial.tile5.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile6.nc ./${targetdir}/@[LNDRES].initial.tile6.nc
else
if [ "$ATMRES" = "$LNDRES" ]; then
targetdir="./INPUT"
cd ${targetdir}
ln -sf grid_spec.nc @[LNDRES]_mosaic.nc
cd -
else
mkdir -p INPUT/$LNDRES
targetdir="./INPUT/$LNDRES"
fi

if [ $WARM_START = .false. ]; then
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127/sfc_data.tile*.nc ${targetdir}/.
if [ $DATM_CDEPS == true ]; then
# Initial condition
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile1.nc ./${targetdir}/@[LNDRES].initial.tile1.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile2.nc ./${targetdir}/@[LNDRES].initial.tile2.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile3.nc ./${targetdir}/@[LNDRES].initial.tile3.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile4.nc ./${targetdir}/@[LNDRES].initial.tile4.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile5.nc ./${targetdir}/@[LNDRES].initial.tile5.nc
rsync -arv @[INPUTDATA_ROOT]/NOAHMP_IC/$atm_datamode/ufs-land_@[LNDRES]_init_fields.tile6.nc ./${targetdir}/@[LNDRES].initial.tile6.nc

# Fixed files
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES]*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/CPL_FIX/a@[LNDRES]o@[OCNRES]/grid_spec.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[LNDRES]_grid*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc
else
# land restart file
cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/.
# CMEPS restart and pointer files
RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc
cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} .
ls -1 ${RFILE}>rpointer.cpl
# link grid spec file
# Initial condition
if [ $WARM_START = .false. ]; then
# IC
if [ "$V2_SFC_FILE" = "true" ]; then
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/sfc_data*.nc ${targetdir}/.
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_data*.nc ${targetdir}/.
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}_v2_sfc/gfs_ctrl.nc ${targetdir}/.
else
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/sfc_data*.nc ${targetdir}/.
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_data*.nc ${targetdir}/.
cp -r @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/gfs_ctrl*.nc ${targetdir}/.
fi
else
# FV3 related restart files
cp -r ../${DEP_RUN}${SUFFIX}/${targetdir}/* ${targetdir}/.
cp -r ../${DEP_RUN}${SUFFIX}/RESTART/${RESTART_FILE_PREFIX}.* ${targetdir}/.
for RFILE in INPUT/${RESTART_FILE_PREFIX}.*; do
[ -e $RFILE ] || exit 1
RFILE_OLD=$(basename $RFILE)
mv -f $RFILE ${targetdir}/"${RFILE_OLD//${RESTART_FILE_PREFIX}./}"
done
if [[ $IAU_OFFSET == 6 ]] && [[ $FHROT -le 6 ]]; then
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_mx${OCNRES}/fv_increment*.nc INPUT/.
fi
fi

# Fixed files
FNSMCC="global_soilmgldas.statsgo.t1534.3072.1536.grb"
FNMSKH="global_slmask.t1534.3072.1536.grb"
cp @[INPUTDATA_ROOT]/${inputdir}/${FNSMCC} .
cp @[INPUTDATA_ROOT]/${inputdir}/${FNMSKH} .
if [ $TILEDFIX = .true. ]; then
cp @[INPUTDATA_ROOT]/FV3_fix/global_glacier.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/global_maxice.2x2.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/RTGSST.1982.2012.monthly.clim.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/global_snoclim.1.875.grb .
cp @[INPUTDATA_ROOT]/FV3_fix/IMS-NIC.blended.ice.monthly.clim.grb .
fi

cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile1.nc ${targetdir}/oro_data.tile1.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile2.nc ${targetdir}/oro_data.tile2.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile3.nc ${targetdir}/oro_data.tile3.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile4.nc ${targetdir}/oro_data.tile4.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile5.nc ${targetdir}/oro_data.tile5.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/oro_@[ATMRES].mx@[OCNRES].tile6.nc ${targetdir}/oro_data.tile6.nc
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ls* ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT_L127_gfsv17/oro_data_ss* ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[ATMRES]/@[ATMRES]*.nc .
cp @[INPUTDATA_ROOT]/CPL_FIX/a@[ATMRES]o@[OCNRES]/grid_spec.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[ATMRES]_grid*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[ATMRES]_mosaic.nc
cp @[INPUTDATA_ROOT]/MOM6_FIX/@[OCNRES]/ocean_mosaic.nc ${targetdir}/.

# Merra2
if [ $IAER = 1011 ]; then
for n in 01 02 03 04 05 06 07 08 09 10 11 12; do
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/MERRA2_y14_24/merra2_1423_${n}.nc aeroclim.m${n}.nc
done
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_BC.v1_3.dat optics_BC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_OC.v1_3.dat optics_OC.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_DU.v15_3.dat optics_DU.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SS.v3_3.dat optics_SS.dat
cp @[INPUTDATA_ROOT]/FV3_input_data_INCCN_aeroclim/aer_data/LUTS/optics_SU.v1_3.dat optics_SU.dat
fi

cp @[INPUTDATA_ROOT]/FV3_input_data/ugwp_c384_tau.nc ./ugwp_limb_tau.nc

if [ $IMP_PHYSICS = 8 ]; then
cp @[INPUTDATA_ROOT]/FV3_fix/CCN_ACTIVATE.BIN CCN_ACTIVATE.BIN
cp @[INPUTDATA_ROOT]/FV3_fix/freezeH2O.dat freezeH2O.dat
cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qgV2.dat qr_acr_qgV2.dat
cp @[INPUTDATA_ROOT]/FV3_fix/qr_acr_qsV2.dat qr_acr_qsV2.dat
fi

# Prognostic aerosols
if [ $CPLCHM = .true. ]; then
ln -sf @[INPUTDATA_ROOT]/GOCART/p8c_5d/ExtData .
fi
fi
fi

# Land component related restart files
if [ $WARM_START = .true. ]; then
# Copy land restart files
cp ../${DEP_RUN}${SUFFIX}/ufs.cpld.lnd.out.${RESTART_FILE_SUFFIX_SECS}.tile*.nc RESTART/.
# CMEPS restart and pointer files
RFILE=ufs.cpld.cpl.r.${RESTART_FILE_SUFFIX_SECS}.nc
cp ../${DEP_RUN}${SUFFIX}/RESTART/${RFILE} .
ls -1 ${RFILE}>rpointer.cpl
fi

# Running land in different resolution
# Note that CMEPS mediator has some limitiations to run land in different resolution than atmosphere
if [ "$ATMRES" != "$LNDRES" ]; then
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].maximum_snow_albedo.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].slope_type.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_type.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_color.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].substrate_temperature.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_greenness.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_type.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile1.nc ${targetdir}/oro_data.tile1.nc
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile2.nc ${targetdir}/oro_data.tile2.nc
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile3.nc ${targetdir}/oro_data.tile3.nc
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile4.nc ${targetdir}/oro_data.tile4.nc
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile5.nc ${targetdir}/oro_data.tile5.nc
rsync -arv @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx*.tile6.nc ${targetdir}/oro_data.tile6.nc
rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/@[LNDRES]_grid.tile*.nc ${targetdir}/.
rsync -arv @[INPUTDATA_ROOT]/${inputdir}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc
mkdir -p INPUT/$LNDRES
targetdir="./INPUT/$LNDRES"
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].maximum_snow_albedo.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].slope_type.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_type.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].soil_color.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].substrate_temperature.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_greenness.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/@[LNDRES].vegetation_type.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile1.nc ${targetdir}/oro_data.tile1.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile2.nc ${targetdir}/oro_data.tile2.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile3.nc ${targetdir}/oro_data.tile3.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile4.nc ${targetdir}/oro_data.tile4.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile5.nc ${targetdir}/oro_data.tile5.nc
cp @[INPUTDATA_ROOT]/FV3_fix_tiled/@[LNDRES]/oro_@[LNDRES].mx025.tile6.nc ${targetdir}/oro_data.tile6.nc
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT/@[LNDRES]_grid.tile*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT/grid_spec.nc ${targetdir}/@[LNDRES]_mosaic.nc
if [ $WARM_START = .false. ]; then
if [ "$V2_SFC_FILE" = "true" ]; then
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/sfc_data*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/gfs_data*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025_v2_sfc/gfs_ctrl*.nc ${targetdir}/.
else
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/sfc_data*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/gfs_data*.nc ${targetdir}/.
cp @[INPUTDATA_ROOT]/FV3_input_data${LNDRES#C}/INPUT_L127_mx025/gfs_ctrl*.nc ${targetdir}/.
fi
fi
fi
Loading

0 comments on commit 02818c1

Please sign in to comment.