[cig-commits] r5432 - mc/3D/CitcomS/trunk/doc/manual

luis at geodynamics.org luis at geodynamics.org
Mon Dec 4 09:24:40 PST 2006


Author: luis
Date: 2006-12-04 09:24:39 -0800 (Mon, 04 Dec 2006)
New Revision: 5432

Modified:
   mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx
Log:
Fixes to manual


Modified: mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx
===================================================================
--- mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx	2006-12-04 17:24:24 UTC (rev 5431)
+++ mc/3D/CitcomS/trunk/doc/manual/citcoms.lyx	2006-12-04 17:24:39 UTC (rev 5432)
@@ -1,4 +1,4 @@
-#LyX 1.4.3 created this file. For more info see http://www.lyx.org/
+#LyX 1.4.1 created this file. For more info see http://www.lyx.org/
 \lyxformat 245
 \begin_document
 \begin_header
@@ -144,7 +144,7 @@
  Part I consists of traditional book front matter, including this preface.
  Part II begins with an introduction to Pyre and the Pyre-compatible version
  of CitComS and their capabilities and proceeds to the details of implementation
-, including a "cookbook" of short tutorials.
+, including a ``cookbook'' of short tutorials.
  Part III provides appendices and references.
 \end_layout
 
@@ -306,8 +306,8 @@
 \begin_layout Standard
 Throughout this documentation CitComS.py refers to the Pyre-compatible version
  of CitComS unless specifically stated otherwise.
- Any mention of "username" is meant to indicate the user, meaning you should
- substitute your account name in its place.
+ Any mention of ``username'' is meant to indicate the user, meaning you
+ should substitute your account name in its place.
 \end_layout
 
 \begin_layout Part
@@ -386,7 +386,7 @@
 \begin_layout Standard
 This code uses an iterative solution scheme to solve for the velocity and
  pressure and, as such, a converged solution cannot be guaranteed.
- Nested inside the iterative scheme, the code uses either a conjugant gradient
+ Nested inside the iterative scheme, the code uses either a conjugate gradient
  solver or a full multi-grid solver to solve the discretized matrix equations.
  
 \end_layout
@@ -429,7 +429,7 @@
 \end_layout
 
 \begin_layout Standard
-In the mid-1990's Moresi wrote versions of the code that solved the equations
+In the mid-1990s Moresi wrote versions of the code that solved the equations
  within three-dimensional Cartesian domains.
  Then Shijie Zhong successfully parallelized CitCom using message passing
  routines on a limited release Intel supercomputer.
@@ -539,7 +539,7 @@
 Other improvements include the incorporation of geoid calculations that
  had been left out of earlier releases, as well as new scripts to allow
  results to be visualized with 
-\begin_inset LatexCommand \htmlurl[MayaVi]{mayavi.sourceforge.net}
+\begin_inset LatexCommand \htmlurl[MayaVi2]{svn.enthought.com/enthought/wiki/MayaVi}
 
 \end_inset
 
@@ -584,8 +584,8 @@
 \emph on
 et al
 \emph default
- condense the concept of a framework concept down to, "When you use a framework,
- you reuse the main body and write the code it calls." In the context of
+ condense the concept of a framework concept down to, ``When you use a framework
+, you reuse the main body and write the code it calls.'' In the context of
  frameworks and object-oriented programming, Pyre can be thought of as a
  collection of classes and the way their instances interact.
  Programming applications based on Pyre will look similar to those written
@@ -629,7 +629,7 @@
  The framework offers a way to add new solvers to CitComS.py and to fine-tune
  CitComS.py simulations.
  Future versions of this documentation will cover coupled simulations generated
- via an "exchanger" module.
+ via an ``exchanger'' module.
 \end_layout
 
 \begin_layout Standard
@@ -684,7 +684,7 @@
 \end_layout
 
 \begin_layout Standard
-This version of CitComS.py "attaches" to Pyre via the use of bindings.
+This version of CitComS.py ``attaches'' to Pyre via the use of bindings.
  They are included with CitComS.py, eliminating the need for users to write
  or alter them.
 \end_layout
@@ -769,34 +769,34 @@
 H
 \emph default
  is the heat production rate.
- 
+ The expression 
 \begin_inset Formula $X_{,y}$
 \end_inset
 
  represents the derivative of 
-\emph on
-X
-\emph default
+\begin_inset Formula $X$
+\end_inset
+
  with respect to 
-\emph on
-y
-\emph default
-, 
-\emph on
-i
-\emph default
+\begin_inset Formula $y$
+\end_inset
+
+, where 
+\begin_inset Formula $i$
+\end_inset
+
  and 
-\emph on
-j
-\emph default
+\begin_inset Formula $j$
+\end_inset
+
  are spatial indices, 
-\emph on
-r
-\emph default
+\begin_inset Formula $r$
+\end_inset
+
  is the radial direction, and 
-\emph on
-t
-\emph default
+\begin_inset Formula $t$
+\end_inset
+
  is time.
  Without phase transitions, the density anomalies are:
 \end_layout
@@ -1121,7 +1121,7 @@
 \begin_inset Formula $\mathbf{A}$
 \end_inset
 
- is the "stiffness" matrix, 
+ is the ``stiffness'' matrix, 
 \emph on
 u
 \emph default
@@ -2505,7 +2505,8 @@
 
 \begin_layout Standard
 While the following software is not necessary for the normal operation of
- CitComS, you may find it useful for accessing CitComS data in HDF5 files.
+ CitComS, you may find it useful for accessing CitComS data stored in HDF5
+ files.
 \end_layout
 
 \begin_layout Subsubsection
@@ -2522,11 +2523,11 @@
 
 .
  To compile and install this extension, download it and issue the following
- commands:
+ commands after extracting it:
 \end_layout
 
 \begin_layout LyX-Code
-$ cd numpy-1.0.x
+$ cd numpy-1.0
 \end_layout
 
 \begin_layout LyX-Code
@@ -2698,8 +2699,8 @@
 \end_layout
 
 \begin_layout Standard
-To build just the CitComS tools (or "drivers") from the legacy C code, give
- 
+To build just the CitComS tools (or ``drivers'') from the legacy C code,
+ give 
 \family typewriter
 configure
 \family default
@@ -3234,7 +3235,7 @@
 \end_layout
 
 \begin_layout Subsection
-Specfication and Placement of Configuration Files
+Specification and Placement of Configuration Files
 \end_layout
 
 \begin_layout Standard
@@ -3303,11 +3304,23 @@
 \emph on
 theta
 \emph default
- (or x) is the colatitude measured from the north pole, 
+ (or 
+\begin_inset Formula $x$
+\end_inset
+
+) is the colatitude measured from the north pole, 
 \emph on
 fi
 \emph default
- (or y) is the east longitude, and z is the radius.
+ (or 
+\begin_inset Formula $y$
+\end_inset
+
+) is the east longitude, and 
+\begin_inset Formula $z$
+\end_inset
+
+ is the radius.
  
 \emph on
 theta
@@ -3323,8 +3336,19 @@
 \end_inset
 
  shows the organization of the mesh in a regional problem.
- The numbering of the nodes is z-direction first, then x-direction, then
- y-direction.
+ The numbering of the nodes is 
+\begin_inset Formula $z$
+\end_inset
+
+-direction first, then 
+\begin_inset Formula $x$
+\end_inset
+
+-direction, then 
+\begin_inset Formula $y$
+\end_inset
+
+-direction.
  This numbering convention is used for the input and output data.
 \end_layout
 
@@ -3559,18 +3583,39 @@
 \end_layout
 
 \begin_layout Standard
-This example uses 2 processors in colatitude (x-coordinate), 2 in longitude
- (y-direction), and 1 in the radial (z-direction), i.e., it uses 4 processors
- in total.
- In addition, there will be 17 nodes in x (theta), 17 nodes in y (fi), and
- 9 nodes in z (radius_inner).
+This example uses 2 processors in colatitude (
+\begin_inset Formula $x$
+\end_inset
+
+-coordinate), 2 in longitude (
+\begin_inset Formula $y$
+\end_inset
+
+-direction), and 1 in the radial (
+\begin_inset Formula $z$
+\end_inset
+
+-direction), i.e., it uses 4 processors in total.
+ In addition, there will be 17 nodes in 
+\begin_inset Formula $x$
+\end_inset
+
+ (theta), 17 nodes in 
+\begin_inset Formula $y$
+\end_inset
+
+ (fi), and 9 nodes in 
+\begin_inset Formula $z$
+\end_inset
+
+ (radius_inner).
  The model will run for 71 time steps and the code will output the results
  every 10 time steps.
 \end_layout
 
 \begin_layout Standard
 It is important to realize that within the example script (and in finite
- element method, FEM) the term "node" refers to the mesh points defining
+ element method, FEM) the term ``node'' refers to the mesh points defining
  the corners of the elements.
  In 
 \family typewriter
@@ -3599,10 +3644,18 @@
 \end_inset
 
  9 nodes.
- Note that in the x-direction (or y) that for the entire problem there are
- 17 nodes and there is one node shared between two processors.
+ Note that in the 
+\begin_inset Formula $x$
+\end_inset
+
+-direction (or 
+\begin_inset Formula $y$
+\end_inset
+
+) that for the entire problem there are 17 nodes and there is one node shared
+ between two processors.
  This shared node is duplicated in two adjacent processors.
- Unfortunately, "nodes" sometimes also refer to the individual computers
+ Unfortunately, ``nodes'' sometimes also refer to the individual computers
  which make up a Beowulf cluster or supercomputer.
  In the example scripts, this is indicated with:
 \end_layout
@@ -3883,10 +3936,10 @@
 
 \begin_layout Standard
 The last choice is the most powerful one.
- Instead of writing many ASCII files, CitComS.py can write its result into
- a single HDF5 (Hierarchical Data Format) file.
- The HDF5 file takes less disk space than all the ASCII files combined and
- doesn't require additional post-processing to be visualized in OpenDX.
+ Instead of writing many ASCII files, CitComS.py can write its results into
+ a single HDF5 (Hierarchical Data Format) file per timestep.
+ These HDF5 files take less disk space than all the ASCII files combined
+ and don't require additional post-processing to be visualized in OpenDX.
  In order to use this feature, you must compile CitComS.py with the parallel
  HDF5 library if you haven't done so already (see Section 
 \begin_inset LatexCommand \vref{sec:HDF5-Configuration}
@@ -4087,7 +4140,7 @@
 \end_layout
 
 \begin_layout Standard
-This option will cause CitComS to perform a "dry run," dumping the batch
+This option will cause CitComS to perform a ``dry run,'' dumping the batch
  script to the console, instead of actually submitting it for execution
  (the output is only meaningful if you're using a batch system).
  Likewise, to debug the launcher configuration, use the 
@@ -4343,14 +4396,14 @@
  class resources at eight partner sites to create an integrated, persistent
  computational resource.
  The TeraGrid takes its name from two concepts from high-end computing:
- "Tera" is the metric prefix for "trillions" as in teraflops (trillions
+ ``Tera'' is the metric prefix for ``trillions'' as in teraflops (trillions
  of calculations per second) and terabytes (trillions of bytes) and reflects
- the scale of the computing power provided by the TeraGrid; the "Grid" portion
- of TeraGrid reflects the idea of harnessing and using distributed computers,
- data storage systems, networks, and other resources as if they were a single
- massive system.
+ the scale of the computing power provided by the TeraGrid; the ``Grid''
+ portion of TeraGrid reflects the idea of harnessing and using distributed
+ computers, data storage systems, networks, and other resources as if they
+ were a single massive system.
  In other words, Grid computing uses software technologies to allow researchers
- to create "virtual supercomputers" far larger than individual hardware
+ to create ``virtual supercomputers'' far larger than individual hardware
  components.
  Since TeraGrid software is based on commodity clusters, Linux/Unix, and
  Globus, it should be easier to scale from a laboratory development environment
@@ -4499,7 +4552,11 @@
  cartesian grid and is therefore well represented by multi-dimensional arrays.
  These data arrays consist of various parts, appearing in the following
  order: First, time-dependent arrays are addressed by a time-dimension index
- called a frame.
+ called a frame (
+\series bold
+TODO
+\series default
+: No longer true!).
  Next, a cap dimension is defined for addressing each of the CitComS caps,
  followed by three spatial indices 
 \begin_inset Formula $(i,j,k)$
@@ -4526,7 +4583,7 @@
 \noindent
 \align center
 \begin_inset Tabular
-<lyxtabular version="3" rows="25" columns="2">
+<lyxtabular version="3" rows="22" columns="2">
 <features>
 <column alignment="left" valignment="top" leftline="true" width="0">
 <column alignment="left" valignment="top" leftline="true" rightline="true" width="0">
@@ -4706,7 +4763,7 @@
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Standard
@@ -4769,30 +4826,6 @@
 \begin_layout Standard
 
 \family typewriter
-/surf/coord
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
-(caps, nodex, nodey, 2)
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
 /surf/velocity
 \end_layout
 
@@ -4885,30 +4918,6 @@
 \begin_layout Standard
 
 \family typewriter
-/botm/coord
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
-(caps, nodex, nodey, 2)
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
 /botm/velocity
 \end_layout
 
@@ -5001,30 +5010,6 @@
 \begin_layout Standard
 
 \family typewriter
-/horiz_avg/coord
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
-(caps, nodez)
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row topline="true">
-<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Standard
-
-\family typewriter
 /horiz_avg/temperature
 \end_layout
 
@@ -5183,9 +5168,9 @@
 In order to facilitate the process of gathering I/O performance data from
  a variety of parallel file systems such as GPFS, PVFS, IBRIX FusionFS,
  etc., you can specify the following parameters in the CitComS input file.
- You may use these to tune the performance of the parallel I/O on your system,
- although in future versions of CitComS this might become unnecessary for
- supported file systems.
+ You may use these parameters to tune the performance of the parallel I/O
+ on your system, although in future versions of CitComS this step will become
+ unnecessary for supported file systems.
 \end_layout
 
 \begin_layout Standard
@@ -5345,8 +5330,8 @@
 \begin_layout Standard
 
 \family roman
-Finally, here is an example section that would appear in a CitComS input
- file:
+Finally, here is an example section that would appear in a typical CitComS
+ input file:
 \end_layout
 
 \begin_layout LyX-Code
@@ -5430,8 +5415,8 @@
 \family typewriter
 h5tocap.py
 \family default
- provides a good example for using PyTables to access the data in an HDF5
- file.
+ provides a good example for using the PyTables extension module to access
+ the data contained in the CitComS HDF5 files.
  In PyTables, datasets can be retrieved from disk as NumPy arrays through
  an array interface that avoids unnecessary copying of data by using hyperslabs,
  and which takes advantage of Python's powerful array slice-indexing.
@@ -5439,8 +5424,11 @@
 
 \begin_layout Standard
 For example, obtaining the node coordinates, temperature, and topography
- values over the entire surface of the sphere for all time steps can be
- done easily with the following code snippet:
+ values over the entire surface of the sphere for time step 
+\begin_inset Formula $1000$
+\end_inset
+
+ can be done easily with the following code snippet:
 \end_layout
 
 \begin_layout LyX-Code
@@ -5448,39 +5436,43 @@
 \end_layout
 
 \begin_layout LyX-Code
-h5file = tables.openFile('example.h5', 'r')
+
 \end_layout
 
 \begin_layout LyX-Code
-surface_coords = h5file.coord[0:12,:,:,-1,:]
+h5file = tables.openFile('my_example.h5', 'r')
 \end_layout
 
 \begin_layout LyX-Code
-surface_temperature = h5file.temperature[:,0:12,:,:,-1]
+surface_coords = h5file.root.coord[0:12,:,:,-1,:]
 \end_layout
 
 \begin_layout LyX-Code
-surface_topography = h5file.surf.topography[:,0:12,:,:]
+
 \end_layout
 
+\begin_layout LyX-Code
+data1000 = tables.openFile('my_example.1000.h5', 'r')
+\end_layout
+
+\begin_layout LyX-Code
+surface_temperature = data1000.root.temperature[0:12,:,:,-1]
+\end_layout
+
+\begin_layout LyX-Code
+surface_topography = data1000.root.surf.topography[0:12,:,:]
+\end_layout
+
 \begin_layout Standard
 In this case, the slice 
 \family typewriter
 0:12
 \family default
- refers to all caps explicitly, while the empty slice 
-\begin_inset Quotes srd
-\end_inset
-
-
+ refers to all caps explicitly, while the empty slice ``
 \family typewriter
 :
 \family default
-
-\begin_inset Quotes sld
-\end_inset
-
- refers to the entire extent of the corresponding dimension.
+'' refers to the entire extent of the corresponding dimension.
  The values of 
 \family typewriter
 -1
@@ -6307,7 +6299,7 @@
 You would like to solve for thermal convection within a full spherical shell
  domain.
  The full spherical version of CitComS.py is designed to run on a cluster
- that decomposes the spherical shell into 12 equal "caps" and then distributes
+ that decomposes the spherical shell into 12 equal ``caps'' and then distributes
  the calculation for caps onto separate processors.
  To run CitComS.py with the full solver parameter set, it is recommended
  that you have a minimum of 12 processors available on your cluster.
@@ -6332,7 +6324,7 @@
 \end_layout
 
 \begin_layout Caption
-Global Model "Caps." Left (A): Three-dimensional perspective image showing
+Global Model ``Caps.'' Left (A): Three-dimensional perspective image showing
  seven of the 12 spherical caps used in a full CitComS.py run.
  Right (B): The temperature field at 1081 km depth from a Cookbook 1 run.
 \end_layout
@@ -6460,7 +6452,7 @@
 \begin_layout Standard
 Once you have run the model, you can visualize the results using OpenDX,
  described in the previous chapter.
- When you invoke "Edit Visual Program," select 
+ When you invoke ``Edit Visual Program,'' select 
 \family typewriter
 visFull.net
 \family default
@@ -10370,10 +10362,6 @@
 
 \begin_layout Standard
 
-\end_layout
-
-\begin_layout Standard
-
 \newpage
 
 \end_layout
@@ -15061,7 +15049,11 @@
 \begin_layout Standard
 The first line of the file is a header.
  The rest of the file is column-based, where the meaning of each column
- is:
+ is: (
+\series bold
+TODO
+\series default
+: fix the following line, as it cuts off when rendering to pdf)
 \end_layout
 
 \begin_layout LyX-Code



More information about the cig-commits mailing list