[Dart-dev] [5010] DART/trunk: Various fixes for html files, including:

nancy at ucar.edu nancy at ucar.edu
Tue Jun 14 11:45:41 MDT 2011


Revision: 5010
Author:   nancy
Date:     2011-06-14 11:45:41 -0600 (Tue, 14 Jun 2011)
Log Message:
-----------
Various fixes for html files, including:
- No spaces in link names (e.g. <A NAME="NO GOOD">)
- all & changed to &amp;
- misspelled table attribute 'celpadding' -> 'cellpadding'
- list items with tables or embedded lists need to have
  the tags be:  <LI>stuff 
                   <table> or another <list>
                </LI>
    and not:    <LI>stuff</LI> 
                  other stuff outside any <LI> sections
- not sure if this is because of the standard or not, but
  the validators don't like tables or lists inside paragraph
  tags.  so close the pending paragraph before other tags.

Modified Paths:
--------------
    DART/trunk/diagnostics/threed_sphere/obs_diag.html
    DART/trunk/doc/html/template.html
    DART/trunk/location/threed_sphere/location_mod.html
    DART/trunk/models/cam/doc/cam_guidelines.html
    DART/trunk/models/cam/model_mod.html
    DART/trunk/models/lorenz_63/model_mod.html
    DART/trunk/models/wrf/WRF_DART_utilities/dart_to_wrf.html
    DART/trunk/models/wrf/WRF_DART_utilities/replace_wrf_fields.html
    DART/trunk/obs_def/obs_def_mod.html
    DART/trunk/utilities/model_mod_check.html

-------------- next part --------------
Modified: DART/trunk/diagnostics/threed_sphere/obs_diag.html
===================================================================
--- DART/trunk/diagnostics/threed_sphere/obs_diag.html	2011-06-14 17:30:28 UTC (rev 5009)
+++ DART/trunk/diagnostics/threed_sphere/obs_diag.html	2011-06-14 17:45:41 UTC (rev 5010)
@@ -42,8 +42,8 @@
    to the observation and several quantities are calculated. These quantities
    are then saved in a netCDF file that has all the metadata to create
    meaningful figures.
-   <br />
-   <br />
+</P>
+<P>
    Each <em class="file">obs_seq.final</em> file contains an observation 
    sequence that has multiple 'copies' of the observation. One copy is
    the actual observation, another copy is the prior ensemble mean estimate 
@@ -57,16 +57,16 @@
    'observation'. It may, in some instances be useful to compare against
    the 'truth', in which case you will have to hand-edit the code and 
    recompile. Caveat emptor.
-   <br />
-   <br />
+</P>
+<P>
    Each ensemble member applies a forward operator to the state to compute
    the "expected" value of an observation. Given multiple estimates of 
    the observation, several quantities can be calculated. It is possible to
    compute the expected observations from the state vector before 
    assimilating (the "guess", "forecast", or "prior") or after the
    assimilation (the "analysis", or "posterior"). 
-   <br />
-   <br />
+</P>
+<P>
    Even with <em class="file">input.nml</em>:<em class="code">filter_nml:num_output_obs_members</em> 
    set to <em class="code">0</em>; the full [prior,posterior] ensemble mean and
    [prior,posterior] ensemble spread are preserved in the 
@@ -80,6 +80,7 @@
    In this case, the <em class="file">obs_seq.final</em> file contains enough 
    information to calculate a rank histograms, verify forecasts, etc. 
    The ensemble means are still used for many other calculations.
+</P>
    <table width="100%"><tr>
    <td rowspan=2><a href="../../doc/html/obs_diag_evolution_example.png"><img src="../../doc/html/obs_diag_evolution_example.png" width="300"></a>
    <td rowspan=2><a href="../../doc/html/obs_diag_profile_example.png"><img src="../../doc/html/obs_diag_profile_example.png" width="300"></a>
@@ -88,7 +89,8 @@
    <tr><td><a href="../../doc/html/RankHistogram_matlab.png"><img src="../../doc/html/RankHistogram_matlab.png" width="200"></a></td>
    </tr>
    </table>
-   <br />
+
+<P>
    There are two versions of this program, one for high-order models that have
    real observations and another for low-order models. Since this program
    is fundamentally interested in the response as a function of region, the 
@@ -98,13 +100,13 @@
    to investigate. The low-order models output simple text files instead of
    netCDF files - the intent is to move these toward netCDF files in the near
    future.
-   <br />
-   <br />
+</P>
+<P>
    Identity observations (only possible from "perfect model experiments") 
    are already explored with state-space diagnostics,
    so <em class=program>obs_diag</em> simply skips them.
-   <br />
-   <br />
+</P>
+<P>
    <em class="program">obs_diag</em> is designed to explore the effect of 
    the assimilation in three ways; 1) as a function of time for a particular 
    variable and level (this is the figure on the left), 2) as a 
@@ -124,15 +126,15 @@
    The rank histogram information can easily be plotted with <a href="http://meteora.ucsd.edu/~pierce/ncview_home_page.html">ncview</a>,
    a free third-party piece of software or with 
    <a href="https://proxy.subversion.ucar.edu/DAReS/DART/trunk/diagnostics/matlab/plot_rank_histogram.m">plot_rank_histogram.m</a>.
-   <br />
-   <br />
+</P>
+<P>
    <em class="program">obs_diag</em>
    is not explicitly designed to explore OSSE's.  In general, it is 
    used for 'real' observations and looks through the metadata for
    the observation sequence to identify which 'copy' is labeled 'observation'.
    It is THAT copy that is used as the noisy estimate of the truth.
-   <br />
-   <br />
+</P>
+<P>
    The observation sequence files contain only the time of the observation, 
    nothing of the assimilation interval, etc. - so it requires user guidance 
    to declare what sort of temporal binning for the temporal evolution 
@@ -141,8 +143,8 @@
    the observation sequence. The actual algorithm is that the user input for
    the start date and bin width set up a sequence that ends in one of two ways ...
    the last time is reached or the number of bins has been reached. 
-   <br />
-   <br />
+</P>
+<P>
    <em class=program>obs_diag</em> reads <em class=file>obs_seq.final</em>
    files and calculates the following quantities (in no particular order) 
    for an arbitrary number of regions and levels. It is necessary to query
@@ -808,7 +810,7 @@
    explore the assimilation. By way of an example, we will NOT be using 
    outlier observations in the rank histogram. Lets presume that all your 
    <em class=file>obs_seq.final</em> files are in alphabetically-nice directories:</td>
-   <td>&nbsp;&nbsp;<img src="../../doc/html/RankHistogram_matlab.png" width="200"></a></td>
+   <td>&nbsp;&nbsp;<img src="../../doc/html/RankHistogram_matlab.png" width="200"></td>
 </tr>
 </table>
 <pre>
@@ -901,7 +903,8 @@
   
 <H3 class=indent1><em class=removed>Example: plotting locations</em> deprecated</H3>
 <P>
-<strong>please convert your observation sequence file to netCDF format with <a href="https://proxy.subversion.ucar.edu/DAReS/DART/trunk/obs_sequence/obs_seq_to_netcdf.html">obs_seq_to_netcdf</a></strong> and use 
+<strong>please convert your observation sequence file to netCDF format with <a href="https://proxy.subversion.ucar.edu/DAReS/DART/trunk/obs_sequence/obs_seq_to_netcdf.html">obs_seq_to_netcdf</a>
+and use 
 <a href="https://proxy.subversion.ucar.edu/DAReS/DART/trunk/diagnostics/matlab/plot_obs_netcdf.m">plot_obs_netcdf.m</a></strong>.
 </P>
 

Modified: DART/trunk/doc/html/template.html
===================================================================
--- DART/trunk/doc/html/template.html	2011-06-14 17:30:28 UTC (rev 5009)
+++ DART/trunk/doc/html/template.html	2011-06-14 17:45:41 UTC (rev 5010)
@@ -96,6 +96,7 @@
 
 <!-- repeat until done -->
 </TABLE>
+</div>
 
 <!--==================================================================-->
 
@@ -264,8 +265,8 @@
 <span style="font-weight: bold;">volume</span>, pages.<br />
 <a href="http://dx.doi.org/nn.yyyy/rest_of_number"
 target="_blank" >
-doi: nn.yyyy/rest_of_number </a></li>
-<br />
+doi: nn.yyyy/rest_of_number </a><br />
+</li>
 </ul>
 
 <!--==================================================================-->

Modified: DART/trunk/location/threed_sphere/location_mod.html
===================================================================
--- DART/trunk/location/threed_sphere/location_mod.html	2011-06-14 17:30:28 UTC (rev 5009)
+++ DART/trunk/location/threed_sphere/location_mod.html	2011-06-14 17:45:41 UTC (rev 5010)
@@ -103,6 +103,7 @@
 </P> <P>
 The expected calling sequence of the <em class=code>get_close</em> routines 
 is as follows:
+</P>
 <pre>
 <em class=code>
 call get_close_maxdist_init()  ! is called before get_close_obs_init()
@@ -113,6 +114,7 @@
 call get_close_obs_destroy()
 </em>
 </pre>
+<P>
 In the <em class=file>threed_sphere</em> implementation the
 first routine initializes some data structures, the second one
 bins up the list of locations, and then the third one is called
@@ -154,13 +156,15 @@
 a common case is for the model_mod to want to supply additions to
 the get_close_obs() routine only.  At the top of the model_mod code
 it would declare:
+</P>
 <pre>
 <em class=code>
-use location_mod, only :: location_get_close_obs => get_close_obs,    &
-                          get_close_maxdist_init, get_close_obs_init, &
+use location_mod, only :: location_get_close_obs => get_close_obs,    &amp;
+                          get_close_maxdist_init, get_close_obs_init, &amp;
                           get_close_obs_destroy
 </em>
 </pre>
+<P>
 That makes calls to the maxdist_init, init, and destroy routines simply pass
 through to the code in the location_mod, but the model_mod must supply
 a get_close_obs() subroutine.  When it wants to call the code in the 

Modified: DART/trunk/models/cam/doc/cam_guidelines.html
===================================================================
--- DART/trunk/models/cam/doc/cam_guidelines.html	2011-06-14 17:30:28 UTC (rev 5009)
+++ DART/trunk/models/cam/doc/cam_guidelines.html	2011-06-14 17:45:41 UTC (rev 5010)
@@ -57,11 +57,11 @@
 !!
 -->
 
-<A HREF="#CALLING TREE">CALLING TREE</A> /
-<A HREF="#SET-UP">SET-UP</A> /
-<A HREF="#INITIAL FILES">INITIAL ENSEMBLE</A> /
-<A HREF="#FILE CONTENTS">FILE CONTENTS</A> /
-<A HREF="#OUTPUT DIRECTORY">OUTPUT DIRECTORY</A> /
+<A HREF="#CALLINGTREE">CALLING TREE</A> /
+<A HREF="#SETUP">SET-UP</A> /
+<A HREF="#INITIALFILES">INITIAL ENSEMBLE</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="#FLOW CHART">FLOW CHART</A> / -->
@@ -130,19 +130,19 @@
 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:
+</P>
 <UL>
    <LI> a machine where the experiment is run (e.g. NCARS IBM Power6 'bluefire'); </LI>
    <LI> a model version used in the assimilation (e.g. CAM 4.0.1); </LI>
    <LI> the filter version; </LI>
    <LI> or the experiment being conducted using the choices for the previous 3.</LI>
 </UL>
-</P>
 
 <P>
 <A HREF="../model_mod.html">Go to cam/model_mod page</A>  
 </P> 
 
-<A NAME="CALLING TREE"></A>
+<A NAME="CALLINGTREE"></A>
 <HR>
 <H2>CALLING TREE</H2>
 
@@ -190,7 +190,7 @@
     <!--location--><TD> Central/Experiment/obs_####. Archives diagnostic output. </TD></TR>
 <TR><!-- script --><TD valign=top><pre>      -> analyses2initial.csh</pre></TD>
     <!-- domain --><TD valign=top> machine </TD>
-    <!--location--><TD> Central/Experiment/obs_####/H##  Generates analyses in CAM,CLM,CICE initial files.  May also save CAM .h0. history files (but <A HREF="#SMALL H0"> make them small </A>!) </TD></TR>
+    <!--location--><TD> Central/Experiment/obs_####/H##  Generates analyses in CAM,CLM,CICE initial files.  May also save CAM .h0. history files (but <A HREF="#SMALLH0"> make them small </A>!) </TD></TR>
 <TR><!-- script --><TD valign=top><pre>         -> NetCDF operators </pre></TD>
     <!-- domain --><TD valign=top> machine </TD>
     <!--location--><TD> Central/Experiment/obs_####/H##  Averaging of CAM,CLM,CICE fields. </TD></TR>
@@ -201,7 +201,7 @@
 </TABLE>
 
 
-<!-- <A NAME="FLOW CHART"></A>
+<!-- <A NAME="FLOWCHART"></A>
 <HR>
 <H2>FLOW CHART</H2>
 <P>
@@ -214,7 +214,7 @@
 
 
 <!--===============================================-->
-<A NAME="SET-UP"></A>
+<A NAME="SETUP"></A>
 <HR>
 <H2>EXPERIMENT SET-UP</H2>
 <P>
@@ -222,25 +222,28 @@
 Instructions for setting up a DART/CAM in "stand-alone" mode assimilation.
 This section does not describe setting up assimilations within the CESM
 framework (available in late 2011?).
+</P>
 
 <BR>
 
-<OL TYPE="A">   
+<OL TYPE=A>   
    
-   <LI>DART</LI>
-      <OL TYPE="0">
+   <LI>DART
+      <OL TYPE=1>
          <LI>Register and check out DART from the 
-             <A href="http://www2.image.ucar.edu/forms/dart-software-download">download site</A>.  <BR>
+             <A href="http://www2.image.ucar.edu/forms/dart-software-download">download site</A>.  </LI>
          <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> cd to .../DART/models/cam/work and edit input.nml:preprocess_nml:input_files 
              to choose obs_def source code files to load via the preprocessor.  
 <!-- ??? link to obs_def_mod.html? -->
-             The default file (obs_def_reanalysis_bufr_mod.f90) will handle 
-	     observations from NCEP reanalysis BUFR files.  (Warning; assimilating the
+             The default file <em class=file>
+             <a href="../../../../obs_def/obs_def_reanalysis_bufr_mod.f90">
+             obs_def/obs_def_reanalysis_bufr_mod.f90</a></em> 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 Obs_sets site</A>
+             <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets">DART Obs_sets site</A>
 	     requires loading more than just the obs_def_gps_mod.f90.)</LI>
          <LI>Script DART/models/cam/work/quick_build.csh is recommended for compiling 
              the package.  
@@ -254,9 +257,10 @@
              to fit in the memory of a single processor, so this is only suitable
              for low resolution, small ensemble testing.
      </OL>
+     </LI>
 
-   <LI> CAM </LI>
-      <OL TYPE="1">
+   <LI> CAM 
+      <OL TYPE=1>
    
          <LI> Put the DART modifications 
              (.../DART/models/cam/Cam[version#]_DART_mods.tar),
@@ -282,33 +286,33 @@
 <!-- ??? Links to discussions of these and other possible namelistin entries? -->
              <pre>
              CAM 3.1 - 3.5
-                &camexp
+                &amp;camexp
                  ncdata         = 'caminput.nc'
                  caseid         = 'whatever_you_want'
                  nsrest         = 0
                  calendar       = 'GREGORIAN'
                  inithist       = 'ENDOFRUN'
                 /
-                &clmexp
+                &amp;clmexp
                  finidat        = 'clminput.nc'
                 /
              CAM 3.6 - 4.?
-                &seq_timemgr_inparm
+                &amp;seq_timemgr_inparm
                  calendar       = 'GREGORIAN'
                  restart_n      = 12
                  restart_option = 'nsteps'
                  stop_option    = 'date'
                 /
-                &cam_inparm
+                &amp;cam_inparm
                  ncdata   = 'caminput.nc'
                  inithist = 'ENDOFRUN'
                  div24del2flag = 4,
                  nhtfrq = -6
                 /
-                &clm_inparm
+                &amp;clm_inparm
                  finidat = 'clminput.nc'
                 /
-                &dom_inparm
+                &amp;dom_inparm
                  bndtvs  = '/your/SST/file/here/resolution/cam_version/sst_HadOIBl_bc_1.9x2.5_1949_2007.nc'
                  sstcyc  = .false.
                 /
@@ -320,9 +324,9 @@
                 >  stop_ymd       = 20021201
                 >  stop_tod       = 0
              </PRE>
-             <A NAME="SMALL H0"></A>
+             <A NAME="SMALLH0"></A>
              If you want to make the .h0. history files small and focused, for archiving:
-                add to &cam_inparm
+                add to &amp;cam_inparm
              <PRE>
                    empty_htapes    = .true.,
                    mfilt           =  1
@@ -362,28 +366,28 @@
              (Matching is important; CAM checks that the CLM initial file has the expected
               grid parameters.)
              Only the grid information is used from these files, so their dates don't matter.</LI>
+      </OL>
+      </LI>
+
    
-      </OL>
-   <LI> Set up an experiment central directory ("Central" here) where there's 
-   enough <A HREF="#SPACE">space </A> for output.  </LI>
-         <LI>Copy the DART namelist file (DART/models/cam/work/input.nml)
+       <LI> Set up an experiment central directory ("Central" here) where there's 
+              enough <A HREF="#SPACE">space </A> for output.  </LI>
+       <LI>Copy the DART namelist file (DART/models/cam/work/input.nml)
              into one called "input_1.nml" in Central.</LI>
-   
-         <LI>Copy DART/models/cam/shell_scripts/job_mpi.csh  to Central </UL>
+       <LI>Copy DART/models/cam/shell_scripts/job_mpi.csh  to Central </LI>
 
-   <LI>EXPERIMENT</LI>
+   <LI>EXPERIMENT
    
-       <OL TYPE="1">
+       <OL TYPE=1>
 
           <LI>If you need to make up synthetic observations get create_obs_sequence, 
              create_fixed_network_seq and perfect_model_obs and learn how to use them.  
-<!-- ??? links? -->
-             Otherwise, use the obs_seq.out files provided 
-             <A href:"http://www.image.ucar.edu/pub/DART/Obs_sets ">here</A>
+             Otherwise, use the obs_seq.out files provided  
+             <A href="http://www.image.ucar.edu/pub/DART/Obs_sets">here</A>
              or similar 'real observations' files.
           </LI>
           <LI>Edit job_mpi.csh.  It has more detailed instructions about how to:
-              <UL TYPE=" ">
+              <UL>
                  <LI>define experiment output directory names</LI>
                  <LI>tell it whether CAM is MPI or OpenMP</LI>
 <!-- ??? OpenMP updates; more here?   and in scripts -->
@@ -394,9 +398,9 @@
                      <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets"> here.</A></LI>
                  <LI>find and provide the path name of the obs_seq.out files</LI>
 		 <LI>find and provide the path name of the filter_ic[.#] files.
-		     Such an ensemble can be created from <A HREF="#INITIAL FILES">CAM initial files</A>
+		     Such an ensemble can be created from <A HREF="#INITIALFILES">CAM initial files</A>
                      using <A HREF="../cam_to_dart.html">
-		     .../DART/models/cam/cam_to_dart.f90</A>. </LI>
+		     cam_to_dart</A>. </LI>
                  <LI>define which CAM and CLM initial files to use.  
                      Some initial and filter_ic files are available from 
                      the NCAR Mass Store:/RAEDER/DAI/CAM_init/[Resol]_[model_version] and more from
@@ -409,7 +413,7 @@
    
           <LI>Edit input_1.nml to configure the assimilation of the first obs_seq.out.
               Be sure that 
-              <UL TYPE=" ">
+              <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,
@@ -423,19 +427,21 @@
               </UL>
           </LI>
           <LI>Copy input_1.nml to input_n.nml and edit input_n.nml. 
-<!-- ??? Nancy has a plan for only needing 1 input.nml.  But will that work if the initial
-         ensemble has the wrong time(s)? -->
+<!-- Using the 'restart_file_tool' you can set the data times on the restart files.
+     Using the 'fill_inflation_restart' tool you can initialize inflation restarts.
+     Then you can have a single 'input.nml' which you use for all job steps.  -->
               Set start_from_restart to .true.  
               Change init_time_days = -1, init_time_seconds = -1.</LI>
 	  <LI> Run the experiment by executing job_mpi.csh, 
 	       either through the batch queue or interactively. </LI>
 <!--          <LI>(MORE?  my conventions to make them work with job.csh?   or a whole new topic; )</LI> -->
        </OL>
+       </LI>
 </OL>
-</P>
 
+
 <!--===============================================-->
-<A NAME="INITIAL FILES"></A>
+<A NAME="INITIALFILES"></A>
 <HR>
 <H2>CAM INITIAL ENSEMBLES</H2>
 <P>
@@ -446,10 +452,10 @@
 All of these strategies require converting CAM initial file(s) into 
       filter_ic.#### files, which is done by the 
       <A HREF="../cam_to_dart.html"> same method.  </A>
-<OL TYPE="1">
+<OL TYPE=1>
 <LI> MINIMAL WORK; Get an ensemble of filter and CAM/CLM[/CICE] initial files
      from someone else (DART has a few dates for a few model cores and resolutions
-     <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets ">here</A>.
+     <A HREF="http://www.image.ucar.edu/pub/DART/Obs_sets">here</A>.
      This limits the investigations you can undertake,
      but is the fastest and cheapest way to start assimilating.
 </LI>
@@ -466,13 +472,13 @@
      This will make the ensemble advance long enough to balance the fields,
      without being perturbed by the assimilation of any observations.
 <PRE>
-&filter_nml
+&amp;filter_nml
    ...
    start_from_restart       = .false.,
    restart_in_file_name     = "filter_ic",
    ...
 /
-&model_nml
+&amp;model_nml
    ...
    pert_names         = 'T       ','US      ','VS      '
    pert_sd           = 1.0d0,2.0d0,2.0d0
@@ -526,7 +532,7 @@
 </OL>
 
 <!--===============================================-->
-<A NAME="FILE CONTENTS"></A>
+<A NAME="FILECONTENTS"></A>
 <HR>
 <H2>FILE CONTENTS</H2>
 <P>
@@ -537,6 +543,7 @@
 
 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>
@@ -602,15 +609,14 @@
    are derived.  </TD></TR>
 
 </TABLE>
-</P>
 
 <!--===============================================-->
-<A NAME="OUTPUT DIRECTORY"></A>
+<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>
@@ -662,7 +668,8 @@
      to be averaged for analyses archiving by auto_diag2hpss_LSF.csh.</TD></TR>
 </TABLE>
 
-<BR><pre>
+<BR>
+<pre>
 A typical pathname for a restart file in my case would be:
 /scratch/raeder/T21x80/Taper1/obs_0003/DART/filter_ic#
                 |      |      |        |    restart file(s)
@@ -672,26 +679,26 @@
                 Central directory (resolution x num_ens_members)
 </pre>
 
-<BR><BR>
+<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>
-
 In the following, MPI filter uses all of the requested processors.
 There is flexibility in how the ensemble of CAMs uses them.
 The choice of async and number of processors to use 
 will depend on the memory available on each node, 
 as well as the number of processors available.
 See also models/cam/doc/html/filter_async_modes.html in the DART code tree, after registering.
+</P>
 
-<BR><BR>
+<P>
 For async = 2 use the ensemble size, available compute nodes, processors/node  ,
 and memory/node to figure how many nodes to request.  
 Make this request in job_mpi.csh.  
@@ -699,51 +706,51 @@
 with an ensemble of 80 members (recommended), it's efficient to request 5 (or 10) nodes.
 This will advance the single-process CAMs in 2 (or 1) batches of 40 (80).  
 That's assuming that each node has the memory to accomodate 8 CAMs.
+</P>
 
-<BR><BR>
+<P>
 async = 4 runs an ensemble of pure-MPI CAMs 1 at a time and is usually a poor choice for CAM 
 assimilations because the start-up process for CAM is single process
 and takes significant time.  
 So all but one of the processors wait a long time while CAM is setting itself up,
 then they all work for a short time to make the short forecast, 
 and then repeat for the next ensemble member.
+</P>
 
-<BR><BR>
+<P>
 async = 3 is part way between async = 2 and 4.  
 CAM must be compiled with pure OpenMP parallelism.
 Then the MPI filter can execute multiple CAMs simultaneously on several processors each.
 The start-up for each is still a single process, 
 but a smaller fraction of the processors wait.  
 This mode will make reasonably efficient use of hundreds of processors.
+</P>
 
-<BR><BR>
-
+<P>
 Each batch of restart data can be saved to a mass store using (a modified) 
 auto_re2hpss and retrieved using models/cam/full_experiment/hpss2restart.  
 Execute the commands with no arguments to see instructions.  
 Then 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 main computer.
+</P>
 
-
-<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>
-
+<P>
 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>
 
 
@@ -751,9 +758,10 @@
 <A NAME="SPACE"></A>
 <HR>
 <H2>SPACE REQUIREMENTS</H2>
+
 <P>
-
 Space requirements (Mb per ensemble member) for several CAM resolutions.
+</P>
 
 <BR><BR>
 
@@ -772,9 +780,10 @@
 <TR><TD>FV0.9x1.25 CAM5 trop_mam3</TD><TD> 80. </TD><TD>500. </TD><TD> 205. </TD><TD> ???  + " </TD></TR>
 </TABLE>
 
-obs_seq.final typically ranges from 50-150 Mb, independent of model resolution.
-Compression can meaningfully reduce the size of the NetCDF and obs_seq.final files for archiving.
-
+<P>
+obs_seq.final typically ranges from 50-150 Mb, independent of model
+resolution.  Compression can meaningfully reduce the size of the NetCDF and
+obs_seq.final files for archiving.  
 </P>
 
 <P>

Modified: DART/trunk/models/cam/model_mod.html
===================================================================
--- DART/trunk/models/cam/model_mod.html	2011-06-14 17:30:28 UTC (rev 5009)
+++ DART/trunk/models/cam/model_mod.html	2011-06-14 17:45:41 UTC (rev 5010)
@@ -110,16 +110,16 @@
 Help with several aspects of
 <A HREF="doc/cam_guidelines.html" > setting up assimilation experiments </A> 
 using CAM and parallel architecture computers is available:
+</P>
 <UL>
-    <LI> <A HREF="doc/cam_guidelines.html#SET-UP"> experiment set-up </A> </LI>
-    <LI> <A HREF="doc/cam_guidelines.html#INITIAL FILES">creating initial ensembles </A> </LI>
-    <LI> <A HREF="doc/cam_guidelines.html#CALLING TREE"> script and executable calling tree </A> </LI>
-    <LI> <A HREF="doc/cam_guidelines.html#OUTPUT DIRECTORY"> output directory structure for use by obs_diag </A> </LI>
-    <LI> <A HREF="doc/cam_guidelines.html#FILE CONTENTS"> file contents and purposes </A> </LI>
+    <LI> <A HREF="doc/cam_guidelines.html#SETUP"> experiment set-up </A> </LI>
+    <LI> <A HREF="doc/cam_guidelines.html#INITIALFILES">creating initial ensembles </A> </LI>
+    <LI> <A HREF="doc/cam_guidelines.html#CALLINGTREE"> script and executable calling tree </A> </LI>
+    <LI> <A HREF="doc/cam_guidelines.html#OUTPUTDIRECTORY"> output directory structure for use by obs_diag </A> </LI>
+    <LI> <A HREF="doc/cam_guidelines.html#FILECONTENTS"> file contents and purposes </A> </LI>
     <LI> <A HREF="doc/cam_guidelines.html#HINTS"> helpful hints </A> </LI>
     <LI> <A HREF="doc/cam_guidelines.html#SPACE"> space requirements of various CAM resolutions </A> </LI>
 </UL> 
-</P>
 
 <!--==================================================================-->
 <!--=================== DESCRIPTION OF A NAMELIST  ===================-->
@@ -128,21 +128,21 @@
 <HR>
 <H2>NAMELIST</H2>
 <P>We adhere to the F90 standard of starting a namelist with an ampersand 
-'&' and terminating with a slash '/'.
+'&amp;' and terminating with a slash '/'.
+</P>
 <div class=namelist>
 <pre>
-<em class=call>namelist / model_nml / </em> &
-     output_state_vector,  model_version,  model_config_file,                &  
-       state_num_0d,   state_num_1d,   state_num_2d,   state_num_3d,         &  
-     state_names_0d, state_names_1d, state_names_2d, state_names_3d,         &
-                      which_vert_1d,  which_vert_2d,  which_vert_3d,         &
-     pert_names, pert_sd, pert_base_vals,                                    &
-     highest_obs_pressure_mb, highest_state_pressure_mb ,max_obs_lat_degree, &
+<em class=call>namelist / model_nml / </em> &amp;
+     output_state_vector,  model_version,  model_config_file,                &amp;  
+       state_num_0d,   state_num_1d,   state_num_2d,   state_num_3d,         &amp;  
+     state_names_0d, state_names_1d, state_names_2d, state_names_3d,         &amp;
+                      which_vert_1d,  which_vert_2d,  which_vert_3d,         &amp;
+     pert_names, pert_sd, pert_base_vals,                                    &amp;
+     highest_obs_pressure_mb, highest_state_pressure_mb ,max_obs_lat_degree, &amp;
      Time_step_seconds, Time_step_days, impact_only_same_kind, print_details
     
 </pre>
 </div>
-</P>
 
 <P>
 This namelist is read from a file called <em class=file>input.nml</em>
@@ -259,11 +259,11 @@
                        Default  150.0 hPa </TD></TR>
 <TR><!--contents--><TD valign=top>Time_step_seconds          </TD>
     <!--  type  --><TD valign=top>real(r8)                   </TD>
-    <!--descript--><TD>Minimum forecast duration (the part &#60; 1 day)
+    <!--descript--><TD>Minimum forecast duration (the part &lt; 1 day)
                        Default  21600 sec </TD></TR>
 <TR><!--contents--><TD valign=top>Time_step_days             </TD>
     <!--  type  --><TD valign=top>real(r8)                   </TD>
-    <!--descript--><TD>Minimum forecast duration (the part &#62; 24*3600 sec)
+    <!--descript--><TD>Minimum forecast duration (the part &gt; 24*3600 sec)
                        Default  0 days </TD></TR>
 <TR><!--contents--><TD valign=top>impact_only_same_kind             </TD>
     <!--  type  --><TD valign=top>character(len=32)                 </TD>
@@ -283,7 +283,7 @@
 
 <!--==================================================================-->
 
-<A NAME="OTHER MODULES USED"></A>
+<A NAME="OTHERMODULESUSED"></A>
 <HR>
 <H2>OTHER MODULES USED</H2>
 <PRE>
@@ -382,8 +382,7 @@
 <A NAME="static_init_model"></A>
 <div class=routine>
 <em class=call>call static_init_model( )</em>
-<pre>
-</pre></div>
+</div>
 
 <div class=indent1>
 <P>
@@ -454,7 +453,7 @@
 saves a local copy of the ensemble means which can be used for 
 computing vertical heights, for example.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>ens_mean&nbsp; &nbsp; </em></TD>
      <TD>Ensemble mean state vector</TD></TR>
  </TABLE>
@@ -495,7 +494,7 @@
 assimilation from using "time steps" which are too small.  This is because
 CAM uses a leapfrog time scheme, but the initial files store only a 
 single timestep.  The initial forecast step is a simple forward step, so if 
-repeated short forecasts (&#60; ~9 model time steps) are made, the model 
+repeated short forecasts (&lt; ~9 model time steps) are made, the model 
 becomes unstable.
 In the long run, a more general extended interface may be required that specifies 
 the models range of time stepping possibilities.
@@ -590,7 +589,7 @@
 <P>
 Reads state vector fields from a CAM initial file.  Fields are specified in model_mod.nml.
 </P>
-<TABLE width=100% border=0 summary="" celpadding=3>
+<TABLE width=100% border=0 summary="" cellpadding=3>
 <TR><TD valign=top><em class=code>file_name&nbsp; &nbsp; </em></TD>
     <TD>CAM initial file name.</TD></TR>
 <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
@@ -613,7 +612,7 @@
  <P>
  Write fields that have been updated by assimilation to the CAM 'initial' file.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>file_name&nbsp; &nbsp; </em></TD>
      <TD>Name of CAM initial file to which var will be written.</TD></TR>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
@@ -694,7 +693,7 @@
  <P>
  Insert CAM fields (N-D) into DART state vector array (1-D)
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
      <TD>Structure containing all the fields of the state vector.</TD></TR>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
@@ -717,7 +716,7 @@
  <P>
  Extract CAM fields (N-D) from state vector (1-D).
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
      <TD>DART state vector.</TD></TR>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
@@ -766,9 +765,9 @@
 Currently namelist variables <em class="code">highest_obs_pressure_mb</em> and
 <em class="code">highest_state_pressure_mb</em> control this.
 All observations on height and level are handled automatically, using the 
-ensemble mean for calculations. The influence declines 
+ensemble mean for calculations. For CAM with 26 vertical levels, the influence declines 
 to 0 above model level 6 for <em class="code">highest_obs_pressure_mb = 150</em>
-( &#126; model level 12).
+( ~&nbsp;model level 12).
 </P>
 </div>
 
@@ -912,8 +911,7 @@
 <A NAME="end_model"></A>
 <div class=routine>
 <em class=call>call end_model( )</em>
-<pre>
-</pre></div>
+</div>
 
 <div class=indent1>
 <P>
@@ -1040,7 +1038,7 @@
  <P>
  Gets the number of lons, lats and levels from a netcdf CAM initial file
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>file_name&nbsp; &nbsp; </em></TD>
      <TD>CAM initial file.</TD></TR>
  <TR><TD valign=top><em class=code>num_lons&nbsp; &nbsp; </em></TD>
@@ -1070,7 +1068,7 @@
  # = 1,2,3 for the numbers of dimensions of the variables.
  </P>
 
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>ncfileid&nbsp; &nbsp; </em></TD>
      <TD>The file ID number of the caminput.nc file.</TD></TR>
  </TABLE>
@@ -1100,7 +1098,7 @@
  Reads the grid size from the cam_phis.nc file, which contains the surface
  elevation data.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>ncfileid&nbsp; &nbsp; </em></TD>
      <TD>The file ID number of the cam_phis.nc file.</TD></TR>
  <TR><TD valign=top><em class=code>num_nlons&nbsp; &nbsp; </em></TD>
@@ -1129,7 +1127,7 @@
  Read a 2-D field from a NetCDF file, so far just surface height (phis)
  from cam_phis.nc.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>ncfileid&nbsp; &nbsp; </em></TD>
      <TD>The file ID number of the caminput.nc file.</TD></TR>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
@@ -1159,7 +1157,7 @@
  <P>
  Reads the value of an attribute for each of the fields in cflds.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>att&nbsp; &nbsp; </em></TD>
      <TD>The name of an attribute of the fields on a CAM initial file.</TD></TR>
  <TR><TD valign=top><em class=code>att_vals&nbsp; &nbsp; </em></TD>
@@ -1186,7 +1184,7 @@
  <P>
  Reads a coordinate array and metadata from a CAM initial file.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
      <TD>A coordinate array from a CAM initial file.</TD></TR>
  <TR><TD valign=top><em class=code>idim&nbsp; &nbsp; </em></TD>
@@ -1217,7 +1215,7 @@
  one structure.  The rest of <em class=code>var</em> is filled 
  in read_cam_coord.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
      <TD>The coordinate variable to read from caminput.nc.</TD></TR>
  <TR><TD valign=top><em class=code>length&nbsp; &nbsp; </em></TD>
@@ -1254,7 +1252,7 @@
  <P>
  Deallocate the array components of the variable of defined type grid_1d_type.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>var&nbsp; &nbsp; </em></TD>
      <TD>Coordinate variable and metadata.</TD></TR>
  </TABLE>
@@ -1277,7 +1275,7 @@
  Also assigns field TYPE_ variables for use by get_state_meta_data,
  and other routines.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>cflds&nbsp; &nbsp; </em></TD>
      <TD>Master list of CAM fields to be incorporated in the DART state vector.</TD></TR>
  <TR><TD valign=top><em class=code>nflds&nbsp; &nbsp; </em></TD>
@@ -1329,7 +1327,7 @@
   Define a coordinate variable on the P[oste]rior_Diag.nc file
   and write some of it's attributes there.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>c_name&nbsp; &nbsp; </em></TD>
      <TD> Coordinate name.</TD></TR>
  <TR><TD valign=top><em class=code>ncFileID&nbsp; &nbsp; </em></TD>
@@ -1368,7 +1366,7 @@
  above the lower of highest_obs_level and the models highest level,
  and below the lowest model level are excluded.  So are PS and Q observations.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>val&nbsp; &nbsp; </em></TD>
      <TD>The value of the obs_kind variable interpolated from state vector x.</TD></TR>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
@@ -1412,7 +1410,7 @@
  above the lower of highest_obs_pressure_mb and the model's highest level,
  and below the lowest model level are excluded.  
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>val&nbsp; &nbsp; </em></TD>
      <TD>The value of the obs_kind variable interpolated from state vector x.</TD></TR>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
@@ -1456,7 +1454,7 @@
  above the lower of highest_obs_height_m and the model's highest level,
  and below the lowest model level are excluded.  So are PS and Q observations.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>val&nbsp; &nbsp; </em></TD>
      <TD>The value of the obs_kind variable interpolated from state vector x.</TD></TR>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
@@ -1495,7 +1493,7 @@
  <P>
  Extracts the value of a field at a specified location from the DART state vector.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>val&nbsp; &nbsp; </em></TD>
      <TD>The value of the obs_kind variable at a grid point, from state vector x.</TD></TR>
  <TR><TD valign=top><em class=code>x&nbsp; &nbsp; </em></TD>
@@ -1533,7 +1531,7 @@
   Uses model information and subroutines to convert the vertical location of an ob
   (prior, model state variable, or actual ob) into the standard vertical coordinate (pressure).
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>old_array&nbsp; &nbsp; </em></TD>
      <TD>The location array of the incoming ob.</TD></TR>
  <TR><TD valign=top><em class=code>old_which&nbsp; &nbsp; </em></TD>
@@ -1569,7 +1567,7 @@
   Function to generate the state vector index corresponding to the grid location
   and variable given.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>lev_ind&nbsp; &nbsp; </em></TD>
      <TD>Level of the desired variable.</TD></TR>
  <TR><TD valign=top><em class=code>lon_ind&nbsp; &nbsp; </em></TD>
@@ -1600,7 +1598,7 @@
   Function to return the index of a character string as found within a list
   of character strings, typically variable or dimension names.
  </P>
- <TABLE width=100% border=0 summary="" celpadding=3>
+ <TABLE width=100% border=0 summary="" cellpadding=3>
  <TR><TD valign=top><em class=code>nam&nbsp; &nbsp; </em></TD>
      <TD>The string to be found within <em class=code>list</em>.</TD></TR>
  <TR><TD valign=top><em class=code>list&nbsp; &nbsp; </em></TD>
@@ -1627,7 +1625,7 @@
   Given the name of the coordinate to be searched and the index into that array,

@@ Diff output truncated at 40000 characters. @@


More information about the Dart-dev mailing list