[Dart-dev] [4855] DART/trunk/models/cam: Kevin prefers the entry point to be model_mod .html, so

nancy at ucar.edu nancy at ucar.edu
Thu Apr 14 16:04:07 MDT 2011


Revision: 4855
Author:   thoar
Date:     2011-04-14 16:04:06 -0600 (Thu, 14 Apr 2011)
Log Message:
-----------
Kevin prefers the entry point to be model_mod.html, so
we are renaming the index.html to be something more appropriate.
It is not really the MAIN page someone should be looking at.

Modified Paths:
--------------
    DART/trunk/models/cam/model_mod.html

Added Paths:
-----------
    DART/trunk/models/cam/doc/cam_guidelines.html

Removed Paths:
-------------
    DART/trunk/models/cam/doc/index.html

-------------- next part --------------
Copied: DART/trunk/models/cam/doc/cam_guidelines.html (from rev 4851, DART/trunk/models/cam/doc/index.html)
===================================================================
--- DART/trunk/models/cam/doc/cam_guidelines.html	                        (rev 0)
+++ DART/trunk/models/cam/doc/cam_guidelines.html	2011-04-14 22:04:06 UTC (rev 4855)
@@ -0,0 +1,550 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+          "http://www.w3.org/TR/html4/strict.dtd">
+<HTML>
+<HEAD>
+<TITLE>DART-CAM setup </TITLE>
+<link rel="stylesheet" type="text/css" href="../../../doc/html/doc.css">
+</HEAD>
+<BODY>
+<A NAME="TOP"></A>
+
+<!--
+!  9/8/05
+!     cp new scripts from Doc_scripts to where they belong in DART
+!     mv master.html from Doc_scripts to models/cam? (then change links in model_mod.html
+!        and master.html.
+!     install FAQ into the set-up web page?  Use Justin's questions to start
+!     more instructions about 
+!        choices of starting from single inputs/ensembles\
+!        users making their own caminput and filter_ic ensemble (or starting from single
+!           and having filter make an ensemble, so I'm not responsible for model/data consistency)
+!           message 36 in folder justinWI
+!        making synthetic obs_seq files vs using ones provided
+!        dealing with model version numbers
+!        namelist entries for DART; where are they described?  all the ..._mod.html pages
+!     commit models/cam/work/makall, or remove reference below
+!            doc/CAM/Doc_scripts/master.html (and others there?)
+!     develope a strategy for dispersing bug fixes and upgrades to users
+!
+!!See updates in /ftp/pub/raeder/DART/Hawaii_pre/README   1/6/2005
+!!
+!!Also, CAM3.0 compiled under pgf90 requires optimization -O1, since -O2
+!!and -fast yield code that doesn't verify against the lower optimization runs.
+!!Note this below.
+!!
+!! make sure scripts are in the right places, and committed.
+!!
+!! FLOW CHART SET-UP?  There are lots of steps which won't be necessary for every experiment
+!!
+-->
+
+<center>
+<A HREF="#CALLINGTREE">CALLING TREE</A> /
+<A HREF="#SETUP">SET-UP</A> /
+<A HREF="#FILECONTENTS">FILE CONTENTS</A> /
+<A HREF="#OUTPUTDIRECTORY">OUTPUT DIRECTORY</A> /
+<A HREF="#HINTS">HINTS</A> /
+<A HREF="#SPACE">SPACE</A> /
+<A HREF="#Legalese">TERMS OF USE</A>
+</center>
+
+<H2>DART-CAM OVERVIEW</H2>
+<!-- version tag follows, do not edit --><P>$Id$</P>
+
+<P>
+The up-to-date overview will always be available at 
+<a href="http://www.image.ucar.edu/DAReS/DART/cgd_cam.shtml">
+http://www.image.ucar.edu/DAReS/DART/cgd_cam.shtml</a>
+<br><br>
+For the 
+<A HREF="../../../doc/html/Jamaica_release.html"> Jamaica release </A>
+the async=3 (.../input.nml:filter_nml) option 
+is no longer offered, and has been replaced by async=4.  
+This new option runs an MPI filter, which can use either single threaded or MPI CAM.  
+The single threaded option will run CAM for 1 ensemble member on 
+each processor (up to the lesser of the number of ensemble members
+or the number of processors).  
+The MPI CAM option will run CAM for each ensemble member in succession,
+using all the available processors.
+It's not possible (yet) to run several MPI CAMs at the same time, 
+each using a subset of the processors.
+<br><br>
+This new option allows users to control the assimilation through a single script,
+'job_mpi.csh',
+except for modifications for machines on which DART-CAM hasn't been tested yet.
+Job_mpi.csh has a section of user set parameters that define many aspects of
+the assimilation.  
+It uses those parameters to create a series of batch scripts, 
+one for each obs_seq.out file that will be assimilated.
+Their names have the form Exper_obsseq#.script,
+the parts of which are defined in job_mpi.csh.
+It submits all of those scripts to the batch scheduler,
+where they run in succession as resources become available.
+Each obs_seq batch script executes the programs layed out in the calling tree (below).
+<br><br>
+The async=2 option (non-MPI filter and non-MPI CAM) is still available.
+<br><br>
+These options have been tested for DART-CAM in batch submission environments 
+PBS and LSF on Linux clusters and IBM AIX.
+<br><br>
+There are, no doubt, things missing from these lists, so don't struggle too long
+before contacting raeder'at'ucar.edu.
+<br><br>
+The sequence of operations for assimilating a single obs_seq.out file follows.
+The functionality of each operation has been restricted to one "domain".
+A script/program is specific to:
+a machine where the experiment is run; 
+a model version used in the assimilation; 
+the filter version; 
+or the experiment being conducted using the choices for the previous 3.
+<br><br>
+<A HREF="../../../models/cam/model_mod.html">Go to cam/model_mod page</A> 
+</P>
+
+<A NAME="CALLINGTREE"></A>
+<HR>
+<H2>CALLING TREE</H2>
+<P>
+The calling tree for the scripts and fortran executables when running under
+async=4 is:
+</P>
+
+<TABLE border=0 cellpadding=3 width=100%>
+<TR><TH align=left>SCRIPT     </TH>
+    <TH align=left>DOMAIN     </TH>
+    <TH align=left>LOCATION OR NOTES  </TH></TR>
+
+<TR><!-- script --><TD valign=top>Exper_obsseq#.script</TD>
+    <!-- domain --><TD valign=top>experiment</TD>
+    <!--location--><TD>experiment central directory where I/O and execution are organized.</TD></TR>
+<TR><!-- script --><TD valign=top><pre>   -&#62; mpirun filter executable </pre></TD>
+    <!-- domain --><TD valign=top>filter version </TD>
+    <!--location--><TD>local disc on a compute node/processor, or a work directory
+                       in the central directory.</TD></TR>
+<TR><!-- script --><TD valign=top><pre>      -&#62; advance_model.csh</pre></TD>
+    <!-- domain --><TD valign=top> model </TD>
+    <!--location--><TD> pre-existing work subdirectory of the central directory.</TD></TR>
+<TR><!-- script --><TD valign=top><pre>         -&#62; trans_time executable</pre></TD>
+    <!-- domain --><TD valign=top> model  </TD>
+    <!--location--><TD>Translates DART time format into CAM time format</TD></TR>
+<TR><!-- script --><TD valign=top><pre>         -&#62; trans_sv_pv executable</pre></TD>
+    <!-- domain --><TD valign=top> model  </TD>
+    <!--location--><TD>Inserts DART state vector into CAM initial file</TD></TR>
+<TR><!-- script --><TD valign=top><pre>         -&#62; run_pc.csh</pre></TD>
+    <!-- domain --><TD valign=top> model </TD>
+    <!--location--><TD> Modified form of run script from CAM, now in DART </TD></TR>
+<TR><!-- script --><TD valign=top><pre>            -&#62; bld-namelist </pre></TD>
+    <!-- domain --><TD valign=top> model </TD>
+    <!--location--><TD> uses namelistin and results of trans_time to make CAM namelist </TD></TR>
+<TR><!-- script --><TD valign=top><pre>            -&#62; advance of CAM</pre></TD>
+    <!-- domain --><TD valign=top> model  </TD>
+    <!--location--><TD>Single threaded or MPI CAM </TD></TR>
+<TR><!-- script --><TD valign=top><pre>         -&#62; trans_pv_sv executable</pre></TD>
+    <!-- domain --><TD valign=top>  </TD>
+    <!--location--><TD>Translates CAM fields in to DART state vector</TD></TR>
+<TR><!-- script --><TD valign=top><pre>   -&#62; qsub auto_re2ms.csh</pre></TD>
+    <!-- domain --><TD valign=top> machine </TD>
+    <!--location--><TD> Central/Experiment/obs_seq_output_directory(i.e. 01_01) </TD></TR>
+</TABLE>
+
+
+<!-- <A NAME="FLOW CHART"></A>
+<HR>
+<H2>FLOW CHART</H2>
+<P>
+The tasks of each script, and communication between them,  are summarized in a 
+<A HREF="flow_5.xfig.gif" > flow chart </A>.
+Note the key in the lower right corner.  The specific mechanisms for transferring control and
+moving files will be found in the scripts.
+</P>
+-->
+
+<!--===============================================-->
+<A NAME="SETUP"></A>
+<!--===============================================-->
+
+<HR>
+<H2>EXPERIMENT SET-UP</H2>
+<P>
+Instructions for setting up a DART-CAM assimilation.
+</P>
+
+<OL TYPE="A">
+   <li>DART
+   <OL TYPE="1">
+      <LI>In .../DART/mkmf link mkmf.template to 
+          the mkmf.template.xxxx which is appropriate for your computer 
+          (or make one of your own).  </LI>
+      <LI>Since you have this file you've already checked out DART.  <BR>
+          Edit ...DART/models/cam/work/input.nml:preprocess_nml:input_files 
+          to choose obs_def source code files to load via the preprocessor.  
+          The default file (obs_def_reanlysis_bufr_mod.f90) will handle 
+          observations from NCEP reanalysis BUFR files.  (Warning; assimilating the
+          obs in the example GPS obs_seq.out file available from the 
+          <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets">DART large file site</A>
+          requires loading more than just the obs_def_gsp.mod.f90.)</LI>
+      <LI>Script DART/models/cam/work/workshop_setup.csh is recommended for compiling 
+          the package.  
+          It is set up to compile and run the preprocessor, 
+          compile filter and wakeup_filter as MPI processes (async=4),
+          and compile all other executables as single threaded.  
+          If you want to use async=2, remove the -mpi flag from the calls 
+          to mkmf_filter and mkmf_wakeup_filter. </LI>
+   </OL></li>
+
+   <li>CAM
+   <OL TYPE="1">
+      <LI>Put the DART modifications 
+          (.../DART/models/cam/Cam[version#]_DART_mods/*),
+          and any other CAM modifications you have, 
+          in the CAM directory of user-provided modifications.
+          CAM's "configure" will use these during compilation. 
+          Configure and compile CAM at the resolution/dynamical core desired.  
+          Do this in a directory where all your CAM versions will reside, 
+          here called CamCentral.</LI>
+<!--             (/home/raeder/Cam3.0/Cam3_0_7_DART_mods) -->
+      <LI>Put the cam executable and config_cache.xml in a subdirectory of
+          the standard cam executable directory (CamCentral/CAM_version/models/atm/cam/bld),
+          which I'll call CAM_config_1-mpi (leave off the -mpi for single threaded CAM).  
+          Job_mpi.csh has a variable "CAMsrc" that should point to that location.</LI>
+      <LI>Build a CAM namelist and call it 'namelistin' containing (among the other/default 
+          variables defined by the CAM build-namelist): 
+          <pre>
+          &amp;camexp
+          ncdata         = 'caminput.nc'
+          caseid         = 'whatever_you_want'
+          nsrest         = 0
+          calendar       = 'GREGORIAN'
+          inithist       = 'ENDOFRUN'
+          /
+          &amp;clmexp
+          finidat        = 'clminput.nc'
+          /
+          </pre>
+          and NOT containing ...
+          <pre>
+          &#62;  nhtfrq         = 4368
+          &#62;  start_ymd      = 20020901
+          &#62;  start_tod      = 0
+          &#62;  stop_ymd       = 20021201
+          &#62;  stop_tod       = 0
+          </pre>
+          The CAM build-namelist script will use this to make a new namelist with the correct
+          forecast parameters, named 'namelist'.
+          Put this in CamCentral/CAM_version/models/atm/cam/bld/CAM_config_1-mpi.</LI>
+
+      <LI>Confirm that you have access to all the CAM input files listed in namelistin, 
+          or suitable replacements.</LI>
+   
+      <LI>Put an appropriate CAM initial file in CAM_config_1-mpi and call it caminput.nc.
+          Put a matching CLM initial file there and call it clminput.nc.
+          Only the grid information is used from these files, so their dates don't matter.
+          </LI>
+   </OL></li>
+
+   <li>Set up an experiment central directory ("Central" here) where there's 
+   <A HREF="#SPACE">enough space</A> for output.</li>
+
+   <li>Copy the DART namelist file (<em class=file>DART/models/cam/work/input.nml</em>)
+   into one called "<em class=file>input_1.nml</em>" in Central</li>
+
+   <li>Copy <em class=file>DART/models/cam/shell_scripts/job_mpi.csh</em> to Central</li>
+
+   <li>EXPERIMENT
+   <OL TYPE="1">
+      <LI>Edit job_mpi.csh.  It has more detailed instructions about how to:
+          <UL><LI>define experiment output directory names</LI>
+              <LI>tell it whether CAM is MPI</LI>
+              <LI>provide directory name of CAM executable and associated files</LI>
+              <LI>define which obs_seq.out files to use.
+                     Some pre-made examples can be found 
+                     <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets"> here.</A></LI>
+              <LI>find and link to the obs_seq.out files</LI>
+	      <LI>find and link to filter_ic[.#] files.
+		     Such an ensemble can be created from CAM initial files using
+		     <A HREF="./trans_pv_sv_time0_instr.html">
+		     .../DART/models/cam/trans_pv_sv_time0.f90</A>. </LI>
+              <LI>define which CAM and CLM initial files to use.  
+                     Some initial and filter_ic files are available from 
+                     <A HREF="http://www.image.ucar.edu/pub/DART/CAM">DART large file site</A></LI>
+              <LI>define which DART version to use</LI>
+              <LI>define resources to be requested by each of the obs_seq_#.script scripts</LI>
+          </UL>
+      </LI>
+   
+      <LI>Edit input_1.nml to configure the assimilation of the first obs_seq.out.
+          Be sure that 
+          <UL>
+              <LI>filenames listed in it agree with what's required by job_mpi.csh
+                     and what is or will be available in the Central directory. </LI>
+              <LI>start from restart is .true. if you have an initial ensemble,
+                     .false. otherwise.</LI>
+              <LI>init_time_days is the first Gregorian day of your assimilation.
+		 This can be obtained from the program 
+		 <A HREF="./trans_date_to_dart_instr.html">
+		 ...DART/models/cam/trans_date_to_dart.f90 </A> </LI>
+              <LI>init_time_seconds is the first second of your assimilation (usually 0).</LI>
+          </UL>
+      </LI>
+
+      <LI>Copy input_1.nml to input_n.nml and edit input_n.nml. 
+              Set start_from_restart to .true.  
+              Change init_time_days = -1, init_time_seconds = -1.</LI>
+      <LI>If you need to make up synthetic observations get create_obs_sequence, 
+             create_fixed_network_seq and perfect_model_obs.  
+             Otherwise, use the obs_seq.out files provided 
+             <A href="http://www.image.ucar.edu/pub/DART/Obs_sets">here</A></LI>
+      <LI> Run the experiment by executing job_mpi.csh, 
+	       either through the batch queue or interactively. </LI>
+   </OL></li>
+</OL>
+<!--  <LI>(MORE? my conventions to make them work with job.csh? A whole new topic? )</LI> -->
+
+<!--===============================================-->
+<A NAME="FILECONTENTS"></A>
+<HR>
+<H2>FILE CONTENTS</H2>
+<P>
+See the <A HREF="../../../doc/html/Jamaica_release.html"> Jamaica release notes </A>
+for diagrams and flowcharts showing DART under the various async options.
+
+The contents of some of the files which appear there are listed here.
+# refers to the list of ensemble members.
+</P>
+
+<TABLE border=0 cellpadding=3 width=100%>
+<TR><TH align=left>FILE   </TH>
+    <TH align=left>CONTENTS or PURPOSE </TH></TR>
+<TR><!--file--><TD valign=top>assim_model_state_ic#</TD>
+    <!--purpose--><TD>the state vectors to be used as initial conditions
+    for the next model advance.  Contains the state vector time, the target
+    time, and the state vector. </TD></TR>
+<TR><!--file--><TD valign=top>assim_model_state_ud#</TD>
+    <!--purpose--><TD>the updated state vectors returned by the model
+    advance.  Contain the state vector time (was the target time) and the
+    state vector for one ensemble member.  </TD></TR>
+<TR><!--file--><TD valign=top>filter_ic_old#s</TD>
+    <!--purpose--><TD> the initial conditions to be used by the filter for the 
+    next assimilation of a single obs_seq.out file.  There may be one of
+    these, or one for each ensemble member, named filter_ic_old.####,
+    where the #### means a 4 digit number such as 0001. </TD></TR>
+
+<TR><!--file--><TD valign=top>filter_ic_new#s</TD>
+    <!--purpose--><TD> same as filter_ic_new#s, except that it/they are produced
+    at the end of the assimilation, for use by the next assimilation. </TD></TR>
+
+<TR><!--file--><TD valign=top>input.nml</TD>
+    <!--purpose--><TD> the filter namelist file, containing the namelists for all the
+    necessary modules of the filter. </TD></TR>
+
+<TR><!--file--><TD valign=top>caminput.nc</TD>
+    <!--purpose--><TD> model initial file provides information about the model
+    to filter, such as state vector size, etc. </TD></TR>
+
+<TR><!--file--><TD valign=top>caminput_#.nc</TD>
+<!--purpose--><TD> CAM has more fields in its initial files than 
+    we use in the DART state vector.  It's useful to carry these fields along from 
+    advance to advance so that they don't need to spin-up as much at the beginning
+    of each advance.  trans_sv_pv replaces the state vector fields in these
+    "shells" with the contents of assim_model_state_ic and leaves the other
+    fields alone. </TD></TR>
+
+<TR><!--file--><TD valign=top>namelists</TD>
+    <!--purpose--><TD> the forecast model may need namelist(s) to define its advance. </TD></TR>
+
+<TR><!--file--><TD valign=top>obs_seq.final</TD>
+    <!--purpose--><TD> the innovations in observation space which result from the 
+    assimilation of all the chosen obs in obs_seq.out. </TD></TR>
+
+<TR><!--file--><TD valign=top>obs_seq.out</TD>
+    <!--purpose--><TD> the set of observations to be assimilated.  How the observations
+    are distributed in time defines when the model advances happen. </TD></TR>
+
+<TR><!--file--><TD valign=top>Posterior_Diag.nc</TD>
+    <!--purpose--><TD> the state vector in model space after each 
+    assimilation defined by the obs times in obs_seq.out. </TD></TR>
+
+<TR><!--file--><TD valign=top>Prior_Diag.nc</TD>
+    <!--purpose--><TD> the state vector in model space before each assimilation
+    defined by the obs times in obs_seq.out.  It results from the previous model advance.
+    </TD></TR>
+    
+
+<TR><!--file--><TD valign=top>True_State.nc</TD>
+   <!--purpose--><TD> the state vector in model space resulting from an execution
+   of perfect_model_obs.  These are the model forecast values from which identity obs
+   are derived.  </TD></TR>
+
+</TABLE>
+
+<!--===============================================-->
+<A NAME="OUTPUTDIRECTORY"></A>
+<HR>
+<H2>OUTPUT DIRECTORY </H2>
+<P>
+Organization of output directories: 
+</P>
+
+<TABLE border=0 cellpadding=3 width=100%>
+<TR><TH align=left>DIRECTORY   </TH>
+    <TH align=left>CREATOR     </TH>
+    <TH align=left>CONTENTS and PURPOSE </TH></TR>
+<TR><!--directory--><TD valign=top><pre>Central directory  </pre> </TD>
+    <!--creator--><TD valign=top> User </TD>
+    <!--purpose--><TD> 
+     Location of scripts and pass-through point for files during execution.
+     Typically named according defining characteristics of a *set* of 
+     experiments; resolution, model, obs being assimilated, unique model state 
+     variables, etc.</TD></TR>
+<TR><!--directory--><TD valign=top><pre>    Experiment   </pre> </TD>
+    <!--creator--><TD valign=top> job_mpi.csh </TD>
+    <!--purpose--><TD> 
+     Location of subdirectories of output and some diagnostics files.
+     Typically where the obs-space diagnostics are calculated using obs_diag. </TD></TR>
+<TR><!--directory--><TD valign=top><pre>       Obsseq_#  </pre> </TD>
+    <!--creator--><TD valign=top> Exper_obsseq#.script </TD>
+    <!--purpose--><TD> 
+     Each holds the obs-space and model-space output from assimilating one obs_seq.out file.
+     It should be named according to the need for 
+     obs_diag to see a name with the 2 digit month, underscore, and the 
+     number within the series of obs_seq.out files,
+     i.e. 01_02 for the second obs_seq.final of a January case.  </TD></TR> 
+<TR><!--directory--><TD valign=top><pre>           DART </pre> </TD>
+    <!--creator--><TD valign=top> Exper_obsseq#.script </TD>
+    <!--purpose--><TD> 
+     Holds the filter restart files (named filter_ic[.#]) created at the end of
+     the filter run for this obs_seq.out.  They're used by the next obs_seq.out 
+     file to restart.</TD></TR>
+<TR><!--directory--><TD valign=top><pre>           CAM</pre> </TD>
+    <!--creator--><TD valign=top> Exper_obsseq#.script </TD>
+    <!--purpose--><TD>
+     Holds the CAM initial file shells which carry along model fields which are not 
+     DART state vector fields (preventing the repeated re-spin-up of those variables)</TD></TR>
+<TR><!--directory--><TD valign=top><pre>           CLM  </pre> </TD>
+    <!--creator--><TD valign=top> Exper_obsseq#.script </TD>
+    <!--purpose--><TD> 
+     Same as CAM, but for Community Land Model initial files.</TD></TR>
+</TABLE>
+
+<pre>
+A typical pathname for a restart file in my case would be:
+/scratch/cluster/raeder/T21x80/Taper1/01_03/DART/filter_ic#
+                        |      |      |     |    restart file(s)
+                        |      |      |     DART restart file directory
+			|      |      Obs_seq (3rd obs_seq.out of a Jan case)
+                        |      Experiment (reduced influence of obs above 150 hPa)
+                        Central directory (resolution x num_ens_members)
+</pre>
+<P>
+You may also want to make a subdirectory within Experiment 
+for each set of obs_space postscript and .dat files created by obs_diag and matlab.
+</P>
+
+<!--===============================================-->
+<A NAME="HINTS"></A>
+<HR>
+<H2>HELPFUL HINTS</H2>
+<P>
+For async=2 use the ensemble size, available compute nodes, and processors/node  to figure how many
+nodes to request.  Make this request in job_mpi.csh.  For example,  on a machine with
+2 processors/node, and running an assimilation with a 
+typical ensemble of 20 members, it's efficient to request 5 nodes.
+This will advance CAM in 2 batches of 10 (1 CAM/processor).  
+
+<BR><BR>
+
+Each batch of restart data can be saved to a mass store using (a modified) 
+auto_re2ms and retrieved using .../ms2restart.  Execute the
+commands with no arguments to see instructions.  They package files of each ensemble
+member together, and then bundle batches of ensemble members together for efficient
+storage in a directory named similarly to the one where they exist on the cluster.
+
+<BR><BR>
+
+<!-- If you're not running job_mpi.csh as a batch job,
+     run it as 'nohup ./job_mpi.csh >& /dev/null &', to protect the job from being cutoff
+     by the closure of the window in which it was executed. 
+     <BR><BR>
+     -->
+
+Modify and use alias 'rmtemp' to remove the temporary files from
+the central directory where the experiment is run, after a run bombs and
+before running another experiment.
+</P>
+<pre>
+alias rmtemp 'rm *_ud* *_ic[0-9]* cam_*_temp* c[al]minput_[1-9]*.nc  \
+              *control filter_ic_old* obs_seq.out times'
+</pre>
+<P>
+Needless to say, be careful that you don't name files you want to 
+keep in such a way that they'll be deleted by this.
+</P>
+
+<!--===============================================-->
+<A NAME="SPACE"></A>
+<HR>
+<H2>SPACE REQUIREMENTS</H2>
+<P>
+Space requirements (per ensemble member) for several CAM resolutions.
+</P>
+
+<TABLE border=0 cellpadding=3 width=100%>
+<TR><TH align=left>Resolution  </TH>
+    <TH align=left>filter_ic   </TH>
+    <TH align=left>CAM initial </TH>
+    <TH align=left>CLM initial </TH>
+    <TH align=left>Diagnostic (assuming no ensemble members)</TH></TR>
+<TR><TD>T5</TD>
+    <TD>0.16 Mb</TD>
+    <TD>0.3  Mb</TD>
+    <TD>0.15 Mb</TD>
+    <TD>1.3 Mb + obs_seq.final</TD></TR>
+<TR><TD>T21</TD>
+    <TD>2.5 Mb</TD>
+    <TD>4.5 Mb</TD>
+    <TD>1.4 Mb</TD>
+    <TD>21 Mb + obs_seq.final</TD></TR>
+<TR><TD>T42</TD>
+    <TD>10 Mb</TD>
+    <TD>18 Mb</TD>
+    <TD>4.5 Mb</TD>
+    <TD>57 Mb + "</TD></TR>
+<TR><TD>T85</TD>
+    <TD>41 Mb</TD>
+    <TD>74 Mb</TD>
+    <TD>15 Mb</TD>
+    <TD>342 Mb + " </TD></TR>
+</TABLE>
+
+<P>
+obs_seq.final typically ranges from 50-150 Mb, independent of model resolution.
+</P>
+
+<!--==================================================================-->
+<!-- Legalese & Metadata                                              -->
+<!--==================================================================-->
+
+<A NAME="Legalese"></A>
+<HR>
+<H2>Terms of Use</H2>
+
+<P>
+DART software - Copyright &#169; 2004 - 2010 UCAR.<br>
+This open source software is provided by UCAR, "as is",<br>
+without charge, subject to all terms of use at<br>
+<a href="http://www.image.ucar.edu/DAReS/DART/DART_download">
+http://www.image.ucar.edu/DAReS/DART/DART_download</a>
+</P>
+
+<TABLE border=0 cellpadding=0 width=100% summary="">
+<TR><TD valign=top>Contact:       </TD><TD> Kevin Raeder     </TD></TR>
+<TR><TD valign=top>Revision:      </TD><TD> $Revision$ </TD></TR>
+<TR><TD valign=top>Source:        </TD><TD> $URL$ </TD></TR>
+<TR><TD valign=top>Change Date:   </TD><TD> $Date$ </TD></TR>
+<TR><TD valign=top>Change&nbsp;history:&nbsp;</TD><TD> try "svn&nbsp;log" or "svn&nbsp;diff" </TD></TR>
+</TABLE>
+
+<!--==================================================================-->
+
+</BODY>
+</HTML>

Deleted: DART/trunk/models/cam/doc/index.html
===================================================================
--- DART/trunk/models/cam/doc/index.html	2011-04-14 22:00:42 UTC (rev 4854)
+++ DART/trunk/models/cam/doc/index.html	2011-04-14 22:04:06 UTC (rev 4855)
@@ -1,550 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
-          "http://www.w3.org/TR/html4/strict.dtd">
-<HTML>
-<HEAD>
-<TITLE>DART-CAM setup </TITLE>
-<link rel="stylesheet" type="text/css" href="../../../doc/html/doc.css">
-</HEAD>
-<BODY>
-<A NAME="TOP"></A>
-
-<!--
-!  9/8/05
-!     cp new scripts from Doc_scripts to where they belong in DART
-!     mv master.html from Doc_scripts to models/cam? (then change links in model_mod.html
-!        and master.html.
-!     install FAQ into the set-up web page?  Use Justin's questions to start
-!     more instructions about 
-!        choices of starting from single inputs/ensembles\
-!        users making their own caminput and filter_ic ensemble (or starting from single
-!           and having filter make an ensemble, so I'm not responsible for model/data consistency)
-!           message 36 in folder justinWI
-!        making synthetic obs_seq files vs using ones provided
-!        dealing with model version numbers
-!        namelist entries for DART; where are they described?  all the ..._mod.html pages
-!     commit models/cam/work/makall, or remove reference below
-!            doc/CAM/Doc_scripts/master.html (and others there?)
-!     develope a strategy for dispersing bug fixes and upgrades to users
-!
-!!See updates in /ftp/pub/raeder/DART/Hawaii_pre/README   1/6/2005
-!!
-!!Also, CAM3.0 compiled under pgf90 requires optimization -O1, since -O2
-!!and -fast yield code that doesn't verify against the lower optimization runs.
-!!Note this below.
-!!
-!! make sure scripts are in the right places, and committed.
-!!
-!! FLOW CHART SET-UP?  There are lots of steps which won't be necessary for every experiment
-!!
--->
-
-<center>
-<A HREF="#CALLINGTREE">CALLING TREE</A> /
-<A HREF="#SETUP">SET-UP</A> /
-<A HREF="#FILECONTENTS">FILE CONTENTS</A> /
-<A HREF="#OUTPUTDIRECTORY">OUTPUT DIRECTORY</A> /
-<A HREF="#HINTS">HINTS</A> /
-<A HREF="#SPACE">SPACE</A> /
-<A HREF="#Legalese">TERMS OF USE</A>
-</center>
-
-<H2>DART-CAM OVERVIEW</H2>
-<!-- version tag follows, do not edit --><P>$Id$</P>
-
-<P>
-The up-to-date overview will always be available at 
-<a href="http://www.image.ucar.edu/DAReS/DART/cgd_cam.shtml">
-http://www.image.ucar.edu/DAReS/DART/cgd_cam.shtml</a>
-<br><br>
-For the 
-<A HREF="../../../doc/html/Jamaica_release.html"> Jamaica release </A>
-the async=3 (.../input.nml:filter_nml) option 
-is no longer offered, and has been replaced by async=4.  
-This new option runs an MPI filter, which can use either single threaded or MPI CAM.  
-The single threaded option will run CAM for 1 ensemble member on 
-each processor (up to the lesser of the number of ensemble members
-or the number of processors).  
-The MPI CAM option will run CAM for each ensemble member in succession,
-using all the available processors.
-It's not possible (yet) to run several MPI CAMs at the same time, 
-each using a subset of the processors.
-<br><br>
-This new option allows users to control the assimilation through a single script,
-'job_mpi.csh',
-except for modifications for machines on which DART-CAM hasn't been tested yet.
-Job_mpi.csh has a section of user set parameters that define many aspects of
-the assimilation.  
-It uses those parameters to create a series of batch scripts, 
-one for each obs_seq.out file that will be assimilated.
-Their names have the form Exper_obsseq#.script,
-the parts of which are defined in job_mpi.csh.
-It submits all of those scripts to the batch scheduler,
-where they run in succession as resources become available.
-Each obs_seq batch script executes the programs layed out in the calling tree (below).
-<br><br>
-The async=2 option (non-MPI filter and non-MPI CAM) is still available.
-<br><br>
-These options have been tested for DART-CAM in batch submission environments 
-PBS and LSF on Linux clusters and IBM AIX.
-<br><br>
-There are, no doubt, things missing from these lists, so don't struggle too long
-before contacting raeder'at'ucar.edu.
-<br><br>
-The sequence of operations for assimilating a single obs_seq.out file follows.
-The functionality of each operation has been restricted to one "domain".
-A script/program is specific to:
-a machine where the experiment is run; 
-a model version used in the assimilation; 
-the filter version; 
-or the experiment being conducted using the choices for the previous 3.
-<br><br>
-<A HREF="../../../models/cam/model_mod.html">Go to cam/model_mod page</A> 
-</P>
-
-<A NAME="CALLINGTREE"></A>
-<HR>
-<H2>CALLING TREE</H2>
-<P>
-The calling tree for the scripts and fortran executables when running under
-async=4 is:
-</P>
-
-<TABLE border=0 cellpadding=3 width=100%>
-<TR><TH align=left>SCRIPT     </TH>
-    <TH align=left>DOMAIN     </TH>
-    <TH align=left>LOCATION OR NOTES  </TH></TR>
-
-<TR><!-- script --><TD valign=top>Exper_obsseq#.script</TD>
-    <!-- domain --><TD valign=top>experiment</TD>
-    <!--location--><TD>experiment central directory where I/O and execution are organized.</TD></TR>
-<TR><!-- script --><TD valign=top><pre>   -&#62; mpirun filter executable </pre></TD>
-    <!-- domain --><TD valign=top>filter version </TD>
-    <!--location--><TD>local disc on a compute node/processor, or a work directory
-                       in the central directory.</TD></TR>
-<TR><!-- script --><TD valign=top><pre>      -&#62; advance_model.csh</pre></TD>
-    <!-- domain --><TD valign=top> model </TD>
-    <!--location--><TD> pre-existing work subdirectory of the central directory.</TD></TR>
-<TR><!-- script --><TD valign=top><pre>         -&#62; trans_time executable</pre></TD>
-    <!-- domain --><TD valign=top> model  </TD>
-    <!--location--><TD>Translates DART time format into CAM time format</TD></TR>
-<TR><!-- script --><TD valign=top><pre>         -&#62; trans_sv_pv executable</pre></TD>
-    <!-- domain --><TD valign=top> model  </TD>
-    <!--location--><TD>Inserts DART state vector into CAM initial file</TD></TR>
-<TR><!-- script --><TD valign=top><pre>         -&#62; run_pc.csh</pre></TD>
-    <!-- domain --><TD valign=top> model </TD>
-    <!--location--><TD> Modified form of run script from CAM, now in DART </TD></TR>
-<TR><!-- script --><TD valign=top><pre>            -&#62; bld-namelist </pre></TD>
-    <!-- domain --><TD valign=top> model </TD>
-    <!--location--><TD> uses namelistin and results of trans_time to make CAM namelist </TD></TR>
-<TR><!-- script --><TD valign=top><pre>            -&#62; advance of CAM</pre></TD>
-    <!-- domain --><TD valign=top> model  </TD>
-    <!--location--><TD>Single threaded or MPI CAM </TD></TR>
-<TR><!-- script --><TD valign=top><pre>         -&#62; trans_pv_sv executable</pre></TD>
-    <!-- domain --><TD valign=top>  </TD>
-    <!--location--><TD>Translates CAM fields in to DART state vector</TD></TR>
-<TR><!-- script --><TD valign=top><pre>   -&#62; qsub auto_re2ms.csh</pre></TD>
-    <!-- domain --><TD valign=top> machine </TD>
-    <!--location--><TD> Central/Experiment/obs_seq_output_directory(i.e. 01_01) </TD></TR>
-</TABLE>
-
-
-<!-- <A NAME="FLOW CHART"></A>
-<HR>
-<H2>FLOW CHART</H2>
-<P>
-The tasks of each script, and communication between them,  are summarized in a 
-<A HREF="flow_5.xfig.gif" > flow chart </A>.
-Note the key in the lower right corner.  The specific mechanisms for transferring control and
-moving files will be found in the scripts.
-</P>
--->
-
-<!--===============================================-->
-<A NAME="SETUP"></A>
-<!--===============================================-->
-
-<HR>
-<H2>EXPERIMENT SET-UP</H2>
-<P>
-Instructions for setting up a DART-CAM assimilation.
-</P>
-
-<OL TYPE="A">
-   <li>DART
-   <OL TYPE="1">
-      <LI>In .../DART/mkmf link mkmf.template to 
-          the mkmf.template.xxxx which is appropriate for your computer 
-          (or make one of your own).  </LI>
-      <LI>Since you have this file you've already checked out DART.  <BR>
-          Edit ...DART/models/cam/work/input.nml:preprocess_nml:input_files 
-          to choose obs_def source code files to load via the preprocessor.  
-          The default file (obs_def_reanlysis_bufr_mod.f90) will handle 
-          observations from NCEP reanalysis BUFR files.  (Warning; assimilating the
-          obs in the example GPS obs_seq.out file available from the 
-          <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets">DART large file site</A>
-          requires loading more than just the obs_def_gsp.mod.f90.)</LI>
-      <LI>Script DART/models/cam/work/workshop_setup.csh is recommended for compiling 
-          the package.  
-          It is set up to compile and run the preprocessor, 
-          compile filter and wakeup_filter as MPI processes (async=4),
-          and compile all other executables as single threaded.  
-          If you want to use async=2, remove the -mpi flag from the calls 
-          to mkmf_filter and mkmf_wakeup_filter. </LI>
-   </OL></li>
-
-   <li>CAM
-   <OL TYPE="1">
-      <LI>Put the DART modifications 
-          (.../DART/models/cam/Cam[version#]_DART_mods/*),
-          and any other CAM modifications you have, 
-          in the CAM directory of user-provided modifications.
-          CAM's "configure" will use these during compilation. 
-          Configure and compile CAM at the resolution/dynamical core desired.  
-          Do this in a directory where all your CAM versions will reside, 
-          here called CamCentral.</LI>
-<!--             (/home/raeder/Cam3.0/Cam3_0_7_DART_mods) -->
-      <LI>Put the cam executable and config_cache.xml in a subdirectory of
-          the standard cam executable directory (CamCentral/CAM_version/models/atm/cam/bld),
-          which I'll call CAM_config_1-mpi (leave off the -mpi for single threaded CAM).  
-          Job_mpi.csh has a variable "CAMsrc" that should point to that location.</LI>
-      <LI>Build a CAM namelist and call it 'namelistin' containing (among the other/default 
-          variables defined by the CAM build-namelist): 
-          <pre>
-          &amp;camexp
-          ncdata         = 'caminput.nc'
-          caseid         = 'whatever_you_want'
-          nsrest         = 0
-          calendar       = 'GREGORIAN'
-          inithist       = 'ENDOFRUN'
-          /
-          &amp;clmexp
-          finidat        = 'clminput.nc'
-          /
-          </pre>
-          and NOT containing ...
-          <pre>
-          &#62;  nhtfrq         = 4368
-          &#62;  start_ymd      = 20020901
-          &#62;  start_tod      = 0
-          &#62;  stop_ymd       = 20021201
-          &#62;  stop_tod       = 0
-          </pre>
-          The CAM build-namelist script will use this to make a new namelist with the correct
-          forecast parameters, named 'namelist'.
-          Put this in CamCentral/CAM_version/models/atm/cam/bld/CAM_config_1-mpi.</LI>
-
-      <LI>Confirm that you have access to all the CAM input files listed in namelistin, 
-          or suitable replacements.</LI>
-   
-      <LI>Put an appropriate CAM initial file in CAM_config_1-mpi and call it caminput.nc.
-          Put a matching CLM initial file there and call it clminput.nc.
-          Only the grid information is used from these files, so their dates don't matter.
-          </LI>
-   </OL></li>
-
-   <li>Set up an experiment central directory ("Central" here) where there's 
-   <A HREF="#SPACE">enough space</A> for output.</li>
-
-   <li>Copy the DART namelist file (<em class=file>DART/models/cam/work/input.nml</em>)
-   into one called "<em class=file>input_1.nml</em>" in Central</li>
-
-   <li>Copy <em class=file>DART/models/cam/shell_scripts/job_mpi.csh</em> to Central</li>
-
-   <li>EXPERIMENT
-   <OL TYPE="1">
-      <LI>Edit job_mpi.csh.  It has more detailed instructions about how to:
-          <UL><LI>define experiment output directory names</LI>
-              <LI>tell it whether CAM is MPI</LI>
-              <LI>provide directory name of CAM executable and associated files</LI>
-              <LI>define which obs_seq.out files to use.
-                     Some pre-made examples can be found 
-                     <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets"> here.</A></LI>
-              <LI>find and link to the obs_seq.out files</LI>
-	      <LI>find and link to filter_ic[.#] files.
-		     Such an ensemble can be created from CAM initial files using
-		     <A HREF="./trans_pv_sv_time0_instr.html">
-		     .../DART/models/cam/trans_pv_sv_time0.f90</A>. </LI>
-              <LI>define which CAM and CLM initial files to use.  
-                     Some initial and filter_ic files are available from 
-                     <A HREF="http://www.image.ucar.edu/pub/DART/CAM">DART large file site</A></LI>
-              <LI>define which DART version to use</LI>
-              <LI>define resources to be requested by each of the obs_seq_#.script scripts</LI>
-          </UL>
-      </LI>
-   
-      <LI>Edit input_1.nml to configure the assimilation of the first obs_seq.out.
-          Be sure that 
-          <UL>
-              <LI>filenames listed in it agree with what's required by job_mpi.csh
-                     and what is or will be available in the Central directory. </LI>
-              <LI>start from restart is .true. if you have an initial ensemble,
-                     .false. otherwise.</LI>
-              <LI>init_time_days is the first Gregorian day of your assimilation.
-		 This can be obtained from the program 
-		 <A HREF="./trans_date_to_dart_instr.html">
-		 ...DART/models/cam/trans_date_to_dart.f90 </A> </LI>
-              <LI>init_time_seconds is the first second of your assimilation (usually 0).</LI>
-          </UL>
-      </LI>
-
-      <LI>Copy input_1.nml to input_n.nml and edit input_n.nml. 
-              Set start_from_restart to .true.  
-              Change init_time_days = -1, init_time_seconds = -1.</LI>
-      <LI>If you need to make up synthetic observations get create_obs_sequence, 
-             create_fixed_network_seq and perfect_model_obs.  
-             Otherwise, use the obs_seq.out files provided 
-             <A href="http://www.image.ucar.edu/pub/DART/Obs_sets">here</A></LI>
-      <LI> Run the experiment by executing job_mpi.csh, 
-	       either through the batch queue or interactively. </LI>
-   </OL></li>
-</OL>
-<!--  <LI>(MORE? my conventions to make them work with job.csh? A whole new topic? )</LI> -->
-
-<!--===============================================-->
-<A NAME="FILECONTENTS"></A>
-<HR>
-<H2>FILE CONTENTS</H2>
-<P>
-See the <A HREF="../../../doc/html/Jamaica_release.html"> Jamaica release notes </A>
-for diagrams and flowcharts showing DART under the various async options.
-
-The contents of some of the files which appear there are listed here.
-# refers to the list of ensemble members.
-</P>
-
-<TABLE border=0 cellpadding=3 width=100%>
-<TR><TH align=left>FILE   </TH>
-    <TH align=left>CONTENTS or PURPOSE </TH></TR>
-<TR><!--file--><TD valign=top>assim_model_state_ic#</TD>
-    <!--purpose--><TD>the state vectors to be used as initial conditions
-    for the next model advance.  Contains the state vector time, the target

@@ Diff output truncated at 40000 characters. @@


More information about the Dart-dev mailing list