[Dart-dev] DART/branches Revision: 12549
dart at ucar.edu
dart at ucar.edu
Fri Apr 20 15:16:58 MDT 2018
thoar at ucar.edu
2018-04-20 15:16:58 -0600 (Fri, 20 Apr 2018)
112
Shorter run-time for testing.
Uses observation files with timestamps.
Renames output files to have timestamps.
Modified: DART/branches/openggcm/models/openggcm/shell_scripts/run_filter.qsub
===================================================================
--- DART/branches/openggcm/models/openggcm/shell_scripts/run_filter.qsub 2018-04-20 19:34:48 UTC (rev 12548)
+++ DART/branches/openggcm/models/openggcm/shell_scripts/run_filter.qsub 2018-04-20 21:16:58 UTC (rev 12549)
@@ -54,7 +54,7 @@
#PBS -e filter.err
#PBS -o filter.log
#PBS -l nodes=1:ppn=32
-#PBS -l walltime=2:00:00
+#PBS -l walltime=0:45:00
#----------------------------------------------------------------------
# Turns out the scripts are a lot more flexible if you don't rely on
@@ -117,10 +117,9 @@
echo
#----------------------------------------------------------------------
+# actually start doing something ...
#----------------------------------------------------------------------
-set myname = $0 # this is the name of this script
-
alias die 'echo FATAL: \!*; exit 1'
cd $ORIGINALDIR
@@ -169,16 +168,17 @@
set BASETIME = 1966-01-01_00:00:00
#-----------------------------------------------------------------------------
-# Get the DART executables, scripts, and input files
+# Get the DART executables, scripts, and input files.
+# The run-time input (input.nml) must have been staged in $RUNPATH.
+# At some point, maybe all these files should be pre-staged. It would
+# enable multiple experiments to be carried out at the same time.
#-----------------------------------------------------------------------------
# executables
${COPY} ${DARTDIR}/work/advance_time.exe . || exit 1
${COPY} ${DARTDIR}/work/filter.exe . || exit 1
-${COPY} ${DARTDIR}/work/input.nml . || exit 1
set SAMP_ERR_FILE = ${DARTROOT}/assimilation_code/programs/gen_sampling_err_table/work/sampling_error_correction_table.nc
-
${COPY} ${SAMP_ERR_FILE} .
# staging inflation files
@@ -185,6 +185,10 @@
${COPY} ${DARTDIR}/data/output_priorinf_mean.nc input_priorinf_mean.nc
${COPY} ${DARTDIR}/data/output_priorinf_sd.nc input_priorinf_sd.nc
+#-----------------------------------------------------------------------------
+# Start waiting for something to do ...
+#-----------------------------------------------------------------------------
+
@ ncycle = 0
while ( 1 )
@@ -194,6 +198,7 @@
#------------------------------------------------------------
# Get the time
+ #------------------------------------------------------------
set semaphore = `head -n 1 semaphore_files.txt`
set TimeString = `head -n 1 $semaphore | sed -e "s/\..*//"`
@@ -210,14 +215,14 @@
#------------------------------------------------------------
# link the obs
+ #------------------------------------------------------------
${REMOVE} obs_seq.out
-# ${LINK} ${OBSERVATIONDIR}/obs_seq.${ModelTime} obs_seq.out || exit 1
+ ${LINK} ${OBSERVATIONDIR}/obs_seq${ModelTime} obs_seq.out || exit 1
- ${LINK} ${OBSERVATIONDIR}/obs_seq201303170100 obs_seq.out || exit 1
-
#------------------------------------------------------------
# input.nml presumes 'input_list.txt', 'output_list.txt'
+ #------------------------------------------------------------
ls -1 */target/DATA.ionos2.nc >! input_list.txt
sed -e "s/DATA.ionos2.nc/dart_posterior.nc/" input_list.txt >! output_list.txt
@@ -227,17 +232,39 @@
${MPI} ./filter.exe || exit 2
#------------------------------------------------------------
- # rename output files (inflation, diagnostics, etc)
-
- ls -lrt
+ # rename output files (inflation, diagnostics, etc) to be unique
+ #------------------------------------------------------------
+
+ foreach FILE ( preassim_*.nc output_*.nc obs_seq.final )
+ set BASE = $FILE:r
+ set EXT = $FILE:e
+ \mv -v $FILE ${BASE}_${ModelTime}.${EXT}
+ end
#------------------------------------------------------------
- # update inflation files
More information about the Dart-dev
mailing list