[Dart-dev] [6137] DART/branches/development/models/CESM/shell_scripts: allow the land model to be assimilated every 6 hours.

nancy at ucar.edu nancy at ucar.edu
Wed May 15 15:04:35 MDT 2013


Revision: 6137
Author:   nancy
Date:     2013-05-15 15:04:34 -0600 (Wed, 15 May 2013)
Log Message:
-----------
allow the land model to be assimilated every 6 hours.
(this script will also work if you only stop the CESM
model once a day at 0Z).

change the setup script so it uses actual hours for
the h1 history file, and set the frequency so it's twice
the number of hours, because the forward operator for
tower obs is depending on having 30 minute averaged vals.

Modified Paths:
--------------
    DART/branches/development/models/CESM/shell_scripts/CESM_setup_hybrid_from_prev_run.csh
    DART/branches/development/models/CESM/shell_scripts/clm_assimilate.csh

-------------- next part --------------
Modified: DART/branches/development/models/CESM/shell_scripts/CESM_setup_hybrid_from_prev_run.csh
===================================================================
--- DART/branches/development/models/CESM/shell_scripts/CESM_setup_hybrid_from_prev_run.csh	2013-05-14 17:56:49 UTC (rev 6136)
+++ DART/branches/development/models/CESM/shell_scripts/CESM_setup_hybrid_from_prev_run.csh	2013-05-15 21:04:34 UTC (rev 6137)
@@ -452,13 +452,14 @@
    # For a HOP TEST ... hist_empty_htapes = .false.
    # For a HOP TEST ... use a default hist_fincl1 
    #
+   @ thirtymin = $assim_n * 2
 
    #echo "\!finidat = '${refcase}.clm2${instance}.r.${run_refdate}-${run_reftod}.nc'" >> $fname
    echo "hist_empty_htapes = .true."                 >> $fname
    echo "hist_fincl1 = 'NEP'"                        >> $fname
    echo "hist_fincl2 = 'NEP','FSH','EFLX_LH_TOT_R'"  >> $fname
-   echo "hist_nhtfrq = -$assim_n,1,"                 >> $fname
-   echo "hist_mfilt  = 1,12"                         >> $fname
+   echo "hist_nhtfrq = -$assim_n,-$assim_n,"         >> $fname
+   echo "hist_mfilt  = 1,$thirtymin"                 >> $fname
    echo "hist_avgflag_pertape = 'A','A'"             >> $fname
 
    # ===========================================================================

Modified: DART/branches/development/models/CESM/shell_scripts/clm_assimilate.csh
===================================================================
--- DART/branches/development/models/CESM/shell_scripts/clm_assimilate.csh	2013-05-14 17:56:49 UTC (rev 6136)
+++ DART/branches/development/models/CESM/shell_scripts/clm_assimilate.csh	2013-05-15 21:04:34 UTC (rev 6137)
@@ -79,18 +79,26 @@
 echo "valid time of model is $LND_YEAR $LND_MONTH $LND_DAY $LND_HOUR (hours)"
 
 #-------------------------------------------------------------------------
-# Determine if current time is 0Z - if so, assimilate.
+# Determine if current time is an assimilation time.
 # If not, return before assimilating.
 #-------------------------------------------------------------------------
 
-if ( $LND_HOUR != 0 ) then
-   echo "Hour is not 0Z so we are skipping the land assimilation"
-   echo "`date` -- END LND_ASSIMILATE"
+if ( $LND_HOUR != 0  &&  $LND_HOUR != 6  &&  $LND_HOUR != 12  &&  $LND_HOUR != 18) then
+   echo "Hour is not 0,6,12 or 18Z so we are skipping the land assimilation"
+   echo "`date` -- END CLM_ASSIMILATE"
    exit 0
 else
    echo "Hour is $LND_HOUR so we are assimilating the land"
 endif
 
+# if you want to only assimilate at 0Z each day, substitute the
+# following two lines for the longer test above.  we have flux tower
+# observations which need to be assimilated every 6 hours; if you
+# aren't going to assimilate them and are only assimilating some obs type
+# that is only available once a day, you can change to this test instead.
+#if ( $LND_HOUR != 0 ) then
+#   echo "Hour is not 0Z so we are skipping the land assimilation"
+
 #-------------------------------------------------------------------------
 # we are going to assimilate, so carry on.
 #-------------------------------------------------------------------------


More information about the Dart-dev mailing list