[Dart-dev] DART/branches Revision: 11188

dart at ucar.edu dart at ucar.edu
Fri Mar 3 15:16:37 MST 2017


raeder at ucar.edu
2017-03-03 15:16:35 -0700 (Fri, 03 Mar 2017)
180
Fixed mistaken links of current cycle input inflation mean and sd 
to previous cycle's output, based on assumption that mean would
always be written first.  It is . . . sometimes.



Modified: DART/branches/rma_trunk/models/cam-fv/scripts_cesm1_5/assimilate.csh
===================================================================
--- DART/branches/rma_trunk/models/cam-fv/scripts_cesm1_5/assimilate.csh	2017-03-03 18:18:16 UTC (rev 11187)
+++ DART/branches/rma_trunk/models/cam-fv/scripts_cesm1_5/assimilate.csh	2017-03-03 22:16:35 UTC (rev 11188)
@@ -10,9 +10,6 @@
 
 # See 'RMA' for places where there are questions about RMA,
 # especially file naming.
-# This is written for the full implementation of new state space and inflation
-# file names, not what will be in the rma_trunk tag.  The full impl. is being
-# developed in branches/rma_fixed_filenames.
 
 
 
@@ -179,8 +176,6 @@
    # If it's the last cycle, hide the restart set.
    # This is assuming that DATA_ASSIMILATION_CYCLES has not been changed in env_run.xml
    # since the start (not submission) of this job.
-   # Alternatively, and more robustly, modify case.run to pass 
-   # $cycle and $config{DATA_ASSIMILATION_CYCLES} to DoDataAssimilation.
    if ($cycle == $DATA_ASSIMILATION_CYCLES) then
       set hide_date = `echo $re_list[2] | sed -e "s/-/ /g;s/\./ /g;"`
       @ day = $#hide_date - 2
@@ -449,7 +444,10 @@
       endif
 
       # If inflation files exists, use them as input for this assimilation
-      (ls -rt1 $CASE.cam.${stage}_priorinf* | tail -n 2 >! latestfile) > & /dev/null
+      # Must be separate commands because the 'order' that means and sds 
+      # are finished being written out varies from cycle to cycle.
+      (ls -rt1 $CASE.cam.${stage}_priorinf_mean* | tail -n 1 >! latestfile) > & /dev/null
+      (ls -rt1 $CASE.cam.${stage}_priorinf_sd*   | tail -n 1 >> latestfile) > & /dev/null
       set nfiles = `cat latestfile | wc -l`
       if ( $nfiles > 0 ) then
          set latest_mean = `head -n1 latestfile`
@@ -497,7 +495,8 @@
    else
       # Look for the output from the previous assimilation.
       # (The only stage after posterior inflation.)
-      (ls -rt1 ${CASE}.cam.output_postinf* | tail -n 2 >! latestfile) > & /dev/null
+      (ls -rt1 ${CASE}.cam.output_postinf_mean* | tail -n 1 >! latestfile) > & /dev/null
+      (ls -rt1 ${CASE}.cam.output_postinf_sd*   | tail -n 1 >> latestfile) > & /dev/null
       set nfiles = `cat latestfile | wc -l`
 
       # If one exists, use it as input for this assimilation

Modified: DART/branches/rma_trunk/models/cam-fv/scripts_cesm2_0/assimilate.csh
===================================================================
--- DART/branches/rma_trunk/models/cam-fv/scripts_cesm2_0/assimilate.csh	2017-03-03 18:18:16 UTC (rev 11187)
+++ DART/branches/rma_trunk/models/cam-fv/scripts_cesm2_0/assimilate.csh	2017-03-03 22:16:35 UTC (rev 11188)
@@ -140,6 +140,7 @@
       # Note that *cpl.ha.* is retained, and any h#, #>0.
       #        $CASE                          DD          -SSSSS
       $REMOVE  $rm_date[1]*.{r,rs,rh0,h0,i}.*${day_o_month}-${sec_o_day}* &
+      $REMOVE  $rm_date[1].*[0-9].{input,preassim,postassim}*${day_o_month}-${sec_o_day}* &
 
       # Remove log files: *YYMMDD-HHMMSS.  
       $REMOVE  *$rm_log[$rm_slot]*  &
@@ -433,7 +434,10 @@
       endif
 
       # If inflation files exists, use them as input for this assimilation
-      (ls -rt1 $CASE.cam.${stage}_priorinf* | tail -n 2 >! latestfile) > & /dev/null
+      # Must be separate commands because the 'order' that means and sds 
+      # are finished being written out varies from cycle to cycle.
+      (ls -rt1 $CASE.cam.${stage}_priorinf_mean* | tail -n 1 >! latestfile) > & /dev/null
+      (ls -rt1 $CASE.cam.${stage}_priorinf_sd*   | tail -n 1 >> latestfile) > & /dev/null
       set nfiles = `cat latestfile | wc -l`
       if ( $nfiles > 0 ) then
          set latest_mean = `head -n1 latestfile`
@@ -481,7 +485,8 @@
    else
       # Look for the output from the previous assimilation.
       # (The only stage after posterior inflation.)
-      (ls -rt1 ${CASE}.cam.output_postinf* | tail -n 2 >! latestfile) > & /dev/null
+      (ls -rt1 ${CASE}.cam.output_postinf_mean* | tail -n 1 >! latestfile) > & /dev/null
+      (ls -rt1 ${CASE}.cam.output_postinf_sd*   | tail -n 1 >> latestfile) > & /dev/null
       set nfiles = `cat latestfile | wc -l`
 
       # If one exists, use it as input for this assimilation
@@ -513,7 +518,7 @@
 # &filter_nml:           direct_netcdf_read      = .true.
 # &filter_nml:           direct_netcdf_write     = .true.
 # &filter_nml:           overwrite_state_input   = .true.
-# &filter_nml:           input_restart_file_list       = 'restart_files.txt'
+# &filter_nml:           input_state_file_list       = 'restart_files.txt'
 # &filter_nml:           obs_sequence_in_name    = 'obs_seq.out'
 # &filter_nml:           obs_sequence_out_name   = 'obs_seq.final'
 # &filter_nml:           init_time_days          = -1,
@@ -537,26 +542,26 @@
 
 # RMA
 # Put the names of the CAM initial files, from which filter will get the model state(s), 
-# into a text file, whose name is provided to filter in filter_nml:input_restart_file_list.
+# into a text file, whose name is provided to filter in filter_nml:input_state_file_list.
 # If filter will create an ensemble from a single state, it's fine (and convenient)
-# to put the whole list of files in input_restart_file_list.  Filter will just use the first.
-# NOTE: if the files in input_restart_file_list are CESM format (all vars and all meta data), 
+# to put the whole list of files in input_state_file_list.  Filter will just use the first.
+# NOTE: if the files in input_state_file_list are CESM format (all vars and all meta data), 
 #       then they may end up with a different structure than the preassim and postassim stage


More information about the Dart-dev mailing list