Files
exoplasim/tools/plasim_restart_test
T

55 lines
1.4 KiB
Tcsh
Executable File

#!/bin/tcsh
# Perform restart test by comparing the restart file of a two-month
# continuos run with a monthly restarted run (argument = executable)
if ("$1" == "") then
echo
echo "Usage for single core executables:"
echo "plasim_restart_test <executable> e.g.:"
echo "plasim_restart_test most_plasim_t21_l10.x"
echo
echo "Usage for MPI executables:"
echo "plasim_restart_test <MPI exec string> e.g.:"
echo 'plasim_restart_test "mpiexec -np 2 most_plasim_t21_l10_p2.x"'
exit
endif
unset noclobber
rm -f plasim_restart
rm -f Abort_Message
# 1. modify namelist to create a two month run
sed -i -e 's/KICK.*/KICK=0/' plasim_namelist
sed -i -e 's/NGUI.*/NGUI=0/' plasim_namelist
sed -i -e 's/N_RUN_YEARS.*/N_RUN_YEARS=0/' plasim_namelist
sed -i -e 's/N_RUN_MONTHS.*/N_RUN_MONTHS=2/' plasim_namelist
sed -i -e 's&/END&SEED=1&' plasim_namelist
echo " /END" >> plasim_namelist
# 2. start first run
echo "Executing two month continuous run"
time $1
mv plasim_status ONE_REST
mv plasim_diag ONE_DIAG
# 3. modify namelist to create a month run
sed -i -e 's/N_RUN_MONTHS.*/N_RUN_MONTHS=1/' plasim_namelist
echo "Executing 1st. month"
time $1
mv plasim_status plasim_restart
mv plasim_diag TWO_DIAG.001
echo "Executing 2nd. month from restart"
time $1
mv plasim_status TWO_REST
mv plasim_diag TWO_DIAG.002
# 4. compare restart files - should be identical
diff ONE_REST TWO_REST
if ($? == 0) echo "Restart test passed OK"