[cig-commits] r20424 - in short/3D/PyLith/branches/v1.7-stable/doc/userguide: . benchmarks benchmarks/savageprescott benchmarks/strikeslip extending fileformats materials runpylith tutorials/3dhex8 tutorials/3dhex8/dike tutorials/3dhex8/friction tutorials/3dhex8/gravity tutorials/3dhex8/quasistatic tutorials/3dhex8/static tutorials/3dhex8/surfload tutorials/3dtet4 tutorials/greensfns2d tutorials/shearwave tutorials/subduction tutorials/twohex8 tutorials/twoquad4 tutorials/twotet4 tutorials/twotet4-geoproj tutorials/twotri3

sue at geodynamics.org sue at geodynamics.org
Wed Jun 27 18:14:21 PDT 2012


Author: sue
Date: 2012-06-27 18:14:20 -0700 (Wed, 27 Jun 2012)
New Revision: 20424

Modified:
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/benchmarks.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/savageprescott/savageprescott.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/strikeslip/strikeslip.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/components.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/extending/extending.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/fileformats/fileformats.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/materials/altformulations.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/preface.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/runpylith/runpylith.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/3dhex8.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/dike/dike.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/friction/friction.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/static/static.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/surfload/surfload.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dtet4/3dtet4.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/greensfns2d/greensfns2d.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/shearwave/hex8.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/subduction/subduction.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twohex8/twohex8.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twoquad4/twoquad4.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4-geoproj/twotet4-geoproj.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4/twotet4.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotri3/twotri3.lyx
   short/3D/PyLith/branches/v1.7-stable/doc/userguide/userguide.lyx
Log:
fixed typos and format problems

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/benchmarks.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/benchmarks.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/benchmarks.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,197 +1,197 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 1
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 2
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Chapter
-\begin_inset CommandInset label
-LatexCommand label
-name "cha:Benchmarks"
-
-\end_inset
-
-Benchmarks
-\end_layout
-
-\begin_layout Section
-Overview
-\end_layout
-
-\begin_layout Standard
-The Crustal Deformation Modeling and Earthquake Source Physics Focus Groups
- within the Southern California Earthquake Center and the Short-Term Tectonics
- Working Group within CIG have developed a suite of benchmarks to test the
- accuracy and performance of 3D numerical codes for quasi-static crustal
- deformation and earthquake rupture dynamics.
- The benchmark definitions for the quasi-static crustal deformation benchmarks
- are posted on the CIG website at Short-Term Tectonics Benchmarks 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-geodynamics.org/cig/workinggroups/short/workarea/benchmarks/
-\end_layout
-
-\end_inset
-
- and the definitions for the earthquake rupture benchmarks are posted on
- the SCEC website 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-scecdata.usc.edu/cvws/cgi-bin/cvws.cgi
-\end_layout
-
-\end_inset
-
-.
- This suite of benchmarks permits evaluating the relative performance of
- different types of basis functions, quadrature schemes, and discretizations
- for geophysical applications.
- The files needed to run the 3D benchmarks are in the CIG SVN Repository
- 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-geodynamics.org/svn/cig/short/3D/PyLith/benchmarks
-\end_layout
-
-\end_inset
-
-.
- In addition to evaluating the efficiency and accuracy of numerical codes,
- the benchmarks also make good test problems, where users can perform simulation
-s based on actual geophysical problems.
- The benchmarks are performed at various resolutions and using different
- element types.
- By comparing the runtime and accuracy for different resolutions and element
- types, users can evaluate which combination will be best for their problems
- of interest.
-\end_layout
-
-\begin_layout Standard
-\begin_inset CommandInset include
-LatexCommand input
-filename "strikeslip/strikeslip.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "savageprescott/savageprescott.lyx"
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section
-SCEC Dynamic Rupture Benchmarks
-\end_layout
-
-\begin_layout Standard
-The SCEC website 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-scecdata.usc.edu/cvws/cgi-bin/cvws.cgi
-\end_layout
-
-\end_inset
-
- includes a graphical user interface for examining the benchmark results.
- Benchmark results for PyLith are available for TPV205-2D (horizontal slice
- through a vertical strike-slip fault), TPV205 (vertical strike-slip fault
- with high and low stress asperities), TPV210-2D (vertical slice through
- a 60 degree dipping normal fault), TPV210 (60 degree dipping normal fault),
- TPV11, TPV12, TPV13, TPV14-2D and TPV15-2D (horizontal slice through a
- verticel strike-slip fault with a branch), TPV14 and TPV15 (vertical strike-sli
-p fault with a branch), and TPV 16 and 17.
-\end_layout
-
-\begin_layout Standard
-The benchmark results indicate that triangular and tetrahedral cells generate
- less numerical noise than quadrilateral or hexahedral cells.
- Results for all of the benchmarks listed above except TPV14-2D, TPV15-2D,
- TPV14, and TPV15 have been updated using PyLith 1.7, which provides much
- closer agreement with the other codes compared to previous versions of
- PyLith.
- We attribute the closer agreement to small adjustments of the fault implementat
-ion and some small bugfixes to the slip-weakening friction formulation.
- 
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 1
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 2
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+\begin_inset CommandInset label
+LatexCommand label
+name "cha:Benchmarks"
+
+\end_inset
+
+Benchmarks
+\end_layout
+
+\begin_layout Section
+Overview
+\end_layout
+
+\begin_layout Standard
+The Crustal Deformation Modeling and Earthquake Source Physics Focus Groups
+ within the Southern California Earthquake Center and the Short-Term Tectonics
+ Working Group within CIG have developed a suite of benchmarks to test the
+ accuracy and performance of 3D numerical codes for quasi-static crustal
+ deformation and earthquake rupture dynamics.
+ The benchmark definitions for the quasi-static crustal deformation benchmarks
+ are posted on the CIG website at Short-Term Tectonics Benchmarks 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+geodynamics.org/cig/workinggroups/short/workarea/benchmarks/
+\end_layout
+
+\end_inset
+
+ and the definitions for the earthquake rupture benchmarks are posted on
+ the SCEC website 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+scecdata.usc.edu/cvws/cgi-bin/cvws.cgi
+\end_layout
+
+\end_inset
+
+.
+ This suite of benchmarks permits evaluating the relative performance of
+ different types of basis functions, quadrature schemes, and discretizations
+ for geophysical applications.
+ The files needed to run the 3D benchmarks are in the CIG SVN Repository
+ 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+geodynamics.org/svn/cig/short/3D/PyLith/benchmarks
+\end_layout
+
+\end_inset
+
+.
+ In addition to evaluating the efficiency and accuracy of numerical codes,
+ the benchmarks also make good test problems, where users can perform simulation
+s based on actual geophysical problems.
+ The benchmarks are performed at various resolutions and using different
+ element types.
+ By comparing the runtime and accuracy for different resolutions and element
+ types, users can evaluate which combination will be best for their problems
+ of interest.
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset include
+LatexCommand input
+filename "strikeslip/strikeslip.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "savageprescott/savageprescott.lyx"
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+SCEC Dynamic Rupture Benchmarks
+\end_layout
+
+\begin_layout Standard
+The SCEC website 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+scecdata.usc.edu/cvws/cgi-bin/cvws.cgi
+\end_layout
+
+\end_inset
+
+ includes a graphical user interface for examining the benchmark results.
+ Benchmark results for PyLith are available for TPV205-2D (horizontal slice
+ through a vertical strike-slip fault), TPV205 (vertical strike-slip fault
+ with high and low stress asperities), TPV210-2D (vertical slice through
+ a 60-degree dipping normal fault), TPV210 (60-degree dipping normal fault),
+ TPV11, TPV12, TPV13, TPV14-2D and TPV15-2D (horizontal slice through a
+ verticel strike-slip fault with a branch), TPV14 and TPV15 (vertical strike-sli
+p fault with a branch), and TPV 16 and 17.
+\end_layout
+
+\begin_layout Standard
+The benchmark results indicate that triangular and tetrahedral cells generate
+ less numerical noise than quadrilateral or hexahedral cells.
+ Results for all of the benchmarks listed above except TPV14-2D, TPV15-2D,
+ TPV14, and TPV15 have been updated using PyLith 1.7, which provides much
+ closer agreement with the other codes compared to previous versions of
+ PyLith.
+ We attribute the closer agreement to small adjustments of the fault implementat
+ion and some small bugfixes to the slip-weakening friction formulation.
+ 
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/savageprescott/savageprescott.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/savageprescott/savageprescott.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/savageprescott/savageprescott.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,523 +1,530 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 0
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 1in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:benchmarks:savageprescott"
-
-\end_inset
-
-Savage and Prescott Benchmark
-\end_layout
-
-\begin_layout Standard
-This benchmark problem computes the viscoelastic (Maxwell) relaxation of
- stresses from repeated infinite, strike-slip earthquakes in 3D without
- gravity.
- The files needed to run the benchmark may be found at 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org/svn/cig/short/2.5D/benchmarks/savageprescott
-\end_layout
-
-\end_inset
-
-.
- An analytical solution to this problem is described by Savage and Prescott
- 
-\begin_inset CommandInset citation
-LatexCommand cite
-key "Savage:Prescott:1978"
-
-\end_inset
-
-, which provides a simple way to check our numerical solution.
- A python utility code is provided in the utils directory to compute the
- analytical solution.
- Although this problem is actually 2.5D (infinite along-strike), we solve
- it using a 3D finite element model.
-\end_layout
-
-\begin_layout Subsection
-Problem Description
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:benchmark:savageprescott:geometry"
-
-\end_inset
-
- shows the geometry of the problem, as described by 
-\begin_inset CommandInset citation
-LatexCommand cite
-key "Savage:Prescott:1978"
-
-\end_inset
-
-.
- The analytical solution describes the surface deformation due to repeated
- earthquakes on an infinite strike-slip fault embedded in an elastic layer
- overlying a Maxwell viscoelastic half-space.
- The upper portion of the fault (red in the figure) is locked between earthquake
-s, while the lower portion (blue in the figure) creeps at plate velocity.
- At regular recurrence intervals, the upper portion of the fault abruptly
- slips by an amount equal to the plate velocity multiplied by the recurrence
- interval, thus 'catching up' with the lower part of the fault.
-\end_layout
-
-\begin_layout Standard
-There are some differences between the analytical solution and our numerical
- representation.
- First, the analytical solution represents the earthquake cycle as the superposi
-tion of uniform fault creep and an elementary earthquake cycle.
- Uniform fault creep is simply the uniform movement of the two plates past
- each other at plate velocity.
- For the elementary earthquake cycle, no slip occurs below the locked portion
- of the fault (blue portion in the figure).
- On the locked (red) portion of the fault, backslip equal to plate velocity
- occurs until the earthquake recurrence interval, at which point abrupt
- forward slip occurs.
- In the finite element solution, we perform the simulation as described
- in the figure.
- Velocity boundary conditions are applied at the extreme edges of the model
- to simulate block motion, steady creep is applied along the blue portion
- of the fault, and regular earthquakes are applied along the upper portion
- of the fault.
- It takes several earthquake cycles for the velocity boundary conditions
- to approximate the steady flow due to steady block motion, so we would
- not expect the analytical and numerical solutions to match until several
- earthquakes have occurred.
- Another difference lies in the dimensions of the domain.
- The analytical solution assumes an infinite strike-slip fault in an elastic
- layer overlying a Maxwell viscoelastic half-space.
- In our finite element model we are restricted to finite dimensions.
- We therefore extend the outer boundaries far enough from the region of
- interest to approximate boundaries at infinity.
-\end_layout
-
-\begin_layout Standard
-Due to the difficulties in representing solutions in an infinite domain,
- there are several meshes that have been tested for this problem.
- The simplest meshes have uniform resolution (all cells have equal dimensions);
- however, such meshes typically do not provide accurate solutions since
- the resolution is too coarse in the region of interest.
- For that reason, we also tested meshes where the mesh resolution decreases
- away from the center.
- In the problem description that follows, we will focus on the hexahedral
- mesh with finer discretization neear the fault (meshes/hex8_6.7km.exo.gz),
- which provides a good match with the analytical solution.
- It will first be necessary to gunzip this mesh so that it may be used by
- PyLith.
-\end_layout
-
-\begin_layout Description
-Domain The domain for this mesh spans the region
-\begin_inset Formula 
-\begin{gather*}
--1000\leq x\leq1000\ km,\\
--500\leq y\leq500\ km,\\
--400\ km\leq z\leq0.
-\end{gather*}
-
-\end_inset
-
-The top (elastic) layer occupies the region 
-\begin_inset Formula $-40\ km\ \leq z\leq0$
-\end_inset
-
- and the bottom (viscoelastic) layer occupies the region 
-\begin_inset Formula $-400\ km\ \leq z\leq-40\ km$
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Description
-Material
-\begin_inset space ~
-\end_inset
-
-properties The material is a Poisson solid with a shear modulus (
-\begin_inset Formula $\mu$
-\end_inset
-
-) of 30 GPa.
- The domain is modeled using an elastic isotropic material for the top layer
- and a Maxwell viscoelastic material for the bottom layer.
- The bottom layer has a viscosity (
-\begin_inset Formula $\eta$
-\end_inset
-
-) of 2.36682e+19 Pa-s, yielding a relaxation time (
-\begin_inset Formula $2\eta/\mu$
-\end_inset
-
-) of 50 years.
-\end_layout
-
-\begin_layout Description
-Fault The fault is a vertical, left-lateral strike-slip fault.
- The strike is parallel to the y-direction at the center of the model:
-\begin_inset Formula 
-\begin{gather*}
-x=0\ km,\\
--500\leq y\leq500\ km,\\
--40\ km\leq z\leq0.
-\end{gather*}
-
-\end_inset
-
-The locked portion of the fault (red section in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:benchmark:savageprescott:geometry"
-
-\end_inset
-
-) extends from 
-\begin_inset Formula $-20\: km\leq z\leq0$
-\end_inset
-
-, while the creeping section (blue) extends from 
-\begin_inset Formula $-40\: km\leq z\leq0$
-\end_inset
-
-.
- Along the line where the two sections coincide (
-\begin_inset Formula $z=-20\: km$
-\end_inset
-
-), half of the coseismic displacement and half of the steady creep is applied
- (see 
-\family typewriter
-finalslip.spatialdb
-\family default
- and 
-\family typewriter
-creeprate.spatialdb
-\family default
-).
-\end_layout
-
-\begin_layout Description
-Boundary
-\begin_inset space ~
-\end_inset
-
-conditions On the bottom boundary, vertical displacements are set to zero,
- while on the y-boundaries the x-displacements are set to zero.
- On the x-boundaries, the x-displacements are set to zero, while constant
- velocities of +/- 1 cm/yr are applied in the y-direction, giving a relative
- plate motion of 2 cm/year.
-\end_layout
-
-\begin_layout Description
-Discretization For the nonuniform hexahedral mesh, the resolution at the
- outer boundaries is 20 km.
- An inner region is then put through one level of refinement, so that near
- the center of the mesh the resolution is 6.7 km.
- All meshes were generated with CUBIT.
-\end_layout
-
-\begin_layout Description
-Basis
-\begin_inset space ~
-\end_inset
-
-functions We use trilinear hexahedral cells.
-\end_layout
-
-\begin_layout Description
-Solution We compute the surface displacements and compare these to the analytica
-l solution 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:benchmark:savageprescott:solution"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/model_descript.eps
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Problem description for the Savage and Prescott strike-slip benchmark problem.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:benchmark:savageprescott:geometry"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsection
-Running the Benchmark
-\end_layout
-
-\begin_layout Standard
-After checking out the benchmark files from the CIG SVN repository, change
- to the 
-\family typewriter
-meshes
-\family default
- directory.
- Decompress the gzipped files in the 
-\family typewriter
-mesh
-\family default
- directory,
-\end_layout
-
-\begin_layout LyX-Code
-gunzip *.gz
-\end_layout
-
-\begin_layout Standard
-Alternatively, simply gunzip the mesh you want to use.
- There are a number of 
-\family typewriter
-.cfg
-\family default
- files corresponding to the different meshes, as well as a 
-\family typewriter
-pylithapp.cfg
-\family default
- file defining parameters common to all problems.
- Each problem uses four 
-\family typewriter
-.cfg
-\family default
- files: 
-\family typewriter
-pylithapp.cfg
-\family default
-, 
-\family typewriter
-fieldsplit.cfg
-\family default
- (algrebraic multigrid preconditioner), a cell-specific file (e.g., 
-\family typewriter
-hex8.cfg
-\family default
-), and a resolution specific file (e.g., hex8_6.7km.cfg).
- You can then run the problem by typing
-\end_layout
-
-\begin_layout LyX-Code
-pylith hex8.cfg hex8_6.7km.cfg fieldsplit.cfg
-\end_layout
-
-\begin_layout Standard
-This will run the problem for 10 earthquake cycles of 200 years each, using
- a time-step size of 10 years, for a total simulation time of 2000 years.
- Ground surface output occurs every 10 years, while all other outputs occur
- every 50 years.
-\end_layout
-
-\begin_layout Standard
-Once the problem has run, results will be placed in the 
-\family typewriter
-output
-\family default
- directory.
- These results may be viewed directly with a package such as ParaView; however,
- to compare results to the analytical solution, some postprocessing is required.
- First, generate the analytical results by running the 
-\family typewriter
-calc_analytic.py
-\family default
- script.
- This will produce files with displacements and velocities (
-\family typewriter
-analytic_disp.txt
-\family default
- and 
-\family typewriter
-analytic_vel.txt
-\family default
-) in the 
-\family typewriter
-output
-\family default
- directory that are easy to use with a plotting package, such as matplotlib
- or Matlab.
-\end_layout
-
-\begin_layout Subsection
-Benchmark Results
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:benchmark:savageprescott:solution"
-
-\end_inset
-
- shows the computed surface displacements for the 10th earthquake cycle
- compared with the analytical solution.
- The profile results were obtained as described above, and then all results
- (analytical and numerical) were referenced to the displacements immediately
- following the last earthquake.
- We find very good agreement between the analytical and numerical solutions,
- even for meshes with uniform refinement.
- We have not yet explored quantitative fits as a function of mesh resolution.
- For this benchmark, it is also important to consider the distance of the
- boundary from the region of interest.
- Also note that the agreement between analytical and numerical solutions
- is poor for early earthquake cycles, due to the differences in simulating
- the problem, as noted above.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/soln_profiles.eps
-	scale 66
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement profiles perpendicular to the fault for a PyLith simulation
- with hex8 cells and the analytical solution for earthquake cycle 10.
- 
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:benchmark:savageprescott:solution"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 0
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 1in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:benchmarks:savageprescott"
+
+\end_inset
+
+Savage and Prescott Benchmark
+\end_layout
+
+\begin_layout Standard
+This benchmark problem computes the viscoelastic (Maxwell) relaxation of
+ stresses from repeated infinite, strike-slip earthquakes in 3D without
+ gravity.
+ The files needed to run the benchmark may be found at 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+geodynamics.org/svn/cig/short/2.5D/benchmarks/savageprescott
+\end_layout
+
+\end_inset
+
+.
+ An analytical solution to this problem is described by Savage and Prescott
+ 
+\begin_inset CommandInset citation
+LatexCommand cite
+key "Savage:Prescott:1978"
+
+\end_inset
+
+, which provides a simple way to check our numerical solution.
+ A python utility code is provided in the utils directory to compute the
+ analytical solution.
+ Although this problem is actually 2.5D (infinite along-strike), we solve
+ it using a 3D finite element model.
+\end_layout
+
+\begin_layout Subsection
+Problem Description
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:savageprescott:geometry"
+
+\end_inset
+
+ shows the geometry of the problem, as described by 
+\begin_inset CommandInset citation
+LatexCommand cite
+key "Savage:Prescott:1978"
+
+\end_inset
+
+.
+ The analytical solution describes the surface deformation due to repeated
+ earthquakes on an infinite strike-slip fault embedded in an elastic layer
+ overlying a Maxwell viscoelastic half-space.
+ The upper portion of the fault (red in the figure) is locked between earthquake
+s, while the lower portion (blue in the figure) creeps at plate velocity.
+ At regular recurrence intervals, the upper portion of the fault abruptly
+ slips by an amount equal to the plate velocity multiplied by the recurrence
+ interval, thus 'catching up' with the lower part of the fault.
+\end_layout
+
+\begin_layout Standard
+There are some differences between the analytical solution and our numerical
+ representation.
+ First, the analytical solution represents the earthquake cycle as the superposi
+tion of uniform fault creep and an elementary earthquake cycle.
+ Uniform fault creep is simply the uniform movement of the two plates past
+ each other at plate velocity.
+ For the elementary earthquake cycle, no slip occurs below the locked portion
+ of the fault (blue portion in the figure).
+ On the locked (red) portion of the fault, backslip equal to plate velocity
+ occurs until the earthquake recurrence interval, at which point abrupt
+ forward slip occurs.
+ In the finite element solution, we perform the simulation as described
+ in the figure.
+ Velocity boundary conditions are applied at the extreme edges of the model
+ to simulate block motion, steady creep is applied along the blue portion
+ of the fault, and regular earthquakes are applied along the upper portion
+ of the fault.
+ It takes several earthquake cycles for the velocity boundary conditions
+ to approximate the steady flow due to steady block motion, so we would
+ not expect the analytical and numerical solutions to match until several
+ earthquakes have occurred.
+ Another difference lies in the dimensions of the domain.
+ The analytical solution assumes an infinite strike-slip fault in an elastic
+ layer overlying a Maxwell viscoelastic half-space.
+ In our finite element model we are restricted to finite dimensions.
+ We therefore extend the outer boundaries far enough from the region of
+ interest to approximate boundaries at infinity.
+\end_layout
+
+\begin_layout Standard
+Due to the difficulties in representing solutions in an infinite domain,
+ there are several meshes that have been tested for this problem.
+ The simplest meshes have uniform resolution (all cells have equal dimensions);
+ however, such meshes typically do not provide accurate solutions since
+ the resolution is too coarse in the region of interest.
+ For that reason, we also tested meshes where the mesh resolution decreases
+ away from the center.
+ In the problem description that follows, we will focus on the hexahedral
+ mesh with finer discretization near the fault 
+\begin_inset Newline linebreak
+\end_inset
+
+(
+\family typewriter
+meshes/hex8_6.7km.exo.gz
+\family default
+), which provides a good match with the analytical solution.
+ It will first be necessary to gunzip this mesh so that it may be used by
+ PyLith.
+\end_layout
+
+\begin_layout Description
+Domain The domain for this mesh spans the region
+\begin_inset Formula 
+\begin{gather*}
+-1000\leq x\leq1000\ km,\\
+-500\leq y\leq500\ km,\\
+-400\ km\leq z\leq0.
+\end{gather*}
+
+\end_inset
+
+The top (elastic) layer occupies the region 
+\begin_inset Formula $-40\ km\ \leq z\leq0$
+\end_inset
+
+ and the bottom (viscoelastic) layer occupies the region 
+\begin_inset Formula $-400\ km\ \leq z\leq-40\ km$
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+Material
+\begin_inset space ~
+\end_inset
+
+properties The material is a Poisson solid with a shear modulus (
+\begin_inset Formula $\mu$
+\end_inset
+
+) of 30 GPa.
+ The domain is modeled using an elastic isotropic material for the top layer
+ and a Maxwell viscoelastic material for the bottom layer.
+ The bottom layer has a viscosity (
+\begin_inset Formula $\eta$
+\end_inset
+
+) of 2.36682e+19 Pa-s, yielding a relaxation time (
+\begin_inset Formula $2\eta/\mu$
+\end_inset
+
+) of 50 years.
+\end_layout
+
+\begin_layout Description
+Fault The fault is a vertical, left-lateral strike-slip fault.
+ The strike is parallel to the y-direction at the center of the model:
+\begin_inset Formula 
+\begin{gather*}
+x=0\ km,\\
+-500\leq y\leq500\ km,\\
+-40\ km\leq z\leq0.
+\end{gather*}
+
+\end_inset
+
+The locked portion of the fault (red section in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:savageprescott:geometry"
+
+\end_inset
+
+) extends from 
+\begin_inset Formula $-20\: km\leq z\leq0$
+\end_inset
+
+, while the creeping section (blue) extends from 
+\begin_inset Formula $-40\: km\leq z\leq0$
+\end_inset
+
+.
+ Along the line where the two sections coincide (
+\begin_inset Formula $z=-20\: km$
+\end_inset
+
+), half of the coseismic displacement and half of the steady creep is applied
+ (see 
+\family typewriter
+finalslip.spatialdb
+\family default
+ and 
+\family typewriter
+creeprate.spatialdb
+\family default
+).
+\end_layout
+
+\begin_layout Description
+Boundary
+\begin_inset space ~
+\end_inset
+
+conditions On the bottom boundary, vertical displacements are set to zero,
+ while on the y-boundaries the x-displacements are set to zero.
+ On the x-boundaries, the x-displacements are set to zero, while constant
+ velocities of +/- 1 cm/yr are applied in the y-direction, giving a relative
+ plate motion of 2 cm/year.
+\end_layout
+
+\begin_layout Description
+Discretization For the nonuniform hexahedral mesh, the resolution at the
+ outer boundaries is 20 km.
+ An inner region is then put through one level of refinement, so that near
+ the center of the mesh the resolution is 6.7 km.
+ All meshes were generated with CUBIT.
+\end_layout
+
+\begin_layout Description
+Basis
+\begin_inset space ~
+\end_inset
+
+functions We use trilinear hexahedral cells.
+\end_layout
+
+\begin_layout Description
+Solution We compute the surface displacements and compare these to the analytica
+l solution in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:savageprescott:solution"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/model_descript.eps
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Problem description for the Savage and Prescott strike-slip benchmark problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:savageprescott:geometry"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Running the Benchmark
+\end_layout
+
+\begin_layout Standard
+After checking out the benchmark files from the CIG SVN repository, change
+ to the 
+\family typewriter
+meshes
+\family default
+ directory.
+ Decompress the gzipped files in the 
+\family typewriter
+mesh
+\family default
+ directory,
+\end_layout
+
+\begin_layout LyX-Code
+gunzip *.gz
+\end_layout
+
+\begin_layout Standard
+Alternatively, simply gunzip the mesh you want to use.
+ There are a number of 
+\family typewriter
+.cfg
+\family default
+ files corresponding to the different meshes, as well as a 
+\family typewriter
+pylithapp.cfg
+\family default
+ file defining parameters common to all problems.
+ Each problem uses four 
+\family typewriter
+.cfg
+\family default
+ files: 
+\family typewriter
+pylithapp.cfg
+\family default
+, 
+\family typewriter
+fieldsplit.cfg
+\family default
+ (algrebraic multigrid preconditioner), a cell-specific file (e.g., 
+\family typewriter
+hex8.cfg
+\family default
+), and a resolution specific file (e.g., hex8_6.7km.cfg).
+ You can then run the problem by typing
+\end_layout
+
+\begin_layout LyX-Code
+pylith hex8.cfg hex8_6.7km.cfg fieldsplit.cfg
+\end_layout
+
+\begin_layout Standard
+This will run the problem for 10 earthquake cycles of 200 years each, using
+ a time-step size of 10 years, for a total simulation time of 2000 years.
+ Ground surface output occurs every 10 years, while all other outputs occur
+ every 50 years.
+\end_layout
+
+\begin_layout Standard
+Once the problem has run, results will be placed in the 
+\family typewriter
+output
+\family default
+ directory.
+ These results may be viewed directly with a package such as ParaView; however,
+ to compare results to the analytical solution, some postprocessing is required.
+ First, generate the analytical results by running the 
+\family typewriter
+calc_analytic.py
+\family default
+ script.
+ This will produce files with displacements and velocities (
+\family typewriter
+analytic_disp.txt
+\family default
+ and 
+\family typewriter
+analytic_vel.txt
+\family default
+) in the 
+\family typewriter
+output
+\family default
+ directory that are easy to use with a plotting package, such as matplotlib
+ or Matlab.
+\end_layout
+
+\begin_layout Subsection
+Benchmark Results
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:savageprescott:solution"
+
+\end_inset
+
+ shows the computed surface displacements for the 10th earthquake cycle
+ compared with the analytical solution.
+ The profile results were obtained as described above, and then all results
+ (analytical and numerical) were referenced to the displacements immediately
+ following the last earthquake.
+ We find very good agreement between the analytical and numerical solutions,
+ even for meshes with uniform refinement.
+ We have not yet explored quantitative fits as a function of mesh resolution.
+ For this benchmark, it is also important to consider the distance of the
+ boundary from the region of interest.
+ Also note that the agreement between analytical and numerical solutions
+ is poor for early earthquake cycles, due to the differences in simulating
+ the problem, as noted above.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/soln_profiles.eps
+	scale 66
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement profiles perpendicular to the fault for a PyLith simulation
+ with hex8 cells and the analytical solution for earthquake cycle 10.
+ 
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:savageprescott:solution"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/strikeslip/strikeslip.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/strikeslip/strikeslip.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/benchmarks/strikeslip/strikeslip.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,918 +1,982 @@
-#LyX 1.5.6 created this file. For more info see http://www.lyx.org/
-\lyxformat 276
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\language english
-\inputencoding latin1
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-\graphics default
-\paperfontsize default
-\spacing single
-\papersize default
-\use_geometry true
-\use_amsmath 0
-\use_esint 0
-\cite_engine basic
-\use_bibtopic false
-\paperorientation portrait
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 1in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\defskip medskip
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\author "" 
-\author "" 
-\end_header
-
-\begin_body
-
-\begin_layout Section
-\begin_inset LatexCommand label
-name "sec:benchmarks:strikeslip"
-
-\end_inset
-
-Strike-Slip Benchmark
-\end_layout
-
-\begin_layout Standard
-This benchmark problem computes the viscoelastic (Maxwell) relaxation of
- stresses from a single, finite, strike-slip earthquake in 3D without gravity.
-  Dirichlet boundary conditions equal to the analytical elastic solution
- are imposed on the sides of a cube with sides of length 24 km.
- Anti-plane strain boundary conditions are imposed at y = 0, so the solution
- is equivalent to that for a domain with a 48 km length in the y direction.
- We can use the analytical solution of 
-\begin_inset LatexCommand cite
-key "Okada:1992"
-
-\end_inset
-
- both to apply the boundary conditions and to compare against the numerically-co
-mputed elastic solution.
-\end_layout
-
-\begin_layout Standard
-
-\end_layout
-
-\begin_layout Subsection
-Problem Description
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:geometry"
-
-\end_inset
-
- shows the geometry of the strike-slip fault (red surface) embedded in the
- cube consisting of an elastic material (yellow block) over a Maxwell viscoelast
-ic material (blue block).
- 
-\end_layout
-
-\begin_layout Description
-Domain The domain spans the region
-\begin_inset Formula \begin{gather*}
-0\leq x\leq24\ km,\\
-0\leq y\leq24\ km,\\
--24\ km\leq z\leq0.\end{gather*}
-
-\end_inset
-
-The top (elastic) layer occupies the region 
-\begin_inset Formula $-12\ km\ \leq z\leq0$
-\end_inset
-
- and the bottom (viscoelastic) layer occupies the region 
-\begin_inset Formula $-24\ km\ \leq z\leq-12\ km$
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Description
-Material\InsetSpace ~
-properties The material is a Poisson solid with a shear modulus
- of 30 GPa.
- The domain is modeled using an elastic isotropic material for the top layer
- and a Maxwell viscoelastic material for the bottom layer.
- The bottom layer has a viscosity of 1.0e+18 Pa-s.
-\end_layout
-
-\begin_layout Description
-Fault The fault is a vertical, right-lateral strike-slip fault.
- The strike is parallel to the y-direction at the center of the model:
-\begin_inset Formula \begin{gather*}
-x=12\ km,\\
-0\leq y\leq16\ km,\\
--16\ km\leq z\leq0.\end{gather*}
-
-\end_inset
-
-Uniform slip of 1 m is applied over the region 
-\begin_inset Formula $0\leq y\leq12\ km$
-\end_inset
-
- and 
-\begin_inset Formula $-12\ km\leq z\leq0$
-\end_inset
-
- with a linear taper to 0 at y = 16 km and z = -16 km.
- The tapered region is the light red portion of the fault surface in Figure
- 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:geometry"
-
-\end_inset
-
-.
- In the region where the two tapers overlap, each slip value is the minimum
- of the two tapers (so that the taper remains linear).
-\end_layout
-
-\begin_layout Description
-Boundary\InsetSpace ~
-conditions Bottom and side displacements are set to the elastic
- analytical solution, and the top of the model is a free surface.
- There are two exceptions to these applied boundary conditions.
- The first is on the y=0 plane, where y-displacements are left free to preserve
- symmetry, and the x- and z-displacements are set to zero.
- The second is along the line segment between (12, 0, -24) and (12, 24,
- -24), where the analytical solution blows up in some cases.
- Along this line segment, all three displacement components are left free.
-\end_layout
-
-\begin_layout Description
-Discretization The model is discretized with nominal spatial resolutions
- of 1000 m, 500 m, and 250 m.
-\end_layout
-
-\begin_layout Description
-Basis\InsetSpace ~
-functions We use trilinear hexahedral cells and linear tetrahedral
- cells.
-\end_layout
-
-\begin_layout Description
-Solution We compute the error in the elastic solution and compare the solution
- over the domain after 0, 1, 5, and 10 years.
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/geometry.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Geometry of strike-slip benchmark problem.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:geometry"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsection
-Running the Benchmark
-\end_layout
-
-\begin_layout Standard
-After checking out the benchmark files from the CIG SVN repository, change
- to the 
-\family typewriter
-quasistatic/strikeslip
-\family default
- directory.
- Decompress the gzipped files in the meshes and parameters directories,
-\end_layout
-
-\begin_layout LyX-Code
-gunzip meshes/*.gz parameters/*.gz
-\end_layout
-
-\begin_layout Standard
-Change to the parameters directory.
- Each benchmark uses three 
-\family typewriter
-.cfg
-\family default
- files: 
-\family typewriter
-pylithapp.cfg
-\family default
-, a mesher related file (
-\family typewriter
-strikeslip_cubit.cfg
-\family default
- or 
-\family typewriter
-strikeslip_lagrit.cfg
-\family default
-), and a resolution and cell related file (e.g., 
-\family typewriter
-strikeslip_hex8_1000m.cfg
-\family default
-).
- A few examples of running the benchmarks (elastic solution only) are
-\end_layout
-
-\begin_layout LyX-Code
-pylith strikeslip_cubit.cfg strikeslip_hex8_1000m.cfg
-\end_layout
-
-\begin_layout LyX-Code
-pylith strikeslip_cubit.cfg strikeslip_hex8_0500m.cfg
-\end_layout
-
-\begin_layout LyX-Code
-pylith strikeslip_lagrit.cfg strikeslip_tet4_1000m.cfg
-\end_layout
-
-\begin_layout Standard
-To run the time-dependent (viscoelastic) problem, it is necessary to append
- 
-\family typewriter
-timedep.cfg
-\family default
- to the above commands, for example
-\end_layout
-
-\begin_layout LyX-Code
-pylith strikeslip_cubit.cfg strikeslip_hex8_1000m.cfg timedep.cfg
-\end_layout
-
-\begin_layout Standard
-This will run the problem for 10 years, using a time-step size of 0.1 years,
- and results will be output for each year.
- The benchmarks at resolutions of 1000 m, 500 m, and 250 m require  approximatel
-y 150 MB, 960 MB, and 8 GB, respectively.
-\end_layout
-
-\begin_layout Subsection
-Benchmark Results
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:solution"
-
-\end_inset
-
- shows the displacement field from the simulation with hexahedral cells
- using trilinear basis functions at a resolution of 1000 m.
- For each resolution and set of basis functions, we measure the accuracy
- by comparing the numerical solution against the semi-analytical Okada solution
-\begin_inset LatexCommand cite
-key "Okada:1992"
-
-\end_inset
-
-.
- We also compare the accuracy and runtime across resolutions and different
- cell types.
- This provides practical information about what cell types and resolutions
- are required to achieve a given level of accuracy with the shortest runtime.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/soln.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Displacement field for strike-slip benchmark problem.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:solution"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Solution Accuracy
-\end_layout
-
-\begin_layout Standard
-We quantify the error in the finite-element solution by integrating the
- L2 norm of the difference between the finite-element solution  and the
- semi-analytical solution evaluated at the quadrature points.
- We define the local error (error for each finite-element cell) to be
-\begin_inset Formula \begin{equation}
-\epsilon_{local}=\frac{1}{V_{cell}}\sqrt{\intop_{cell}\left(u_{i}^{t}-u_{i}^{fem}\right)^{2}\: dV},\end{equation}
-
-\end_inset
-
-where 
-\begin_inset Formula $u_{i}^{t}$
-\end_inset
-
- is the ith component of the displacement field for the semi-analytical
-  solution, and 
-\begin_inset Formula $u_{i}^{fem}$
-\end_inset
-
- is the ith component of the displacement field for the finite-element 
- solution.
-  Taking the square root of the L2 norm and normalizing by  the volume of
- the cell results in an error metric with dimensions of length.
-  This roughly corresponds to the error in the magnitude of the displacement
- field in the finite element solution.
- We define the global error in a similar fashion,
-\begin_inset Formula \begin{equation}
-\epsilon_{global}=\frac{1}{V_{domain}}\sqrt{\intop_{domain}\left(u_{i}^{t}-u_{i}^{fem}\right)^{2}\: dV},\end{equation}
-
-\end_inset
-
- where we sum the L2 norm computed for the local error over all of the 
- cells before taking the square root and dividing by the volume of the domain.
- CIG has developed a package called 
-\begin_inset LatexCommand htmlurl
-name "Cigma"
-target "geodynamics.org/cig/software/packages/cs/cigma"
-
-\end_inset
-
- that computes these local and global error metrics.
-\end_layout
-
-\begin_layout Standard
-Figures 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:tet4:1000m"
-
-\end_inset
-
- through 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:hex8:250m"
-
-\end_inset
-
- show the local error for each of the three resolutions and two cell types.
- The error decreases with decreasing cell size as expected for a converging
- solution.
- The largest errors, which approach 1 mm for 1 m of slip for a discretization
- size of 250 m, occur where the gradient in slip is discontinuous at the
- boundary between the region of uniform slip and linear taper in slip.
- The linear basis functions cannot match this higher order variation.
- The trilinear basis functions in the hexahedral element provide more terms
- in the polynomial defining the variation in the displacement field within
- each cell compared to the linear basis functions for the tetrahedral cell.
- Consequently, for this problem the error for the hexahedral cells at a
- given resolution is smaller than that for the tetrahedral cells.
- Both sets of cell types and basis functions provide the same rate of convergenc
-e as shown in Figure 
-\begin_inset LatexCommand vref
-reference "fig:benchmark:strikeslip:convergence"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_tet4_1000m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with tetrahedral cells and
- linear basis functions with a uniform discretization size of 1000 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:tet4:1000m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_hex8_1000m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with hexahedral cells and
- trilinear basis functions with a uniform discretization size of 1000 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:hex8:1000m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_tet4_0500m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with tetrahedral cells and
- linear basis functions with a uniform discretization size of 500 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:tet4:500m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_hex8_0500m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with hexahedral cells and
- trilinear basis functions with a uniform discretization size of 500 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:hex8:500m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_tet4_0250m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with tetrahedral cells and
- linear basis functions with a uniform discretization size of 250 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:tet4:250m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/error_hex8_0250m.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Local error for strike-slip benchmark problem with hexahedral cells and
- trilinear basis functions with a uniform discretization size of 250 m.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:hex8:250m"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/convergence.png
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Convergence rate for the strike-slip benchmark problem with tetrahedral
- cells and linear basis functions and with hexahedral cells with trilinear
- basis functions.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:convergence"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Performance
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:summary"
-
-\end_inset
-
- summarizes the overall performance of each of the six simulations.
- Although at a given resolution, the number of degrees of freedom in the
- hexahedral and tetrahedral meshes are the the same, the number of cells
- in the tetrahedral mesh is about six times greater.
- However, we use only one integration point per tetrahedral cell compared
- to eight for the hexahedral cell.
- This leads to approximately the same number of integration points for the
- two meshes, but the time required to unpack/pack information for each cell
- from the Sieve data structure is greater than the time required to do the
- calculation for each quadrature point (which can take advantage of the
- very fast, small memory cache in the processor).
- As a result, the runtime for the simulations with hexahedral cells is significa
-ntly less than that for the tetrahedral cells at the same resolution.
- 
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/summary.pdf
-	scale 50
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Summary of performance of PyLith for the six simulations of the strike-slip
- benchmark.
- For a given discretization size, hexahedral cells with trilinear basis
- functions provide greater accuracy with a shorter runtime compared with
- tetrahedral cells and linear basis functions.
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:summary"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-Figure 
-\begin_inset LatexCommand vref
-reference "fig:benchmark:strikeslip:scaling"
-
-\end_inset
-
- compares the runtime for the benchmark (elastic solution only) at 500 m
- resolution for 1 to 16 processors.
- The total runtime is the time required for the entire simulation, including
- initialization, distributing the mesh over the processors, solving the
- problem in parallel, and writing the output to VTK files.
- Some initialization steps, writing the output to VTK files, and distributing
- the mesh are essentially serial processes.
- For simulations with many time steps these steps will generally occupy
- only a fraction of the runtime, and the runtime will be dominated by the
- solution of the equations.
- Figure 
-\begin_inset LatexCommand ref
-reference "fig:benchmark:strikeslip:scaling"
-
-\end_inset
-
- also shows the total time required to form the Jacobian of the system,
- form the residual, and solve the system.
- These steps provide a more accurate representation of the parallel-performance
- of the computational portion of the code and show excellent performance
- as evident in the approximately linear slope of 0.7.
- S linear decrease with a slope of 1 would indicate strong scaling, which
- is rarely achieved in real applications.
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Standard
-\align center
-\begin_inset Graphics
-	filename figs/scaling.pdf
-	scale 75
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\begin_inset Caption
-
-\begin_layout Standard
-Parallel performance of PyLith for the strike-slip benchmark problem with
- tetrahedral cells and linear basis functions with a uniform discretization
- size of 500 m.
- The total runtime (total) and the runtime to compute the Jacobian and residual
- and solve the system (compute) are shown.
- The compute runtime decreases with a slope of about 0.7; a linear decrease
- with a slope of 1 would indicate strong scaling,  which is rarely achieved
- in any real application.
- 
-\begin_inset LatexCommand label
-name "fig:benchmark:strikeslip:scaling"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 0
+\use_esint 0
+\use_mhchem 0
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 1in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:benchmarks:strikeslip"
+
+\end_inset
+
+Strike-Slip Benchmark
+\end_layout
+
+\begin_layout Standard
+This benchmark problem computes the viscoelastic (Maxwell) relaxation of
+ stresses from a single, finite, strike-slip earthquake in 3D without gravity.
+  Dirichlet boundary conditions equal to the analytical elastic solution
+ are imposed on the sides of a cube with sides of length 24 km.
+ Anti-plane strain boundary conditions are imposed at y = 0, so the solution
+ is equivalent to that for a domain with a 48 km length in the y direction.
+ We can use the analytical solution of 
+\begin_inset CommandInset citation
+LatexCommand cite
+key "Okada:1992"
+
+\end_inset
+
+ both to apply the boundary conditions and to compare against the numerically-co
+mputed elastic solution.
+\end_layout
+
+\begin_layout Standard
+
+\end_layout
+
+\begin_layout Subsection
+Problem Description
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:geometry"
+
+\end_inset
+
+ shows the geometry of the strike-slip fault (red surface) embedded in the
+ cube consisting of an elastic material (yellow block) over a Maxwell viscoelast
+ic material (blue block).
+ 
+\end_layout
+
+\begin_layout Description
+Domain The domain spans the region
+\begin_inset Formula 
+\begin{gather*}
+0\leq x\leq24\ km,\\
+0\leq y\leq24\ km,\\
+-24\ km\leq z\leq0.
+\end{gather*}
+
+\end_inset
+
+The top (elastic) layer occupies the region 
+\begin_inset Formula $-12\ km\ \leq z\leq0$
+\end_inset
+
+ and the bottom (viscoelastic) layer occupies the region 
+\begin_inset Formula $-24\ km\ \leq z\leq-12\ km$
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Description
+Material
+\begin_inset space ~
+\end_inset
+
+properties The material is a Poisson solid with a shear modulus of 30 GPa.
+ The domain is modeled using an elastic isotropic material for the top layer
+ and a Maxwell viscoelastic material for the bottom layer.
+ The bottom layer has a viscosity of 1.0e+18 Pa-s.
+\end_layout
+
+\begin_layout Description
+Fault The fault is a vertical, right-lateral strike-slip fault.
+ The strike is parallel to the y-direction at the center of the model:
+\begin_inset Formula 
+\begin{gather*}
+x=12\ km,\\
+0\leq y\leq16\ km,\\
+-16\ km\leq z\leq0.
+\end{gather*}
+
+\end_inset
+
+Uniform slip of 1 m is applied over the region 
+\begin_inset Formula $0\leq y\leq12\ km$
+\end_inset
+
+ and 
+\begin_inset Formula $-12\ km\leq z\leq0$
+\end_inset
+
+ with a linear taper to 0 at y = 16 km and z = -16 km.
+ The tapered region is the light red portion of the fault surface in Figure
+ 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:geometry"
+
+\end_inset
+
+.
+ In the region where the two tapers overlap, each slip value is the minimum
+ of the two tapers (so that the taper remains linear).
+\end_layout
+
+\begin_layout Description
+Boundary
+\begin_inset space ~
+\end_inset
+
+conditions Bottom and side displacements are set to the elastic analytical
+ solution, and the top of the model is a free surface.
+ There are two exceptions to these applied boundary conditions.
+ The first is on the y=0 plane, where y-displacements are left free to preserve
+ symmetry, and the x- and z-displacements are set to zero.
+ The second is along the line segment between (12, 0, -24) and (12, 24,
+ -24), where the analytical solution blows up in some cases.
+ Along this line segment, all three displacement components are left free.
+\end_layout
+
+\begin_layout Description
+Discretization The model is discretized with nominal spatial resolutions
+ of 1000 m, 500 m, and 250 m.
+\end_layout
+
+\begin_layout Description
+Basis
+\begin_inset space ~
+\end_inset
+
+functions We use trilinear hexahedral cells and linear tetrahedral cells.
+\end_layout
+
+\begin_layout Description
+Solution We compute the error in the elastic solution and compare the solution
+ over the domain after 0, 1, 5, and 10 years.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/geometry.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Geometry of strike-slip benchmark problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:geometry"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Running the Benchmark
+\end_layout
+
+\begin_layout Standard
+After checking out the benchmark files from the CIG SVN repository, change
+ to the 
+\family typewriter
+quasistatic/strikeslip
+\family default
+ directory.
+ Decompress the gzipped files in the meshes and parameters directories,
+\end_layout
+
+\begin_layout LyX-Code
+gunzip meshes/*.gz parameters/*.gz
+\end_layout
+
+\begin_layout Standard
+Change to the parameters directory.
+ Each benchmark uses three 
+\family typewriter
+.cfg
+\family default
+ files: 
+\family typewriter
+pylithapp.cfg
+\family default
+, a mesher related file (
+\family typewriter
+strikeslip_cubit.cfg
+\family default
+ or 
+\family typewriter
+strikeslip_lagrit.cfg
+\family default
+), and a resolution and cell related file (e.g., 
+\family typewriter
+strikeslip_hex8_1000m.cfg
+\family default
+).
+ A few examples of running the benchmarks (elastic solution only) are
+\end_layout
+
+\begin_layout LyX-Code
+pylith strikeslip_cubit.cfg strikeslip_hex8_1000m.cfg
+\end_layout
+
+\begin_layout LyX-Code
+pylith strikeslip_cubit.cfg strikeslip_hex8_0500m.cfg
+\end_layout
+
+\begin_layout LyX-Code
+pylith strikeslip_lagrit.cfg strikeslip_tet4_1000m.cfg
+\end_layout
+
+\begin_layout Standard
+To run the time-dependent (viscoelastic) problem, it is necessary to append
+ 
+\family typewriter
+timedep.cfg
+\family default
+ to the above commands, for example
+\end_layout
+
+\begin_layout LyX-Code
+pylith strikeslip_cubit.cfg strikeslip_hex8_1000m.cfg timedep.cfg
+\end_layout
+
+\begin_layout Standard
+This will run the problem for 10 years, using a time-step size of 0.1 years,
+ and results will be output for each year.
+ The benchmarks at resolutions of 1000 m, 500 m, and 250 m require  approximatel
+y 150 MB, 960 MB, and 8 GB, respectively.
+\end_layout
+
+\begin_layout Subsection
+Benchmark Results
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:solution"
+
+\end_inset
+
+ shows the displacement field from the simulation with hexahedral cells
+ using trilinear basis functions at a resolution of 1000 m.
+ For each resolution and set of basis functions, we measure the accuracy
+ by comparing the numerical solution against the semi-analytical Okada solution
+ 
+\begin_inset CommandInset citation
+LatexCommand cite
+key "Okada:1992"
+
+\end_inset
+
+.
+ We also compare the accuracy and runtime across resolutions and different
+ cell types.
+ This provides practical information about what cell types and resolutions
+ are required to achieve a given level of accuracy with the shortest runtime.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/soln.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for strike-slip benchmark problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:solution"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Solution Accuracy
+\end_layout
+
+\begin_layout Standard
+We quantify the error in the finite-element solution by integrating the
+ L2 norm of the difference between the finite-element solution  and the
+ semi-analytical solution evaluated at the quadrature points.
+ We define the local error (error for each finite-element cell) to be
+\begin_inset Formula 
+\begin{equation}
+\epsilon_{local}=\frac{1}{V_{cell}}\sqrt{\intop_{cell}\left(u_{i}^{t}-u_{i}^{fem}\right)^{2}\: dV},
+\end{equation}
+
+\end_inset
+
+where 
+\begin_inset Formula $u_{i}^{t}$
+\end_inset
+
+ is the ith component of the displacement field for the semi-analytical
+  solution, and 
+\begin_inset Formula $u_{i}^{fem}$
+\end_inset
+
+ is the ith component of the displacement field for the finite-element 
+ solution.
+  Taking the square root of the L2 norm and normalizing by  the volume of
+ the cell results in an error metric with dimensions of length.
+  This roughly corresponds to the error in the magnitude of the displacement
+ field in the finite element solution.
+ We define the global error in a similar fashion,
+\begin_inset Formula 
+\begin{equation}
+\epsilon_{global}=\frac{1}{V_{domain}}\sqrt{\intop_{domain}\left(u_{i}^{t}-u_{i}^{fem}\right)^{2}\: dV},
+\end{equation}
+
+\end_inset
+
+ where we sum the L2 norm computed for the local error over all of the 
+ cells before taking the square root and dividing by the volume of the domain.
+ CIG has developed a package called Cigma 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+geodynamics.org/cig/software/packages/cs/cigma
+\end_layout
+
+\end_inset
+
+ that computes these local and global error metrics.
+\end_layout
+
+\begin_layout Standard
+Figures 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:tet4:1000m"
+
+\end_inset
+
+ through 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:hex8:250m"
+
+\end_inset
+
+ show the local error for each of the three resolutions and two cell types.
+ The error decreases with decreasing cell size as expected for a converging
+ solution.
+ The largest errors, which approach 1 mm for 1 m of slip for a discretization
+ size of 250 m, occur where the gradient in slip is discontinuous at the
+ boundary between the region of uniform slip and linear taper in slip.
+ The linear basis functions cannot match this higher order variation.
+ The trilinear basis functions in the hexahedral element provide more terms
+ in the polynomial defining the variation in the displacement field within
+ each cell compared to the linear basis functions for the tetrahedral cell.
+ Consequently, for this problem the error for the hexahedral cells at a
+ given resolution is smaller than that for the tetrahedral cells.
+ Both sets of cell types and basis functions provide the same rate of convergenc
+e as shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:benchmark:strikeslip:convergence"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_tet4_1000m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with tetrahedral cells and
+ linear basis functions with a uniform discretization size of 1000 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:tet4:1000m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_hex8_1000m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with hexahedral cells and
+ trilinear basis functions with a uniform discretization size of 1000 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:hex8:1000m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_tet4_0500m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with tetrahedral cells and
+ linear basis functions with a uniform discretization size of 500 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:tet4:500m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_hex8_0500m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with hexahedral cells and
+ trilinear basis functions with a uniform discretization size of 500 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:hex8:500m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_tet4_0250m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with tetrahedral cells and
+ linear basis functions with a uniform discretization size of 250 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:tet4:250m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/error_hex8_0250m.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Local error for strike-slip benchmark problem with hexahedral cells and
+ trilinear basis functions with a uniform discretization size of 250 m.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:hex8:250m"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/convergence.png
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Convergence rate for the strike-slip benchmark problem with tetrahedral
+ cells and linear basis functions and with hexahedral cells with trilinear
+ basis functions.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:convergence"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Performance
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:summary"
+
+\end_inset
+
+ summarizes the overall performance of each of the six simulations.
+ Although at a given resolution, the number of degrees of freedom in the
+ hexahedral and tetrahedral meshes are the same, the number of cells in
+ the tetrahedral mesh is about six times greater.
+ However, we use only one integration point per tetrahedral cell compared
+ to eight for the hexahedral cell.
+ This leads to approximately the same number of integration points for the
+ two meshes, but the time required to unpack/pack information for each cell
+ from the Sieve data structure is greater than the time required to do the
+ calculation for each quadrature point (which can take advantage of the
+ very fast, small memory cache in the processor).
+ As a result, the runtime for the simulations with hexahedral cells is significa
+ntly less than that for the tetrahedral cells at the same resolution.
+ 
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/summary.pdf
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Summary of performance of PyLith for the six simulations of the strike-slip
+ benchmark.
+ For a given discretization size, hexahedral cells with trilinear basis
+ functions provide greater accuracy with a shorter runtime compared with
+ tetrahedral cells and linear basis functions.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:summary"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:benchmark:strikeslip:scaling"
+
+\end_inset
+
+ compares the runtime for the benchmark (elastic solution only) at 500 m
+ resolution for 1 to 16 processors.
+ The total runtime is the time required for the entire simulation, including
+ initialization, distributing the mesh over the processors, solving the
+ problem in parallel, and writing the output to VTK files.
+ Some initialization steps, writing the output to VTK files, and distributing
+ the mesh are essentially serial processes.
+ For simulations with many time steps these steps will generally occupy
+ only a fraction of the runtime, and the runtime will be dominated by the
+ solution of the equations.
+ Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:benchmark:strikeslip:scaling"
+
+\end_inset
+
+ also shows the total time required to form the Jacobian of the system,
+ form the residual, and solve the system.
+ These steps provide a more accurate representation of the parallel-performance
+ of the computational portion of the code and show excellent performance
+ as evident in the approximately linear slope of 0.7.
+ S linear decrease with a slope of 1 would indicate strong scaling, which
+ is rarely achieved in real applications.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/scaling.pdf
+	scale 75
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Parallel performance of PyLith for the strike-slip benchmark problem with
+ tetrahedral cells and linear basis functions with a uniform discretization
+ size of 500 m.
+ The total runtime (total) and the runtime to compute the Jacobian and residual
+ and solve the system (compute) are shown.
+ The compute runtime decreases with a slope of about 0.7; a linear decrease
+ with a slope of 1 would indicate strong scaling,  which is rarely achieved
+ in any real application.
+ 
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:benchmark:strikeslip:scaling"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/components.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/components.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/components.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,1506 +1,1510 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 1
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 2
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Chapter
-\begin_inset CommandInset label
-LatexCommand label
-name "cha:components"
-
-\end_inset
-
-PyLith and Spatialdata Components
-\end_layout
-
-\begin_layout Standard
-The name of the component is followed by the full path name and description.
- The full path name is used when setting a component to a facility in a
- 
-\family typewriter
-.cfg
-\family default
- file or with command line arguments.
-\end_layout
-
-\begin_layout Section
-Application components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-PyLithApp pylith.apps.PyLithApp
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-PyLith application.
-\end_layout
-
-\begin_layout Subsection
-Problem components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeDependent pylith.problems.TimeDependent
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Time-dependent problem.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-GreensFns pylith.problems.GreensFns
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Static Green's function problem with slip impulses.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Implicit pylith.problems.Implicit
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Implicit time stepping for static and quasi-static simulations with infinitesima
-l strains.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ImplicitLgDeform pylith.problems.ImplicitLgDeform
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Implicit time stepping for static and quasi-static simulations including
- the effects of rigid body motion and small strains.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Explicit pylith.problems.Explicit
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Explicit time stepping for dynamic simulations with infinitesimal strains.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ExplicitLgDeform pylith.problems.ExplicitLgDeform
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Explicit time stepping for dynamic simulations including the effects of
- rigid body motion and small strains.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ExplicitLumped pylith.problems.ExplicitLumped
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Explicit time stepping for dynamic simulations with a lumped system Jacobian
- matrix.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ExplicitLumpedTri3 pylith.problems.ExplicitLumpedTri3
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Optimized elasticity formulation for linear triangular cells and one quadrature
- point for explicit time stepping in dynamic simulations.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ExplicitLumpedTet4 pylith.problems.ExplicitLumpedTet4
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Optimized elasticity formulation for linear tetrahedral cells and one quadrature
- point for explicit time stepping in dynamic simulations.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SolverLinear pylith.problems.SolverLinear
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linear PETSc solver (KSP).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SolverNonlinear pylith.problems.SolverNonlinear
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Nonlinear PETSc solver (SNES).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SolverLumped pylith.problems.SolverLumped
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Built-in simple, optimized solver for solving systems with a lumped Jacobian.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeStepUniform pylith.problems.TimeStepUniform
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Uniform time stepping.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeStepAdapt pylith.problems.TimeStepAdapt
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Adaptive time stepping (time step selected based on estimated stable time
- step).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeStepUser pylith.problems.TimeStepUser
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-User defined time stepping (variable time step set by user).
-\end_layout
-
-\begin_layout Subsection
-Utility components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-NullComponent pylith.utils.NullComponent
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Null component used to set a facility to an empty value.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-EventLogger pylith.utils.EventLogger
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-PETSc event logger.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MemoryLogger pylith.perf.MemoryLogger
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Memory model logger for reporting memory use by Sieve.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-VTKDataReader pylith.utils.
-\family default
-VTKDataReader
-\begin_inset Newline newline
-\end_inset
-
-Data reader for VTK files, requires TVTK Enthought package available from
- 
-\family typewriter
-https://github.com/enthought/mayavi.
-\end_layout
-
-\begin_layout Subsection
-Topology components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Distributor pylith.topology.Distributor
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Distributor of mesh among processors in parallel simulations.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-JacobianViewer pylith.topology.JacobianViewer
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Viewer for writing Jacobian sparse matrix to file.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshGenerator pylith.topology.MeshGenerator
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Mesh generator/importer.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshImporter pylith.topology.MeshImporter
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Mesh importer/reader.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshRefiner pylith.topology.Mesh
-\family default
-Refiner
-\begin_inset Newline newline
-\end_inset
-
-Default (null) mesh refinement object that does not refine the mesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-RefineUniform pylith.topology.
-\family default
-RefineUniform
-\begin_inset Newline newline
-\end_inset
-
-Uniform global mesh refinement.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ReverseCuthillMcKee pylith.topology.
-\family default
-ReverseCuthillMcKee
-\begin_inset Newline newline
-\end_inset
-
-Object used to manage reordering cells and vertices using the reverse Cuthill-Mc
-Kee algorithm.
-\end_layout
-
-\begin_layout Subsection
-Material components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ElasticStrain1D pylith.materials.ElasticStrain1D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linearly elastic 1-D bulk constitutive model with 1-D strain (
-\begin_inset Formula $\epsilon_{yy}=\epsilon_{zz}=0$
-\end_inset
-
-).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ElasticStress1D pylith.materials.ElasticStress1D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linearly elastic 1-D bulk constitutive model with 1-D stress (
-\begin_inset Formula $\sigma_{yy}=\sigma_{zz}=0$
-\end_inset
-
-).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ElasticPlaneStrain pylith.materials.ElasticPlaneStrain
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linearly elastic 2-D bulk constitutive model with plane strain (
-\begin_inset Formula $\epsilon_{zz}=0$
-\end_inset
-
-).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ElasticPlaneStress pylith.materials.ElasticPlaneStress
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linearly elastic 2-D bulk constitutive model with plane stress (
-\begin_inset Formula $\sigma_{zz}=0$
-\end_inset
-
-).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ElasticIsotropic3D pylith.materials.ElasticIsotropic3D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linearly elastic 3-D bulk constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MaxwellIsotropic3D pylith.materials.MaxwellIsotropic3D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linear Maxwell viscoelastic bulk constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MaxwellPlaneStrain pylith.materials.MaxwellPlaneStrain
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linear Maxwell viscoelastic bulk constitutive model for plane strain problems.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-GenMaxwellIsotropic3D pylith.materials.GenMaxwellIsotropic3D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Generalized Maxwell viscoelastic bulk constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-GenMaxwellPlaneStrain pylith.materials.GenMaxwellPlaneStrain
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Generalized Maxwell viscoelastic bulk constitutive model for plane strain
- problems.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-PowerLaw3D pylith.materials.PowerLaw3D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Power-law viscoelastic bulk constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-PowerLawPlaneStrain pylith.materials.PowerLawPlaneStrain
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Power-law viscoelastic bulk constitutive model for plane strain problems.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DruckerPrage3D pylith.materials.DruckerPrager3D
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Drucker-Prager elastoplastic bulk constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DruckerPragePlaneStrain pylith.materials.DruckerPragerPlaneStrain
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Drucker-Prager elastoplastic bulk constitutive model for plane strain problems.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Homogeneous pylith.materials.Homogeneous
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Container with a single bulk material.
-\end_layout
-
-\begin_layout Subsection
-Boundary condition components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-AbsorbingDampers pylith.bc.AbsorbingDampers
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Absorbing boundary condition using simple dashpots.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DirichletBC pylith.bc.DirichletBC
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Dirichlet (prescribed displacements) boundary condition for a set of points.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DirichletBoundary pylith.bc.DirichletBoundary
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Dirichlet (prescribed displacements) boundary condition for a set of points
- associated with a boundary surface.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Neumann pylith.bc.Neumann
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Neumann (traction) boundary conditions applied to a boundary surface.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-PointForce pylith.bc.PointForce
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Point forces applied to a set of vertices.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ZeroDispDB pylith.bc.ZeroDispDB
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Specialized UniformDB with uniform zero displacements at all degrees of
- freedom.
-\end_layout
-
-\begin_layout Subsection
-Fault components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-FaultCohesiveKin pylith.faults.FaultCohesiveKin
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Fault surface with kinematic (prescribed) slip implemented using cohesive
- elements.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-FaultCohesiveDyn pylith.faults.FaultCohesive
-\family default
-Dyn
-\begin_inset Newline newline
-\end_inset
-
-Fault surface with dynamic (friction) slip implemented using cohesive elements.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-FaultCohesiveImpulses pylith.faults.FaultCohesive
-\family default
-Impulses
-\begin_inset Newline newline
-\end_inset
-
-Fault surface with Green's functions slip impulses implemented using cohesive
- elements.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-EqKinSrc pylith.faults.EqKinSrc
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Kinematic (prescribed) slip earthquake rupture.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SingleRupture pylith.faults.SingleRupture
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Container with one kinematic earthquake rupture.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-StepSlipFn pylith.faults.StepSlipFn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Step function slip-time function.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-ConstRateSlipFn pylith.faults.ConstRateSlipFn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Constant slip rate slip-time function.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-BruneSlipFn pylith.faults.BruneSlipFn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Slip-time function where slip rate is equal to Brune's far-field slip function.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-LiuCosSlipFn pylith.faults.LiuCosSlipFn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Slip-time function composed of three sine/cosine functions.
- Similar to Brune's far-field time function but with more abrupt termination
- of slip.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeHistorySlipFn pylith.faults.TimeHistorySlipFn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Slip-time function with a user-defined slip time function.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TractPerturbation pylith.faults.TractPerturbation
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Prescribed traction perturbation applied to fault with constitituve model
- in additional to tractions from deformation (generally used to nucleate
- a rupture).
-\end_layout
-
-\begin_layout Subsection
-Friction components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-StaticFriction pylith.friction.StaticFriction
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Static friction fault constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SlipWeakening pylith.friction.SlipWeakening
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linear slip-weakening friction fault constitutive model.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-RateStateAgeing pylith.friction.RateStateAgeing
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Dieterich-Ruina rate and state friction with ageing law state variable evolution.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeWeakening pylith.friction.TimeWeakening
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Linear time-weakening friction fault constitutive model.
-\end_layout
-
-\begin_layout Subsection
-Discretization components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-FIATLagrange pylith.feassemble.FIATLagrange
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Finite-element basis functions and quadrature rules for a Lagrange reference
- finite-element cell (point, line, quadrilateral, or hexahedron) using FIAT.
- The basis functions are constructed from the tensor produce of 1-D Lagrange
- reference cells.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-FIATSimplex pylith.feassemble.FIATSimplex
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Finite-element basis functions and quadrature rules for a simplex finite-element
- cell (point, line, triangle, or tetrahedron) using FIAT.
-\end_layout
-
-\begin_layout Subsection
-Output components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshIOAscii pylith.meshio.MeshIOAscii
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Reader for simple mesh ASCII files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshIOCubit pylith.meshio.MeshIOCubit
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Reader for CUBIT Exodus files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-MeshIOLagrit pylith.meshio.MeshIOLagrit
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Reader for LaGriT GMV/Pset files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputManagerMesh pylith.meshio.OutputManagerMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for mesh information and data.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputManagerSubMesh pylith.meshio.OutputManagerSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for submesh information and data.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputSoln pylith.meshio.OutputSoln
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for solution data.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputSolnSubset pylith.meshio.OutputSolnSubset
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for solution data over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputSolnPoints pylith.meshio.OutputSoln
-\family default
-Points
-\begin_inset Newline newline
-\end_inset
-
-Output manager for solution data at arbitrary points in the domain.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputDirichlet pylith.meshio.OutputDirichlet
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for Dirichlet boundary condition information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputNeumann pylith.meshio.OutputNeumann
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for Neumann boundary condition information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputFaultKin pylith.meshio.OutputFaultKin
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for fault with kinematic (prescribed) earthquake ruptures.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputFaultDyn pylith.meshio.OutputFaultDyn
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for fault with dynamic (friction) earthquake ruptures.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputFaultImpulses pylith.meshio.OutputFaultImpulses
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for fault with static slip impulses.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-OutputMatElastic pylith.meshio.OutputMatElastic
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Output manager for bulk constitutive models for elasticity.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SingleOutput pylith.meshio.SingleOutput
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Container with single output manger.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-PointsList pylith.meshio.PointsList
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Manager for text file container points for 
-\family typewriter
-OutputSolnPoints
-\family default
-.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterVTKMesh pylith.meshio.DataWriterVTKMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to VTK files with mesh information.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterVTKSubMesh pylith.meshio.DataWriterVTKSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to VTK files with mesh information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterVTKSubSubMesh pylith.meshio.DataWriterVTKSubSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to VTK files with submesh information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5Mesh pylith.meshio.DataWriterHDF5Mesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with mesh information.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5SubMesh pylith.meshio.DataWriterHDF5SubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with mesh information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5ExtSubSubMesh pylith.meshio.DataWriterHDF5ExtSubSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with submesh information over a submesh
- with datasets written to external raw binary files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5ExtMesh pylith.meshio.DataWriterHDF5ExtMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with mesh information with datasets written
- to external raw binary files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5ExtSubMesh pylith.meshio.DataWriterHDF5ExtSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with mesh information over a submesh with
- datasets written to external raw binary files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-DataWriterHDF5SubSubMesh pylith.meshio.DataWriterHDF5SubSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Writer for output to HDF5 files with submesh information over a submesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CellFilterAvgMesh pylith.meshio.CellFilterAvgMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Filter that averages information over quadrature points of mesh cells.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CellFilterAvgSubMesh pylith.meshio.CellFilterAvgSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Filter that averages information over quadrature points of submesh cells.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-VertexFilterVecNormMesh pylith.meshio.VertexFilterVecNormMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Filter that computes magnitude of vectors for vertex field over mesh.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-VertexFilterVecNormSubMesh pylith.meshio.VertexFilterVecNormSubMesh
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Filter that computes magnitude of vectors for vertex field over submesh.
-\end_layout
-
-\begin_layout Section
-Spatialdata components
-\end_layout
-
-\begin_layout Subsection
-Coordinate system components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CSCart spatialdata.geocoords.CSCart
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Cartesian coordinate system (0-D, 1-D, 2-D, or 3-D).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CSGeo spatialdata.geocoords.CSGeo
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Geographic coordinate system.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CSGeoProj spatialdata.geocoords.CSGeoProj
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Coordinate system associated with a geographic projection.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CSGeoLocalCart spatialdata.geocoords.CSGeoLocalCart
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Local, georeferenced Cartesian coordinate system.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Projector spatialdata.geocoords.Projector
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Geographic projection.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Converter spatialdata.geocoords.Converter
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Converter for transforming coordinates of points from one coordinate system
- to another.
-\end_layout
-
-\begin_layout Subsection
-Spatial database components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-UniformDB spatialdata.spatialdb.UniformDB
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Spatial database with uniform values.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SimpleDB spatialdata.spatialdb.SimpleDB
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Simple spatial database that defines fields using a point cloud.
- Values are determined using a nearest neighbor search or linear interpolation
- in 0-D, 1-D, 2-D, or 3-D.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SimpleIOAscii spatialdata.spatialdb.SimpleIOAscii
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Reader/writer for simple spatial database files.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-SCECCVMH spatialdata.spatialdb.SCECCVMH
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Spatial database interface to the SCEC CVM-H (seismic velocity model).
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-CompositeDB spatialdata.spatialdb.CompositeDB
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Spatial database composed from multiple other spatial databases.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-TimeHistory spatialdata.spatialdb.TimeHistory
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Time history for temporal variations of a parameter.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-GravityField spatialdata.spatialdb.GravityField
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Spatial database providing vector for body forces associated with gravity.
-\end_layout
-
-\begin_layout Subsection
-Nondimensionalization components
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-Nondimensional spatialdata.units.Nondimensional
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Nondimensionalization of length, time, and pressure scales.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-NondimensionalElasticDynamic spatialdata.units.NondimensionalElasticDynamic
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Nondimensionalization of scales for dynamic problems.
-\end_layout
-
-\begin_layout Description
-
-\family typewriter
-NondimensionalElasticQuasistatic spatialdata.units.NondimensionalElasticQuasistati
-c
-\family default
-
-\begin_inset Newline newline
-\end_inset
-
-Nondimensionalization of scales for quasi-static problems.
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 1
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 2
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+\begin_inset CommandInset label
+LatexCommand label
+name "cha:components"
+
+\end_inset
+
+PyLith and Spatialdata Components
+\end_layout
+
+\begin_layout Standard
+The name of the component is followed by the full path name and description.
+ The full path name is used when setting a component to a facility in a
+ 
+\family typewriter
+.cfg
+\family default
+ file or with command line arguments.
+\end_layout
+
+\begin_layout Section
+Application components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+PyLithApp pylith.apps.PyLithApp
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+PyLith application.
+\end_layout
+
+\begin_layout Subsection
+Problem Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeDependent pylith.problems.TimeDependent
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Time-dependent problem.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+GreensFns pylith.problems.GreensFns
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Static Green's function problem with slip impulses.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Implicit pylith.problems.Implicit
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Implicit time stepping for static and quasi-static simulations with infinitesima
+l strains.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ImplicitLgDeform pylith.problems.ImplicitLgDeform
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Implicit time stepping for static and quasi-static simulations including
+ the effects of rigid body motion and small strains.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Explicit pylith.problems.Explicit
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Explicit time stepping for dynamic simulations with infinitesimal strains.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ExplicitLgDeform pylith.problems.ExplicitLgDeform
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Explicit time stepping for dynamic simulations including the effects of
+ rigid body motion and small strains.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ExplicitLumped pylith.problems.ExplicitLumped
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Explicit time stepping for dynamic simulations with a lumped system Jacobian
+ matrix.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ExplicitLumpedTri3 pylith.problems.ExplicitLumpedTri3
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Optimized elasticity formulation for linear triangular cells and one quadrature
+ point for explicit time stepping in dynamic simulations.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ExplicitLumpedTet4 pylith.problems.ExplicitLumpedTet4
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Optimized elasticity formulation for linear tetrahedral cells and one quadrature
+ point for explicit time stepping in dynamic simulations.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SolverLinear pylith.problems.SolverLinear
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear PETSc solver (KSP).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SolverNonlinear pylith.problems.SolverNonlinear
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Nonlinear PETSc solver (SNES).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SolverLumped pylith.problems.SolverLumped
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Built-in simple, optimized solver for solving systems with a lumped Jacobian.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeStepUniform pylith.problems.TimeStepUniform
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Uniform time stepping.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeStepAdapt pylith.problems.TimeStepAdapt
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Adaptive time stepping (time step selected based on estimated stable time
+ step).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeStepUser pylith.problems.TimeStepUser
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+User defined time stepping (variable time step set by user).
+\end_layout
+
+\begin_layout Subsection
+Utility Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+NullComponent pylith.utils.NullComponent
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Null component used to set a facility to an empty value.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+EventLogger pylith.utils.EventLogger
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+PETSc event logger.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MemoryLogger pylith.perf.MemoryLogger
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Memory model logger for reporting memory use by Sieve.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+VTKDataReader pylith.utils.VTKDataReader
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Data reader for VTK files, requires TVTK Enthought package available from
+ 
+\family typewriter
+
+\begin_inset Newline newline
+\end_inset
+
+https://github.com/enthought/mayavi.
+\end_layout
+
+\begin_layout Subsection
+Topology Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Distributor pylith.topology.Distributor
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Distributor of mesh among processors in parallel simulations.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+JacobianViewer pylith.topology.JacobianViewer
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Viewer for writing Jacobian sparse matrix to file.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshGenerator pylith.topology.MeshGenerator
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Mesh generator/importer.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshImporter pylith.topology.MeshImporter
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Mesh importer/reader.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshRefiner pylith.topology.MeshRefiner
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Default (null) mesh refinement object that does not refine the mesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+RefineUniform pylith.topology.RefineUniform
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Uniform global mesh refinement.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ReverseCuthillMcKee pylith.topology.ReverseCuthillMcKee
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Object used to manage reordering cells and vertices using the reverse Cuthill-Mc
+Kee algorithm.
+\end_layout
+
+\begin_layout Subsection
+Material Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ElasticStrain1D pylith.materials.ElasticStrain1D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linearly elastic 1D bulk constitutive model with 1D strain (
+\begin_inset Formula $\epsilon_{yy}=\epsilon_{zz}=0$
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ElasticStress1D pylith.materials.ElasticStress1D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linearly elastic 1D bulk constitutive model with 1D stress (
+\begin_inset Formula $\sigma_{yy}=\sigma_{zz}=0$
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ElasticPlaneStrain pylith.materials.ElasticPlaneStrain
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linearly elastic 2D bulk constitutive model with plane strain (
+\begin_inset Formula $\epsilon_{zz}=0$
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ElasticPlaneStress pylith.materials.ElasticPlaneStress
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linearly elastic 2D bulk constitutive model with plane stress (
+\begin_inset Formula $\sigma_{zz}=0$
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ElasticIsotropic3D pylith.materials.ElasticIsotropic3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linearly elastic 3D bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MaxwellIsotropic3D pylith.materials.MaxwellIsotropic3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear Maxwell viscoelastic bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MaxwellPlaneStrain pylith.materials.MaxwellPlaneStrain
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear Maxwell viscoelastic bulk constitutive model for plane strain problems.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+GenMaxwellIsotropic3D pylith.materials.GenMaxwellIsotropic3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Generalized Maxwell viscoelastic bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+GenMaxwellPlaneStrain pylith.materials.GenMaxwellPlaneStrain
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Generalized Maxwell viscoelastic bulk constitutive model for plane strain
+ problems.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+PowerLaw3D pylith.materials.PowerLaw3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Power-law viscoelastic bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+PowerLawPlaneStrain pylith.materials.PowerLawPlaneStrain
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Power-law viscoelastic bulk constitutive model for plane strain problems.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DruckerPrage3D pylith.materials.DruckerPrager3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Drucker-Prager elastoplastic bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DruckerPragePlaneStrain pylith.materials.DruckerPragerPlaneStrain
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Drucker-Prager elastoplastic bulk constitutive model for plane strain problems.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Homogeneous pylith.materials.Homogeneous
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Container with a single bulk material.
+\end_layout
+
+\begin_layout Subsection
+Boundary Condition Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+AbsorbingDampers pylith.bc.AbsorbingDampers
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Absorbing boundary condition using simple dashpots.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DirichletBC pylith.bc.DirichletBC
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Dirichlet (prescribed displacements) boundary condition for a set of points.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DirichletBoundary pylith.bc.DirichletBoundary
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Dirichlet (prescribed displacements) boundary condition for a set of points
+ associated with a boundary surface.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Neumann pylith.bc.Neumann
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Neumann (traction) boundary conditions applied to a boundary surface.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+PointForce pylith.bc.PointForce
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Point forces applied to a set of vertices.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ZeroDispDB pylith.bc.ZeroDispDB
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Specialized UniformDB with uniform zero displacements at all degrees of
+ freedom.
+\end_layout
+
+\begin_layout Subsection
+Fault Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+FaultCohesiveKin pylith.faults.FaultCohesiveKin
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Fault surface with kinematic (prescribed) slip implemented using cohesive
+ elements.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+FaultCohesiveDyn pylith.faults.FaultCohesiveDyn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Fault surface with dynamic (friction) slip implemented using cohesive elements.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+FaultCohesiveImpulses pylith.faults.FaultCohesiveImpulses
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Fault surface with Green's functions slip impulses implemented using cohesive
+ elements.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+EqKinSrc pylith.faults.EqKinSrc
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Kinematic (prescribed) slip earthquake rupture.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SingleRupture pylith.faults.SingleRupture
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Container with one kinematic earthquake rupture.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+StepSlipFn pylith.faults.StepSlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Step function slip-time function.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ConstRateSlipFn pylith.faults.ConstRateSlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Constant slip rate slip-time function.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+BruneSlipFn pylith.faults.BruneSlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Slip-time function where slip rate is equal to Brune's far-field slip function.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+LiuCosSlipFn pylith.faults.LiuCosSlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Slip-time function composed of three sine/cosine functions.
+ Similar to Brune's far-field time function but with more abrupt termination
+ of slip.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeHistorySlipFn pylith.faults.TimeHistorySlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Slip-time function with a user-defined slip time function.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TractPerturbation pylith.faults.TractPerturbation
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Prescribed traction perturbation applied to fault with constitituve model
+ in additional to tractions from deformation (generally used to nucleate
+ a rupture).
+\end_layout
+
+\begin_layout Subsection
+Friction Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+StaticFriction pylith.friction.StaticFriction
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Static friction fault constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SlipWeakening pylith.friction.SlipWeakening
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear slip-weakening friction fault constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+RateStateAgeing pylith.friction.RateStateAgeing
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Dieterich-Ruina rate and state friction with ageing law state variable evolution.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeWeakening pylith.friction.TimeWeakening
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear time-weakening friction fault constitutive model.
+\end_layout
+
+\begin_layout Subsection
+Discretization Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+FIATLagrange pylith.feassemble.FIATLagrange
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Finite-element basis functions and quadrature rules for a Lagrange reference
+ finite-element cell (point, line, quadrilateral, or hexahedron) using FIAT.
+ The basis functions are constructed from the tensor produce of 1D Lagrange
+ reference cells.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+FIATSimplex pylith.feassemble.FIATSimplex
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Finite-element basis functions and quadrature rules for a simplex finite-element
+ cell (point, line, triangle, or tetrahedron) using FIAT.
+\end_layout
+
+\begin_layout Subsection
+Output Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshIOAscii pylith.meshio.MeshIOAscii
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Reader for simple mesh ASCII files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshIOCubit pylith.meshio.MeshIOCubit
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Reader for CUBIT Exodus files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+MeshIOLagrit pylith.meshio.MeshIOLagrit
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Reader for LaGriT GMV/Pset files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputManagerMesh pylith.meshio.OutputManagerMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for mesh information and data.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputManagerSubMesh pylith.meshio.OutputManagerSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for submesh information and data.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputSoln pylith.meshio.OutputSoln
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for solution data.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputSolnSubset pylith.meshio.OutputSolnSubset
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for solution data over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputSolnPoints pylith.meshio.OutputSolnPoints
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for solution data at arbitrary points in the domain.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputDirichlet pylith.meshio.OutputDirichlet
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for Dirichlet boundary condition information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputNeumann pylith.meshio.OutputNeumann
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for Neumann boundary condition information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputFaultKin pylith.meshio.OutputFaultKin
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for fault with kinematic (prescribed) earthquake ruptures.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputFaultDyn pylith.meshio.OutputFaultDyn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for fault with dynamic (friction) earthquake ruptures.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputFaultImpulses pylith.meshio.OutputFaultImpulses
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for fault with static slip impulses.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+OutputMatElastic pylith.meshio.OutputMatElastic
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Output manager for bulk constitutive models for elasticity.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SingleOutput pylith.meshio.SingleOutput
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Container with single output manger.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+PointsList pylith.meshio.PointsList
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Manager for text file container points for 
+\family typewriter
+OutputSolnPoints
+\family default
+.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterVTKMesh pylith.meshio.DataWriterVTKMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to VTK files with mesh information.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterVTKSubMesh pylith.meshio.DataWriterVTKSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to VTK files with mesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterVTKSubSubMesh pylith.meshio.DataWriterVTKSubSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to VTK files with submesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5Mesh pylith.meshio.DataWriterHDF5Mesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5SubMesh pylith.meshio.DataWriterHDF5SubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtSubSubMesh pylith.meshio.DataWriterHDF5ExtSubSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with submesh information over a submesh
+ with datasets written to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtMesh pylith.meshio.DataWriterHDF5ExtMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information with datasets written
+ to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtSubMesh pylith.meshio.DataWriterHDF5ExtSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information over a submesh with
+ datasets written to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5SubSubMesh pylith.meshio.DataWriterHDF5SubSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with submesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CellFilterAvgMesh pylith.meshio.CellFilterAvgMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Filter that averages information over quadrature points of mesh cells.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CellFilterAvgSubMesh pylith.meshio.CellFilterAvgSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Filter that averages information over quadrature points of submesh cells.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+VertexFilterVecNormMesh pylith.meshio.VertexFilterVecNormMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Filter that computes magnitude of vectors for vertex field over mesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+VertexFilterVecNormSubMesh pylith.meshio.VertexFilterVecNormSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Filter that computes magnitude of vectors for vertex field over submesh.
+\end_layout
+
+\begin_layout Section
+Spatialdata Components
+\end_layout
+
+\begin_layout Subsection
+Coordinate System Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CSCart spatialdata.geocoords.CSCart
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Cartesian coordinate system (0D, 1D, 2D, or 3D).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CSGeo spatialdata.geocoords.CSGeo
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Geographic coordinate system.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CSGeoProj spatialdata.geocoords.CSGeoProj
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Coordinate system associated with a geographic projection.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CSGeoLocalCart spatialdata.geocoords.CSGeoLocalCart
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Local, georeferenced Cartesian coordinate system.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Projector spatialdata.geocoords.Projector
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Geographic projection.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Converter spatialdata.geocoords.Converter
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Converter for transforming coordinates of points from one coordinate system
+ to another.
+\end_layout
+
+\begin_layout Subsection
+Spatial database Components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+UniformDB spatialdata.spatialdb.UniformDB
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Spatial database with uniform values.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SimpleDB spatialdata.spatialdb.SimpleDB
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Simple spatial database that defines fields using a point cloud.
+ Values are determined using a nearest neighbor search or linear interpolation
+ in 0D, 1D, 2D, or 3D.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SimpleIOAscii spatialdata.spatialdb.SimpleIOAscii
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Reader/writer for simple spatial database files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+SCECCVMH spatialdata.spatialdb.SCECCVMH
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Spatial database interface to the SCEC CVM-H (seismic velocity model).
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+CompositeDB spatialdata.spatialdb.CompositeDB
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Spatial database composed from multiple other spatial databases.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+TimeHistory spatialdata.spatialdb.TimeHistory
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Time history for temporal variations of a parameter.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+GravityField spatialdata.spatialdb.GravityField
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Spatial database providing vector for body forces associated with gravity.
+\end_layout
+
+\begin_layout Subsection
+Nondimensionalization components
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+Nondimensional spatialdata.units.Nondimensional
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Nondimensionalization of length, time, and pressure scales.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+NondimensionalElasticDynamic spatialdata.units.NondimensionalElasticDynamic
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Nondimensionalization of scales for dynamic problems.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+NondimensionalElasticQuasistatic spatialdata.units.NondimensionalElasticQuasistati
+c
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Nondimensionalization of scales for quasi-static problems.
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/extending/extending.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/extending/extending.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/extending/extending.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -200,8 +200,8 @@
 \end_layout
 
 \begin_layout Standard
-The UniformVelModel component provides uniform physical properties: P wave
- speed, S wave speed, and density.
+The UniformVelModel component provides uniform physical properties: P-wave
+ speed, S-wave speed, and density.
  Although this is a rather trivial specification of physical properties
  that could be easily done using a UniformDB, this example demonstrates
  how to create a user-defined component that matches the requirements of
@@ -225,7 +225,7 @@
  known names might be necessary.
  Are there other parameters that control the behavior of the component,
  such as a minimum shear wave speed? In our example the user supplies values
- for the P wave speed, S wave speed, and density.
+ for the P-wave speed, S-wave speed, and density.
  The user-supplied parameters become Pyre properties and facilities in the
  Python source file.
  Because our user supplied parameters are floating point values with dimensions,
@@ -270,7 +270,7 @@
 \family default
 .
  The C++ object also includes the accessor functions that allow us to set
- the P wave speed, S wave speed, and density values to the user-specified
+ the P-wave speed, S-wave speed, and density values to the user-specified
  values in the Python object.
  Additional information, such as a file name, parameters defined as data
  structures, etc., would be set via similar accessor functions.
@@ -386,9 +386,9 @@
  example must also use georeferenced coordinates.
  The dislocation example in the PyLith 
 \family typewriter
-examples/twocells/twotet4-geopro
+examples/twocells/twotet4-geoproj
 \family default
-j directory uses UTM zone 11 coordinates.
+ directory uses UTM zone 11 coordinates.
  The spatial database package will transform the coordinates between the
  two projections as defined in the UniformVelModel 
 \family typewriter
@@ -464,8 +464,7 @@
 \family default
 , is not particularly useful, but it illustrates the basic steps involved
  in creating a bulk constitutive model with state variables.
- The sources files are included with the main PyLith source code in the
- 
+ The source files are included with the main PyLith source code in the 
 \family typewriter
 templates/materials
 \family default
@@ -489,8 +488,8 @@
  The specification of the physical properties and state variables associated
  with the constitutive model is handled directly in the C++ code.
  As a result, the Python object for the constitutive model component is
- very simple and customization is limited to simply changing the names of
- objects and labels.
+ very simple, and customization is limited to simply changing the names
+ of objects and labels.
 \end_layout
 
 \begin_layout Standard
@@ -589,7 +588,7 @@
 \begin_layout Standard
 Because it is sometimes convenient to supply physical properties for a bulk
  constitutive model that are equivalent but different from the ones that
- appear in the constitutive equations (e.g., P wave speed, S wave speed, and
+ appear in the constitutive equations (e.g., P-wave speed, S-wave speed, and
  density rather then Lame's constants 
 \begin_inset Formula $\mu,$
 \end_inset
@@ -620,7 +619,7 @@
 \end_layout
 
 \begin_layout Standard
-The SWIG interface files for a bulk constitutive component are setup in
+The SWIG interface files for a bulk constitutive component are set up in
  the same manner as in the previous example of creating a customized spatial
  database component.
  The ``main'' SWIG interface file (
@@ -666,9 +665,12 @@
 \family typewriter
 Makefile.am
 \family default
- file as necessary, then generate the configure script, run configure, and
- then build and install the library and module (see the 
+ file as necessary, then generate the configure script, run 
 \family typewriter
+configure
+\family default
+, and then build and install the library and module (see the 
+\family typewriter
 README
 \family default
  file for detailed instructions).
@@ -782,8 +784,7 @@
 \family default
 , is not particularly useful, but it illustrates the basic steps involved
  in creating a fault constitutive model.
- The sources files are included with the main PyLith source code in the
- 
+ The source files are included with the main PyLith source code in the 
 \family typewriter
 templates/friction
 \family default
@@ -922,7 +923,7 @@
 \end_layout
 
 \begin_layout Standard
-The SWIG interface files for a fault constitutive component are setup in
+The SWIG interface files for a fault constitutive component are set up in
  the same manner as in the previous examples of creating a bulk constitutive
  model or a customized spatial database component.
  The ``main'' SWIG interface file (
@@ -968,9 +969,12 @@
 \family typewriter
 Makefile.am
 \family default
- file as necessary, then generate the configure script, run configure, and
- then build and install the library and module (see the 
+ file as necessary, then generate the configure script, run 
 \family typewriter
+configure
+\family default
+, and then build and install the library and module (see the 
+\family typewriter
 README
 \family default
  file for detailed instructions).
@@ -1016,8 +1020,12 @@
  You can try using it in any of the 2D or 3D examples.
  For the examples in 
 \family typewriter
-examples/bar_shearwave/quad4, in shearwave_staticfriction.cfg
+examples/bar_shearwave/quad4,
 \family default
+ in 
+\family typewriter
+shearwave_staticfriction.cfg
+\family default
  replace the line
 \end_layout
 

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/fileformats/fileformats.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/fileformats/fileformats.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/fileformats/fileformats.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,1694 +1,1694 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 1
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 2
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Chapter
-\begin_inset CommandInset label
-LatexCommand label
-name "cha:File-Formats"
-
-\end_inset
-
-File Formats
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:MeshIOAscii"
-
-\end_inset
-
-PyLith Mesh ASCII Files
-\end_layout
-
-\begin_layout Standard
-PyLith mesh ASCII files allow quick specification of the mesh information
- for very small, simple meshes that are most easily written by hand.
- We do not recommend using this format for anything other than these very
- small, simple meshes.
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\noindent
-\align center
-\begin_inset Graphics
-	filename figs/meshquad4.eps
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Diagram of mesh specified in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:meshioascii:format"
-
-\end_inset
-
-.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:meshioascii:diagram"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-// This mesh file defines a finite-element mesh composed of two
-\end_layout
-
-\begin_layout LyX-Code
-// square cells of edge length 2.
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-// Comments can appear almost anywhere in these files and are
-\end_layout
-
-\begin_layout LyX-Code
-// delimited with two slashes (//) just like in C++.
- All text and 
-\end_layout
-
-\begin_layout LyX-Code
-// whitespace after the delimiter on a given line is ignored.
-\end_layout
-
-\begin_layout LyX-Code
-mesh = { // begin specification of the mesh
-\end_layout
-
-\begin_layout LyX-Code
-  dimension = 2 // spatial dimension of the mesh
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-  // Begin vertex and cell labels with 0.
- This is the default so 
-\end_layout
-
-\begin_layout LyX-Code
-  // this next line is optional
-\end_layout
-
-\begin_layout LyX-Code
-  use-index-zero = true
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-  vertices = { // vertices or nodes of the finite-element cells
-\end_layout
-
-\begin_layout LyX-Code
-    dimension = 2 // spatial dimension of the vertex coordinates
-\end_layout
-
-\begin_layout LyX-Code
-    count = 6 // number of vertices in the mesh
-\end_layout
-
-\begin_layout LyX-Code
-    coordinates = { // list of vertex index and coordinates
-\end_layout
-
-\begin_layout LyX-Code
-      // the coordinates must coincide with the coordinate 
-\end_layout
-
-\begin_layout LyX-Code
-      // system specified in the Mesh object
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-      // exactly one vertex must appear on each line
-\end_layout
-
-\begin_layout LyX-Code
-      // (excluding whitespace)
-\end_layout
-
-\begin_layout LyX-Code
-      0    -2.0  -1.0
-\end_layout
-
-\begin_layout LyX-Code
-      1    -2.0  +1.0
-\end_layout
-
-\begin_layout LyX-Code
-      2     0.0  -1.0
-\end_layout
-
-\begin_layout LyX-Code
-      3     0.0  +1.0
-\end_layout
-
-\begin_layout LyX-Code
-      4    +2.0  -1.0
-\end_layout
-
-\begin_layout LyX-Code
-      5    +2.0  +1.0
-\end_layout
-
-\begin_layout LyX-Code
-    } // end of coordinates list
-\end_layout
-
-\begin_layout LyX-Code
-  } // end of vertices
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  cells = { // finite-element cells
-\end_layout
-
-\begin_layout LyX-Code
-    count = 2 // number of cells in the mesh
-\end_layout
-
-\begin_layout LyX-Code
-    num-corners = 4 // number of vertices defining the cell
-\end_layout
-
-\begin_layout LyX-Code
-    simplices = { // list of vertices in each cell
-\end_layout
-
-\begin_layout LyX-Code
-      // see Section 4.2 for diagrams giving the order for each 
-\end_layout
-
-\begin_layout LyX-Code
-      // type of cell supported in PyLith
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-      // index of cell precedes the list of vertices for the cell 
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-      // exactly one cell must appear on each line
-\end_layout
-
-\begin_layout LyX-Code
-      // (excluding whitespace)
-\end_layout
-
-\begin_layout LyX-Code
-      0    0  2  3  1
-\end_layout
-
-\begin_layout LyX-Code
-      1    4  5  3  2
-\end_layout
-
-\begin_layout LyX-Code
-    } // end of simplices list
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-    material-ids = { // associated each cell with a material model
-\end_layout
-
-\begin_layout LyX-Code
-      // the material id is specified using the index of the cell 
-\end_layout
-
-\begin_layout LyX-Code
-      // and then the corresponding material id
-\end_layout
-
-\begin_layout LyX-Code
-      0   0 // cell 0 has a material id of 0
-\end_layout
-
-\begin_layout LyX-Code
-      1   2 // cell 1 has a material id of 2
-\end_layout
-
-\begin_layout LyX-Code
-    } // end of material-ids list
-\end_layout
-
-\begin_layout LyX-Code
-  } // end of cells
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // This next section lists groups of vertices that can be used
-\end_layout
-
-\begin_layout LyX-Code
-  // in applying boundary conditions to portions of the domain
-\end_layout
-
-\begin_layout LyX-Code
-  group = { // start of a group
-\end_layout
-
-\begin_layout LyX-Code
-    // the name can have whitespace, so no comments are allowed
-\end_layout
-
-\begin_layout LyX-Code
-    // after the name
-\end_layout
-
-\begin_layout LyX-Code
-    name = face +y
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-    // Either groups of vertices or groups of cells can be     
-\end_layout
-
-\begin_layout LyX-Code
-    // specified, but currently PyLith only makes use of groups 
-\end_layout
-
-\begin_layout LyX-Code
-    // of vertices
-\end_layout
-
-\begin_layout LyX-Code
-    type = vertices // 'vertices' or 'cells'
-\end_layout
-
-\begin_layout LyX-Code
-    count = 2 // number of vertices in the group
-\end_layout
-
-\begin_layout LyX-Code
-    indices = { // list of vertex indices in the group
-\end_layout
-
-\begin_layout LyX-Code
-      // multiple vertices may appear on a line
-\end_layout
-
-\begin_layout LyX-Code
-      0  4 // this group contains vertices 0 and 4
-\end_layout
-
-\begin_layout LyX-Code
-    } // end of list of vertices
-\end_layout
-
-\begin_layout LyX-Code
-  } // end of group
-\end_layout
-
-\begin_layout LyX-Code
-  // additional groups can be listed here
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format of 
-\family typewriter
-PyLith
-\family default
- mesh ASCII files.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:meshioascii:format"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Spatialdata:SimpleIOAscii"
-
-\end_inset
-
-SimpleDB Spatial Database Files
-\end_layout
-
-\begin_layout Standard
-SimpleDB spatial database files contain a header describing the set of points
- and then the data with each line listing the coordinates of a point followed
- by the values of the fields for that point.
- 
-\end_layout
-
-\begin_layout LyX-Code
-// This spatial database specifies the distribution of slip on the
-\end_layout
-
-\begin_layout LyX-Code
-// fault surface.
- In this case we prescribe a piecewise linear, 
-\end_layout
-
-\begin_layout LyX-Code
-// depth dependent distribution of slip.
- The slip is 2.0 m 
-\end_layout
-
-\begin_layout LyX-Code
-// right-lateral with 0.25 m of reverse slip at the surface with
-\end_layout
-
-\begin_layout LyX-Code
-// a linear taper from 2.0 m to 0.0 m from -2 km to -4 km.
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// Comments can appear almost anywhere in these files and are
-\end_layout
-
-\begin_layout LyX-Code
-// delimited with two slashes (//) just like in C++.
- All text and 
-\end_layout
-
-\begin_layout LyX-Code
-// whitespace after the delimiter on a given line is ignored.
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// The next line is the magic header for spatial database files 
-\end_layout
-
-\begin_layout LyX-Code
-// in ASCII format.
-\end_layout
-
-\begin_layout LyX-Code
-#SPATIAL.ascii 1
-\end_layout
-
-\begin_layout LyX-Code
-SimpleDB { // start specifying the database parameters
-\end_layout
-
-\begin_layout LyX-Code
-  num-values = 3 // number of values in the database
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Specify the names and the order of the values as they appear 
-\end_layout
-
-\begin_layout LyX-Code
-  // in the data.
- The names of the values must correspond to the 
-\end_layout
-
-\begin_layout LyX-Code
-  // names PyLith requests in querying the database.
-\end_layout
-
-\begin_layout LyX-Code
-  value-names =  left-lateral-slip  reverse-slip  fault-opening
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Specify the units of the values in Python syntax (e.g., kg/m**3).
-\end_layout
-
-\begin_layout LyX-Code
-  value-units =  m  m  m
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-  num-locs = 3 // Number of locations where values are given
-\end_layout
-
-\begin_layout LyX-Code
-  data-dim = 1 // Locations of data points form a line
-\end_layout
-
-\begin_layout LyX-Code
-  space-dim = 3 // Spatial dimension in which data resides
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Specify the coordinate system associated with the 
-\end_layout
-
-\begin_layout LyX-Code
-  // coordinates of the locations where data is given
-\end_layout
-
-\begin_layout LyX-Code
-  cs-data = cartesian { // Use a Cartesian coordinate system
-\end_layout
-
-\begin_layout LyX-Code
-    to-meters = 1.0e+3 // Coordinates are in km
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-    // Specify the spatial dimension of the coordinate system
-\end_layout
-
-\begin_layout LyX-Code
-    // This value must match the one associated with the database
-\end_layout
-
-\begin_layout LyX-Code
-    space-dim = 3
-\end_layout
-
-\begin_layout LyX-Code
-  } // cs-data // end of coordinate system specification
-\end_layout
-
-\begin_layout LyX-Code
-} // end of SimpleDB specification
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// The locations and values are listed after the parameters.
-\end_layout
-
-\begin_layout LyX-Code
-// Columns are coordinates of the points (1 column for each 
-\end_layout
-
-\begin_layout LyX-Code
-// spatial dimension) followed by the data values in the order 
-\end_layout
-
-\begin_layout LyX-Code
-// specified by the value-names field.
-\end_layout
-
-\begin_layout LyX-Code
-0.0  0.0  0.0    -2.00  0.25  0.00
-\end_layout
-
-\begin_layout LyX-Code
-0.0  0.0 -2.0    -2.00  0.00  0.00
-\end_layout
-
-\begin_layout LyX-Code
-0.0  0.0 -4.0     0.00  0.00  0.00
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format of spatial database files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsection
-Spatial Database Coordinate Systems
-\end_layout
-
-\begin_layout Standard
-The spatial database files support four different types of coordinate systems.
- Conversions among the three geographic coordinate systems are supported
- in 3D.
- Conversions among the geographic and geographic projected coordinate systems
- are supported in 2D.
- In using the coordinate systems, we assume that you have installed the
- 
-\family typewriter
-proj
-\family default
- program in addition to the Proj.4 libraries, so that you can obtain a list
- of support projections, datums, and ellipsoids.
- Alternatively, refer to the documentation for the Proj.4 Cartographic Projection
-s library 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-trac.osgeo.org/proj
-\end_layout
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Subsubsection
-Cartesian
-\end_layout
-
-\begin_layout Standard
-This is a conventional Cartesian coordinate system.
- Conversions to other Cartesian coordinate systems are possible.
-\end_layout
-
-\begin_layout LyX-Code
-cs-data = cartesian {
-\end_layout
-
-\begin_layout LyX-Code
-  to-meters = 1.0e+3 // Locations in km
-\end_layout
-
-\begin_layout LyX-Code
-  space-dim = 2 // 1, 2, or 3 dimensions
-\end_layout
-
-\begin_layout LyX-Code
-}
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format for Cartesian coordinate systems in spatial database files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Geographic
-\end_layout
-
-\begin_layout Standard
-This coordinate system is for geographic coordinates, such as longitude
- and latitude.
- Specification of the location in three-dimensions is supported.
- The vertical datum can be either the reference ellipsoid or mean sea level.
- The vertical coordinate is positive upwards.
-\end_layout
-
-\begin_layout LyX-Code
-cs-data = geographic {
-\end_layout
-
-\begin_layout LyX-Code
-  // Conversion factor to get to meters (only applies to vertical 
-\end_layout
-
-\begin_layout LyX-Code
-  // coordinate unless you are using a geocentric coordinate system).
-\end_layout
-
-\begin_layout LyX-Code
-  to-meters = 1.0e+3
-\end_layout
-
-\begin_layout LyX-Code
-  space-dim = 2 // 2 or 3 dimensions
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -le
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available reference ellipsoids.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  ellipsoid = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -ld
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available datums.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-horiz = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // 
-\begin_inset Quotes eld
-\end_inset
-
-ellipsoid
-\begin_inset Quotes erd
-\end_inset
-
- or 
-\begin_inset Quotes eld
-\end_inset
-
-mean sea level
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-vert = ellipsoid
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Use a geocentric coordinate system?
-\end_layout
-
-\begin_layout LyX-Code
-  is-geocentric = false // true or false
-\end_layout
-
-\begin_layout LyX-Code
-}
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format for geographic coordinate systems in spatial database files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Geographic Projection
-\end_layout
-
-\begin_layout Standard
-This coordinate system applies to geographic projections.
- As in the geographic coordinate system, the vertical coordinate (if used)
- can be specified with respect to either the reference ellipsoid or mean
- sea level.
-\end_layout
-
-\begin_layout LyX-Code
-cs-data = geo-projected {
-\end_layout
-
-\begin_layout LyX-Code
-  to-meters = 1.0e+3 // Conversion factor to get to meters.
-\end_layout
-
-\begin_layout LyX-Code
-  space-dim = 2 // 2 or 3 dimensions
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -le
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available reference ellipsoids.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  ellipsoid = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -ld
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available datums.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-horiz = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // 
-\begin_inset Quotes eld
-\end_inset
-
-ellipsoid
-\begin_inset Quotes erd
-\end_inset
-
- or 
-\begin_inset Quotes eld
-\end_inset
-
-mean sea level
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-vert = ellipsoid
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -lp
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available geographic 
-\end_layout
-
-\begin_layout LyX-Code
-  // projections.
-\end_layout
-
-\begin_layout LyX-Code
-    projector = projection {
-\end_layout
-
-\begin_layout LyX-Code
-    // Name of the projection.
- run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -lp
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of 
-\end_layout
-
-\begin_layout LyX-Code
-    // supported projections.
- Use the Universal Transverse Mercator
-\end_layout
-
-\begin_layout LyX-Code
-    // projection.
-\end_layout
-
-\begin_layout LyX-Code
-    projection = utm
-\end_layout
-
-\begin_layout LyX-Code
-    units = m // Units in the projection.
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-    // Provide a list of projection options; these are the command 
-\end_layout
-
-\begin_layout LyX-Code
-    // line arguments you would use with the proj program.
- Refer to
-\end_layout
-
-\begin_layout LyX-Code
-    // the Proj.4 library documentation for complete details.
-\end_layout
-
-\begin_layout LyX-Code
-    // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-    proj-options = +zone=10
-\end_layout
-
-\begin_layout LyX-Code
-}
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format for geographic projection coordinate systems in spatial database
- files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Geographic Local Cartesian
-\end_layout
-
-\begin_layout Standard
-This coordinate system is a geographically referenced, local 3D Cartesian
- coordinate system.
- This allows use of a conventional Cartesian coordinate system with accurate
- georeferencing.
- For example, one can construct a finite-element model in this coordinate
- system and use spatial databases in geographic coordinates.
- This coordinate system provides an alternative to using a geographic projection
- as the Cartesian grip.
- The advantage of this coordinate system is that it retains the curvature
- of the Earth, while a geographic projection does not.
-\end_layout
-
-\begin_layout LyX-Code
-cs-data = geo-local-cartesian {
-\end_layout
-
-\begin_layout LyX-Code
-  // Conversion factor to get to meters (only applies to vertical
-\end_layout
-
-\begin_layout LyX-Code
-  // coordinate unless you are using a geocentric coordinate system).
-\end_layout
-
-\begin_layout LyX-Code
-  to-meters = 1.0 // use meters
-\end_layout
-
-\begin_layout LyX-Code
-  space-dim = 2 // 2 or 3 dimensions
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -le
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available reference ellipsoids.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  ellipsoid = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Run 
-\begin_inset Quotes eld
-\end_inset
-
-proj -ld
-\begin_inset Quotes erd
-\end_inset
-
- to see a list of available datums.
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-horiz = WGS84
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // 
-\begin_inset Quotes eld
-\end_inset
-
-ellipsoid
-\begin_inset Quotes erd
-\end_inset
-
- or 
-\begin_inset Quotes eld
-\end_inset
-
-mean sea level
-\begin_inset Quotes erd
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-  // Comments are not allowed at the end of the next line.
-\end_layout
-
-\begin_layout LyX-Code
-  datum-vert = ellipsoid
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Origin of the local Cartesian coordinate system.
- To avoid
-\end_layout
-
-\begin_layout LyX-Code
-  // round-off errors it is best to pick a location near the center of
-\end_layout
-
-\begin_layout LyX-Code
-  // the region of interest.
- An elevation on the surface of the Earth
-\end_layout
-
-\begin_layout LyX-Code
-  // in the middle of the region also works well (and makes the
-\end_layout
-
-\begin_layout LyX-Code
-  // vertical coordinate easy to interpret).
-\end_layout
-
-\begin_layout LyX-Code
-  origin-lon = -116.7094 // Longitude of the origin in decimal degrees
-\end_layout
-
-\begin_layout LyX-Code
-                         // (west is negative).
-\end_layout
-
-\begin_layout LyX-Code
-  origin-lat = 36.3874 // Latitude of the origin in decimal degrees 
-\end_layout
-
-\begin_layout LyX-Code
-                       // (north is positive).
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Elevation with respect to the vertical datum.
- Units are the
-\end_layout
-
-\begin_layout LyX-Code
-  // same as the Cartesian coordinate system (in this case meters).
-\end_layout
-
-\begin_layout LyX-Code
-  origin-elev = 3.5
-\end_layout
-
-\begin_layout LyX-Code
-}
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format for the geographic local Cartesian coordinate system in spatial database
- files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Spatialdata:TimeHistoryIO"
-
-\end_inset
-
-Time History Database Files
-\end_layout
-
-\begin_layout Standard
-Time history database files contain a header describing the numer of points
- in the time history and the units for the time stamps followed by a list
- with pairs of time stamps and amplitude values.
- The amplitude at an arbitraty point in time is computed via interpolation
- of the values in the database.
- This means that the time history database must span the range of time values
- of interest.
- The points in the time history must also be ordered in time.
-\end_layout
-
-\begin_layout LyX-Code
-// This time history database specifies temporal variation in
-\end_layout
-
-\begin_layout LyX-Code
-// amplitude.
- In this case we prescribe a triangular slip time
-\end_layout
-
-\begin_layout LyX-Code
-// history.
- 
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// Comments can appear almost anywhere in these files and are
-\end_layout
-
-\begin_layout LyX-Code
-// delimited with two slashes (//) just like in C++.
- All text and 
-\end_layout
-
-\begin_layout LyX-Code
-// whitespace after the delimiter on a given line is ignored.
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// The next line is the magic header for spatial database files 
-\end_layout
-
-\begin_layout LyX-Code
-// in ASCII format.
-\end_layout
-
-\begin_layout LyX-Code
-#TIME HISTORY ascii
-\end_layout
-
-\begin_layout LyX-Code
-TimeHistory { // start specifying the database parameters
-\end_layout
-
-\begin_layout LyX-Code
-  num-points = 5 // number of points in time history
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-  // Specify the units used in the time stamps.
-\end_layout
-
-\begin_layout LyX-Code
-  time-units = year
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-} // end of TimeHistory header
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// The time history values are listed after the parameters.
-\end_layout
-
-\begin_layout LyX-Code
-// Columns time and amplitude where the amplitude values are unitless.
-\end_layout
-
-\begin_layout LyX-Code
- 0.0     0.00
-\end_layout
-
-\begin_layout LyX-Code
- 2.0     1.00
-\end_layout
-
-\begin_layout LyX-Code
- 6.0     4.00
-\end_layout
-
-\begin_layout LyX-Code
-10.0     2.00
-\end_layout
-
-\begin_layout LyX-Code
-11.0     0.00
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format of time history database files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:FileFormat:TimeStepUser"
-
-\end_inset
-
-User-Specified Time Step File
-\end_layout
-
-\begin_layout Standard
-This file lists the time step sizes for nonuniform, user-specified time
- steps.
- The file's format is an ASCII file that includes the units for the time
- step sizes and then a list of the time steps.
- 
-\end_layout
-
-\begin_layout LyX-Code
-// This time step file specifies five time steps with the units in years.
-\end_layout
-
-\begin_layout LyX-Code
- 
-\end_layout
-
-\begin_layout LyX-Code
-// Comments can appear almost anywhere in these files and are
-\end_layout
-
-\begin_layout LyX-Code
-// delimited with two slashes (//) just like in C++.
- All text and 
-\end_layout
-
-\begin_layout LyX-Code
-// whitespace after the delimiter on a given line is ignored.
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-// Units for the time steps
-\end_layout
-
-\begin_layout LyX-Code
-units = year
-\end_layout
-
-\begin_layout LyX-Code
-
-\end_layout
-
-\begin_layout LyX-Code
-1.0 // Comment
-\end_layout
-
-\begin_layout LyX-Code
-2.0
-\end_layout
-
-\begin_layout LyX-Code
-3.0
-\end_layout
-
-\begin_layout LyX-Code
-2.5
-\end_layout
-
-\begin_layout LyX-Code
-3.0
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format of user-specified time step files.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:FileFormat:PointsList"
-
-\end_inset
-
-Points List File
-\end_layout
-
-\begin_layout Standard
-This file lists the coordinates of the locations where output is requested
- for the 
-\family typewriter
-OutputSolnPoints
-\family default
- component.
- The coordinate system is specified in the 
-\family typewriter
-OutputSolnPoints
-\family default
- component.
- 
-\end_layout
-
-\begin_layout LyX-Code
-# This time step file specifies five time steps with the units in years.
-\end_layout
-
-\begin_layout LyX-Code
-#
-\end_layout
-
-\begin_layout LyX-Code
-# Comments are limited to complete lines.
- The default delimiter for comments
-\end_layout
-
-\begin_layout LyX-Code
-# is '#', which can be changed via parameters.
- Additionally, the delimiter 
-\end_layout
-
-\begin_layout LyX-Code
-# separating values can also be customized (default is whitespace).
-\end_layout
-
-\begin_layout LyX-Code
-1.0  -2.0   0.0
-\end_layout
-
-\begin_layout LyX-Code
-2.0  -4.0  -0.1
-\end_layout
-
-\begin_layout LyX-Code
-0.0  +2.0   0.0
-\end_layout
-
-\begin_layout LyX-Code
-2.5  -0.2  -0.2 
-\end_layout
-
-\begin_layout LyX-Code
-0.0   2.0  +0.2
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Format of files with coordinates of points for output.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 1
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 2
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+\begin_inset CommandInset label
+LatexCommand label
+name "cha:File-Formats"
+
+\end_inset
+
+File Formats
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:MeshIOAscii"
+
+\end_inset
+
+PyLith Mesh ASCII Files
+\end_layout
+
+\begin_layout Standard
+PyLith mesh ASCII files allow quick specification of the mesh information
+ for very small, simple meshes that are most easily written by hand.
+ We do not recommend using this format for anything other than these very
+ small, simple meshes.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Graphics
+	filename figs/meshquad4.eps
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Diagram of mesh specified in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:meshioascii:format"
+
+\end_inset
+
+.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:meshioascii:diagram"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+// This mesh file defines a finite-element mesh composed of two
+\end_layout
+
+\begin_layout LyX-Code
+// square cells of edge length 2.
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+// Comments can appear almost anywhere in these files and are
+\end_layout
+
+\begin_layout LyX-Code
+// delimited with two slashes (//) just like in C++.
+ All text and 
+\end_layout
+
+\begin_layout LyX-Code
+// whitespace after the delimiter on a given line is ignored.
+\end_layout
+
+\begin_layout LyX-Code
+mesh = { // begin specification of the mesh
+\end_layout
+
+\begin_layout LyX-Code
+  dimension = 2 // spatial dimension of the mesh
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+  // Begin vertex and cell labels with 0.
+ This is the default so 
+\end_layout
+
+\begin_layout LyX-Code
+  // this next line is optional
+\end_layout
+
+\begin_layout LyX-Code
+  use-index-zero = true
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+  vertices = { // vertices or nodes of the finite-element cells
+\end_layout
+
+\begin_layout LyX-Code
+    dimension = 2 // spatial dimension of the vertex coordinates
+\end_layout
+
+\begin_layout LyX-Code
+    count = 6 // number of vertices in the mesh
+\end_layout
+
+\begin_layout LyX-Code
+    coordinates = { // list of vertex index and coordinates
+\end_layout
+
+\begin_layout LyX-Code
+      // the coordinates must coincide with the coordinate 
+\end_layout
+
+\begin_layout LyX-Code
+      // system specified in the Mesh object
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+      // exactly one vertex must appear on each line
+\end_layout
+
+\begin_layout LyX-Code
+      // (excluding whitespace)
+\end_layout
+
+\begin_layout LyX-Code
+      0    -2.0  -1.0
+\end_layout
+
+\begin_layout LyX-Code
+      1    -2.0  +1.0
+\end_layout
+
+\begin_layout LyX-Code
+      2     0.0  -1.0
+\end_layout
+
+\begin_layout LyX-Code
+      3     0.0  +1.0
+\end_layout
+
+\begin_layout LyX-Code
+      4    +2.0  -1.0
+\end_layout
+
+\begin_layout LyX-Code
+      5    +2.0  +1.0
+\end_layout
+
+\begin_layout LyX-Code
+    } // end of coordinates list
+\end_layout
+
+\begin_layout LyX-Code
+  } // end of vertices
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  cells = { // finite-element cells
+\end_layout
+
+\begin_layout LyX-Code
+    count = 2 // number of cells in the mesh
+\end_layout
+
+\begin_layout LyX-Code
+    num-corners = 4 // number of vertices defining the cell
+\end_layout
+
+\begin_layout LyX-Code
+    simplices = { // list of vertices in each cell
+\end_layout
+
+\begin_layout LyX-Code
+      // see Section 4.2 for diagrams giving the order for each 
+\end_layout
+
+\begin_layout LyX-Code
+      // type of cell supported in PyLith
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+      // index of cell precedes the list of vertices for the cell 
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+      // exactly one cell must appear on each line
+\end_layout
+
+\begin_layout LyX-Code
+      // (excluding whitespace)
+\end_layout
+
+\begin_layout LyX-Code
+      0    0  2  3  1
+\end_layout
+
+\begin_layout LyX-Code
+      1    4  5  3  2
+\end_layout
+
+\begin_layout LyX-Code
+    } // end of simplices list
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+    material-ids = { // associated each cell with a material model
+\end_layout
+
+\begin_layout LyX-Code
+      // the material id is specified using the index of the cell 
+\end_layout
+
+\begin_layout LyX-Code
+      // and then the corresponding material id
+\end_layout
+
+\begin_layout LyX-Code
+      0   0 // cell 0 has a material id of 0
+\end_layout
+
+\begin_layout LyX-Code
+      1   2 // cell 1 has a material id of 2
+\end_layout
+
+\begin_layout LyX-Code
+    } // end of material-ids list
+\end_layout
+
+\begin_layout LyX-Code
+  } // end of cells
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // This next section lists groups of vertices that can be used
+\end_layout
+
+\begin_layout LyX-Code
+  // in applying boundary conditions to portions of the domain
+\end_layout
+
+\begin_layout LyX-Code
+  group = { // start of a group
+\end_layout
+
+\begin_layout LyX-Code
+    // the name can have whitespace, so no comments are allowed
+\end_layout
+
+\begin_layout LyX-Code
+    // after the name
+\end_layout
+
+\begin_layout LyX-Code
+    name = face +y
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+    // Either groups of vertices or groups of cells can be     
+\end_layout
+
+\begin_layout LyX-Code
+    // specified, but currently PyLith only makes use of groups 
+\end_layout
+
+\begin_layout LyX-Code
+    // of vertices
+\end_layout
+
+\begin_layout LyX-Code
+    type = vertices // 'vertices' or 'cells'
+\end_layout
+
+\begin_layout LyX-Code
+    count = 2 // number of vertices in the group
+\end_layout
+
+\begin_layout LyX-Code
+    indices = { // list of vertex indices in the group
+\end_layout
+
+\begin_layout LyX-Code
+      // multiple vertices may appear on a line
+\end_layout
+
+\begin_layout LyX-Code
+      0  4 // this group contains vertices 0 and 4
+\end_layout
+
+\begin_layout LyX-Code
+    } // end of list of vertices
+\end_layout
+
+\begin_layout LyX-Code
+  } // end of group
+\end_layout
+
+\begin_layout LyX-Code
+  // additional groups can be listed here
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format of 
+\family typewriter
+PyLith
+\family default
+ mesh ASCII files.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:meshioascii:format"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Spatialdata:SimpleIOAscii"
+
+\end_inset
+
+SimpleDB Spatial Database Files
+\end_layout
+
+\begin_layout Standard
+SimpleDB spatial database files contain a header describing the set of points
+ and then the data with each line listing the coordinates of a point followed
+ by the values of the fields for that point.
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// This spatial database specifies the distribution of slip on the
+\end_layout
+
+\begin_layout LyX-Code
+// fault surface.
+ In this case we prescribe a piecewise linear, 
+\end_layout
+
+\begin_layout LyX-Code
+// depth dependent distribution of slip.
+ The slip is 2.0 m 
+\end_layout
+
+\begin_layout LyX-Code
+// right-lateral with 0.25 m of reverse slip at the surface with
+\end_layout
+
+\begin_layout LyX-Code
+// a linear taper from 2.0 m to 0.0 m from -2 km to -4 km.
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// Comments can appear almost anywhere in these files and are
+\end_layout
+
+\begin_layout LyX-Code
+// delimited with two slashes (//) just like in C++.
+ All text and 
+\end_layout
+
+\begin_layout LyX-Code
+// whitespace after the delimiter on a given line is ignored.
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// The next line is the magic header for spatial database files 
+\end_layout
+
+\begin_layout LyX-Code
+// in ASCII format.
+\end_layout
+
+\begin_layout LyX-Code
+#SPATIAL.ascii 1
+\end_layout
+
+\begin_layout LyX-Code
+SimpleDB { // start specifying the database parameters
+\end_layout
+
+\begin_layout LyX-Code
+  num-values = 3 // number of values in the database
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Specify the names and the order of the values as they appear 
+\end_layout
+
+\begin_layout LyX-Code
+  // in the data.
+ The names of the values must correspond to the 
+\end_layout
+
+\begin_layout LyX-Code
+  // names PyLith requests in querying the database.
+\end_layout
+
+\begin_layout LyX-Code
+  value-names =  left-lateral-slip  reverse-slip  fault-opening
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Specify the units of the values in Python syntax (e.g., kg/m**3).
+\end_layout
+
+\begin_layout LyX-Code
+  value-units =  m  m  m
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+  num-locs = 3 // Number of locations where values are given
+\end_layout
+
+\begin_layout LyX-Code
+  data-dim = 1 // Locations of data points form a line
+\end_layout
+
+\begin_layout LyX-Code
+  space-dim = 3 // Spatial dimension in which data resides
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Specify the coordinate system associated with the 
+\end_layout
+
+\begin_layout LyX-Code
+  // coordinates of the locations where data is given
+\end_layout
+
+\begin_layout LyX-Code
+  cs-data = cartesian { // Use a Cartesian coordinate system
+\end_layout
+
+\begin_layout LyX-Code
+    to-meters = 1.0e+3 // Coordinates are in km
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+    // Specify the spatial dimension of the coordinate system
+\end_layout
+
+\begin_layout LyX-Code
+    // This value must match the one associated with the database
+\end_layout
+
+\begin_layout LyX-Code
+    space-dim = 3
+\end_layout
+
+\begin_layout LyX-Code
+  } // cs-data // end of coordinate system specification
+\end_layout
+
+\begin_layout LyX-Code
+} // end of SimpleDB specification
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// The locations and values are listed after the parameters.
+\end_layout
+
+\begin_layout LyX-Code
+// Columns are coordinates of the points (1 column for each 
+\end_layout
+
+\begin_layout LyX-Code
+// spatial dimension) followed by the data values in the order 
+\end_layout
+
+\begin_layout LyX-Code
+// specified by the value-names field.
+\end_layout
+
+\begin_layout LyX-Code
+0.0  0.0  0.0    -2.00  0.25  0.00
+\end_layout
+
+\begin_layout LyX-Code
+0.0  0.0 -2.0    -2.00  0.00  0.00
+\end_layout
+
+\begin_layout LyX-Code
+0.0  0.0 -4.0     0.00  0.00  0.00
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format of spatial database files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Spatial Database Coordinate Systems
+\end_layout
+
+\begin_layout Standard
+The spatial database files support four different types of coordinate systems.
+ Conversions among the three geographic coordinate systems are supported
+ in 3D.
+ Conversions among the geographic and geographic projected coordinate systems
+ are supported in 2D.
+ In using the coordinate systems, we assume that you have installed the
+ 
+\family typewriter
+proj
+\family default
+ program in addition to the Proj.4 libraries, so that you can obtain a list
+ of support projections, datums, and ellipsoids.
+ Alternatively, refer to the documentation for the Proj.4 Cartographic Projection
+s library 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+trac.osgeo.org/proj
+\end_layout
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Subsubsection
+Cartesian
+\end_layout
+
+\begin_layout Standard
+This is a conventional Cartesian coordinate system.
+ Conversions to other Cartesian coordinate systems are possible.
+\end_layout
+
+\begin_layout LyX-Code
+cs-data = cartesian {
+\end_layout
+
+\begin_layout LyX-Code
+  to-meters = 1.0e+3 // Locations in km
+\end_layout
+
+\begin_layout LyX-Code
+  space-dim = 2 // 1, 2, or 3 dimensions
+\end_layout
+
+\begin_layout LyX-Code
+}
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format for Cartesian coordinate systems in spatial database files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Geographic
+\end_layout
+
+\begin_layout Standard
+This coordinate system is for geographic coordinates, such as longitude
+ and latitude.
+ Specification of the location in three-dimensions is supported.
+ The vertical datum can be either the reference ellipsoid or mean sea level.
+ The vertical coordinate is positive upwards.
+\end_layout
+
+\begin_layout LyX-Code
+cs-data = geographic {
+\end_layout
+
+\begin_layout LyX-Code
+  // Conversion factor to get to meters (only applies to vertical 
+\end_layout
+
+\begin_layout LyX-Code
+  // coordinate unless you are using a geocentric coordinate system).
+\end_layout
+
+\begin_layout LyX-Code
+  to-meters = 1.0e+3
+\end_layout
+
+\begin_layout LyX-Code
+  space-dim = 2 // 2 or 3 dimensions
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -le
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available reference ellipsoids.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  ellipsoid = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -ld
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available datums.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-horiz = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // 
+\begin_inset Quotes eld
+\end_inset
+
+ellipsoid
+\begin_inset Quotes erd
+\end_inset
+
+ or 
+\begin_inset Quotes eld
+\end_inset
+
+mean sea level
+\begin_inset Quotes erd
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-vert = ellipsoid
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Use a geocentric coordinate system?
+\end_layout
+
+\begin_layout LyX-Code
+  is-geocentric = false // true or false
+\end_layout
+
+\begin_layout LyX-Code
+}
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format for geographic coordinate systems in spatial database files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Geographic Projection
+\end_layout
+
+\begin_layout Standard
+This coordinate system applies to geographic projections.
+ As in the geographic coordinate system, the vertical coordinate (if used)
+ can be specified with respect to either the reference ellipsoid or mean
+ sea level.
+\end_layout
+
+\begin_layout LyX-Code
+cs-data = geo-projected {
+\end_layout
+
+\begin_layout LyX-Code
+  to-meters = 1.0e+3 // Conversion factor to get to meters.
+\end_layout
+
+\begin_layout LyX-Code
+  space-dim = 2 // 2 or 3 dimensions
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -le
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available reference ellipsoids.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  ellipsoid = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -ld
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available datums.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-horiz = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // 
+\begin_inset Quotes eld
+\end_inset
+
+ellipsoid
+\begin_inset Quotes erd
+\end_inset
+
+ or 
+\begin_inset Quotes eld
+\end_inset
+
+mean sea level
+\begin_inset Quotes erd
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-vert = ellipsoid
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -lp
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available geographic 
+\end_layout
+
+\begin_layout LyX-Code
+  // projections.
+\end_layout
+
+\begin_layout LyX-Code
+    projector = projection {
+\end_layout
+
+\begin_layout LyX-Code
+    // Name of the projection.
+ run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -lp
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of 
+\end_layout
+
+\begin_layout LyX-Code
+    // supported projections.
+ Use the Universal Transverse Mercator
+\end_layout
+
+\begin_layout LyX-Code
+    // projection.
+\end_layout
+
+\begin_layout LyX-Code
+    projection = utm
+\end_layout
+
+\begin_layout LyX-Code
+    units = m // Units in the projection.
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+    // Provide a list of projection options; these are the command 
+\end_layout
+
+\begin_layout LyX-Code
+    // line arguments you would use with the proj program.
+ Refer to
+\end_layout
+
+\begin_layout LyX-Code
+    // the Proj.4 library documentation for complete details.
+\end_layout
+
+\begin_layout LyX-Code
+    // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+    proj-options = +zone=10
+\end_layout
+
+\begin_layout LyX-Code
+}
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format for geographic projection coordinate systems in spatial database
+ files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Geographic Local Cartesian
+\end_layout
+
+\begin_layout Standard
+This coordinate system is a geographically referenced, local 3D Cartesian
+ coordinate system.
+ This allows use of a conventional Cartesian coordinate system with accurate
+ georeferencing.
+ For example, one can construct a finite-element model in this coordinate
+ system and use spatial databases in geographic coordinates.
+ This coordinate system provides an alternative to using a geographic projection
+ as the Cartesian grip.
+ The advantage of this coordinate system is that it retains the curvature
+ of the Earth, while a geographic projection does not.
+\end_layout
+
+\begin_layout LyX-Code
+cs-data = geo-local-cartesian {
+\end_layout
+
+\begin_layout LyX-Code
+  // Conversion factor to get to meters (only applies to vertical
+\end_layout
+
+\begin_layout LyX-Code
+  // coordinate unless you are using a geocentric coordinate system).
+\end_layout
+
+\begin_layout LyX-Code
+  to-meters = 1.0 // use meters
+\end_layout
+
+\begin_layout LyX-Code
+  space-dim = 2 // 2 or 3 dimensions
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -le
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available reference ellipsoids.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  ellipsoid = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Run 
+\begin_inset Quotes eld
+\end_inset
+
+proj -ld
+\begin_inset Quotes erd
+\end_inset
+
+ to see a list of available datums.
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-horiz = WGS84
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // 
+\begin_inset Quotes eld
+\end_inset
+
+ellipsoid
+\begin_inset Quotes erd
+\end_inset
+
+ or 
+\begin_inset Quotes eld
+\end_inset
+
+mean sea level
+\begin_inset Quotes erd
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+  // Comments are not allowed at the end of the next line.
+\end_layout
+
+\begin_layout LyX-Code
+  datum-vert = ellipsoid
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Origin of the local Cartesian coordinate system.
+ To avoid
+\end_layout
+
+\begin_layout LyX-Code
+  // round-off errors it is best to pick a location near the center of
+\end_layout
+
+\begin_layout LyX-Code
+  // the region of interest.
+ An elevation on the surface of the Earth
+\end_layout
+
+\begin_layout LyX-Code
+  // in the middle of the region also works well (and makes the
+\end_layout
+
+\begin_layout LyX-Code
+  // vertical coordinate easy to interpret).
+\end_layout
+
+\begin_layout LyX-Code
+  origin-lon = -116.7094 // Longitude of the origin in decimal degrees
+\end_layout
+
+\begin_layout LyX-Code
+                         // (west is negative).
+\end_layout
+
+\begin_layout LyX-Code
+  origin-lat = 36.3874 // Latitude of the origin in decimal degrees 
+\end_layout
+
+\begin_layout LyX-Code
+                       // (north is positive).
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Elevation with respect to the vertical datum.
+ Units are the
+\end_layout
+
+\begin_layout LyX-Code
+  // same as the Cartesian coordinate system (in this case meters).
+\end_layout
+
+\begin_layout LyX-Code
+  origin-elev = 3.5
+\end_layout
+
+\begin_layout LyX-Code
+}
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format for the geographic local Cartesian coordinate system in spatial database
+ files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Spatialdata:TimeHistoryIO"
+
+\end_inset
+
+Time History Database Files
+\end_layout
+
+\begin_layout Standard
+Time history database files contain a header describing the number of points
+ in the time history and the units for the time stamps followed by a list
+ with pairs of time stamps and amplitude values.
+ The amplitude at an arbitrary point in time is computed via interpolation
+ of the values in the database.
+ This means that the time history database must span the range of time values
+ of interest.
+ The points in the time history must also be ordered in time.
+\end_layout
+
+\begin_layout LyX-Code
+// This time history database specifies temporal variation in
+\end_layout
+
+\begin_layout LyX-Code
+// amplitude.
+ In this case we prescribe a triangular slip time
+\end_layout
+
+\begin_layout LyX-Code
+// history.
+ 
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// Comments can appear almost anywhere in these files and are
+\end_layout
+
+\begin_layout LyX-Code
+// delimited with two slashes (//) just like in C++.
+ All text and 
+\end_layout
+
+\begin_layout LyX-Code
+// whitespace after the delimiter on a given line is ignored.
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// The next line is the magic header for spatial database files 
+\end_layout
+
+\begin_layout LyX-Code
+// in ASCII format.
+\end_layout
+
+\begin_layout LyX-Code
+#TIME HISTORY ascii
+\end_layout
+
+\begin_layout LyX-Code
+TimeHistory { // start specifying the database parameters
+\end_layout
+
+\begin_layout LyX-Code
+  num-points = 5 // number of points in time history
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+  // Specify the units used in the time stamps.
+\end_layout
+
+\begin_layout LyX-Code
+  time-units = year
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+} // end of TimeHistory header
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// The time history values are listed after the parameters.
+\end_layout
+
+\begin_layout LyX-Code
+// Columns time and amplitude where the amplitude values are unitless.
+\end_layout
+
+\begin_layout LyX-Code
+ 0.0     0.00
+\end_layout
+
+\begin_layout LyX-Code
+ 2.0     1.00
+\end_layout
+
+\begin_layout LyX-Code
+ 6.0     4.00
+\end_layout
+
+\begin_layout LyX-Code
+10.0     2.00
+\end_layout
+
+\begin_layout LyX-Code
+11.0     0.00
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format of time history database files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:FileFormat:TimeStepUser"
+
+\end_inset
+
+User-Specified Time-Step File
+\end_layout
+
+\begin_layout Standard
+This file lists the time-step sizes for nonuniform, user-specified time
+ steps.
+ The file's format is an ASCII file that includes the units for the time-step
+ sizes and then a list of the time steps.
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// This time step file specifies five time steps with the units in years.
+\end_layout
+
+\begin_layout LyX-Code
+ 
+\end_layout
+
+\begin_layout LyX-Code
+// Comments can appear almost anywhere in these files and are
+\end_layout
+
+\begin_layout LyX-Code
+// delimited with two slashes (//) just like in C++.
+ All text and 
+\end_layout
+
+\begin_layout LyX-Code
+// whitespace after the delimiter on a given line is ignored.
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+// Units for the time steps
+\end_layout
+
+\begin_layout LyX-Code
+units = year
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+1.0 // Comment
+\end_layout
+
+\begin_layout LyX-Code
+2.0
+\end_layout
+
+\begin_layout LyX-Code
+3.0
+\end_layout
+
+\begin_layout LyX-Code
+2.5
+\end_layout
+
+\begin_layout LyX-Code
+3.0
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format of user-specified time-step files.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:FileFormat:PointsList"
+
+\end_inset
+
+Points List File
+\end_layout
+
+\begin_layout Standard
+This file lists the coordinates of the locations where output is requested
+ for the 
+\family typewriter
+OutputSolnPoints
+\family default
+ component.
+ The coordinate system is specified in the 
+\family typewriter
+OutputSolnPoints
+\family default
+ component.
+ 
+\end_layout
+
+\begin_layout LyX-Code
+# This time step file specifies five time steps with the units in years.
+\end_layout
+
+\begin_layout LyX-Code
+#
+\end_layout
+
+\begin_layout LyX-Code
+# Comments are limited to complete lines.
+ The default delimiter for comments
+\end_layout
+
+\begin_layout LyX-Code
+# is '#', which can be changed via parameters.
+ Additionally, the delimiter 
+\end_layout
+
+\begin_layout LyX-Code
+# separating values can also be customized (default is whitespace).
+\end_layout
+
+\begin_layout LyX-Code
+1.0  -2.0   0.0
+\end_layout
+
+\begin_layout LyX-Code
+2.0  -4.0  -0.1
+\end_layout
+
+\begin_layout LyX-Code
+0.0  +2.0   0.0
+\end_layout
+
+\begin_layout LyX-Code
+2.5  -0.2  -0.2 
+\end_layout
+
+\begin_layout LyX-Code
+0.0   2.0  +0.2
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Format of files with coordinates of points for output.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/materials/altformulations.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/materials/altformulations.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/materials/altformulations.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,320 +1,321 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 1
-\use_esint 0
-\use_mhchem 0
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 2
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Chapter
-\begin_inset CommandInset label
-LatexCommand label
-name "cha:Alternative-Formulations"
-
-\end_inset
-
-Alternative Material Model Formulations
-\end_layout
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:ViscoelasticFormulations"
-
-\end_inset
-
-Viscoelastic Formulations
-\end_layout
-
-\begin_layout Standard
-The viscoelastic formulations presently used in PyLith are described in
- 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Viscoelastic-Materials"
-
-\end_inset
-
-.
- In some cases there are alternative formulations that may be used in future
- versions of PyLith, and those are described here.
-\end_layout
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sub:Effective-Stress-Formulation-Maxwell"
-
-\end_inset
-
-Effective Stress Formulation for a Linear Maxwell Viscoelastic Material
-\end_layout
-
-\begin_layout Standard
-An alternative technique for solving the equations for a Maxwell viscoelastic
- material is based on the effective stress formulation described in 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sub:Effective-Stress-Formulations-Viscoelastic"
-
-\end_inset
-
-.
- A linear Maxwell viscoelastic material may be characterized by the same
- elastic parameters as an isotropic elastic material (
-\begin_inset Formula $E$
-\end_inset
-
- and 
-\begin_inset Formula $\nu$
-\end_inset
-
-), as well as the viscosity, 
-\begin_inset Formula $\eta$
-\end_inset
-
-.
- The creep strain increment is
-\begin_inset Formula 
-\begin{gather}
-\underline{\Delta e}^{C}=\frac{\Delta t\phantom{}^{\tau}\underline{S}}{2\eta}\,\,.\label{eq:D1}
-\end{gather}
-
-\end_inset
-
-Therefore,
-\begin_inset Formula 
-\begin{gather}
-\Delta\overline{e}^{C}=\frac{\Delta t\sqrt{^{\tau}J_{2}^{\prime}}}{\sqrt{3\eta}}=\frac{\Delta t\phantom{}^{\tau}\overline{\sigma}}{3\eta}\,,\,\mathrm{and}\,^{\tau}\gamma=\frac{1}{2\eta}\,\,.\label{eq:D2}
-\end{gather}
-
-\end_inset
-
-Substituting Equations 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:46"
-
-\end_inset
-
-, 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:D1"
-
-\end_inset
-
-, and 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:D2"
-
-\end_inset
-
- into 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:43"
-
-\end_inset
-
-, we obtain
-\begin_inset Formula 
-\begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}\left\{ ^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}\left[(1-\alpha)^{t}\underline{S}+\alpha\phantom{}^{t+\Delta t}\underline{S}\right]\right\} +\underline{S}^{I}\,\,.\label{eq:D3}
-\end{gather}
-
-\end_inset
-
-Solving for 
-\begin_inset Formula $^{t+\Delta t}\underline{S}$
-\end_inset
-
-,
-\begin_inset Formula 
-\begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\left[^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}(1-\alpha)^{t}\underline{S}+\frac{1+\mathrm{\nu}}{E}\underline{S}^{I}\right]\,\,.\label{eq:D4}
-\end{gather}
-
-\end_inset
-
-In this case it is possible to solve directly for the deviatoric stresses,
- and the effective stress function approach is not needed.
- To obtain the total stress, we simply use
-\begin_inset Formula 
-\begin{gather}
-^{t+\Delta t}\sigma_{ij}=\phantom{}^{t+\Delta t}S_{ij}+\frac{\mathit{1}}{a_{m}}\left(\,^{t+\Delta t}\theta-\theta^{I}\right)\delta_{ij}+P^{I}\delta_{ij}\,\,.\label{eq:D5}
-\end{gather}
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-To compute the viscoelastic tangent material matrix relating stress and
- strain, we need to compute the first term in 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:58"
-
-\end_inset
-
-.
- From Equation 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:D4"
-
-\end_inset
-
-, we have
-\begin_inset Formula 
-\begin{gather}
-\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}=\frac{\delta_{ik}}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\,\,.\label{eq:D12}
-\end{gather}
-
-\end_inset
-
-Using this, along with 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:58"
-
-\end_inset
-
-, 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:59"
-
-\end_inset
-
-, and 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:60"
-
-\end_inset
-
-, the final material matrix relating stress and tensor strain is
-\begin_inset Formula 
-\begin{gather}
-C_{ij}^{VE}=\frac{1}{3a_{m}}\left[\begin{array}{cccccc}
-1 & 1 & 1 & 0 & 0 & 0\\
-1 & 1 & 1 & 0 & 0 & 0\\
-1 & 1 & 1 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0
-\end{array}\right]+\frac{1}{3\left(a_{E}+\frac{\alpha\Delta t}{2\eta}\right)}\left[\begin{array}{cccccc}
-2 & -1 & -1 & 0 & 0 & 0\\
--1 & 2 & -1 & 0 & 0 & 0\\
--1 & -1 & 2 & 0 & 0 & 0\\
-0 & 0 & 0 & 3 & 0 & 0\\
-0 & 0 & 0 & 0 & 3 & 0\\
-0 & 0 & 0 & 0 & 0 & 3
-\end{array}\right]\,.\label{eq:D13}
-\end{gather}
-
-\end_inset
-
-Note that the coefficient of the second matrix approaches 
-\begin_inset Formula $E/3(1+\nu)=1/3a_{E}$
-\end_inset
-
- as 
-\begin_inset Formula $\eta$
-\end_inset
-
- goes to infinity.
- To check the results we make sure that the regular elastic constitutive
- matrix is obtained for selected terms in the case where 
-\begin_inset Formula $\eta$
-\end_inset
-
- goes to infinity.
-\begin_inset Formula 
-\begin{gather}
-C_{11}^{E}=\frac{E(1-\nu)}{(1+\nu)(1-2\nu)}\,\,\nonumber \\
-C_{12}^{E}=\frac{E\nu}{(1+\nu)(1-2\nu)}\,.\label{eq:D14}\\
-C_{44}^{E}=\frac{E}{1+\nu}\,\,\nonumber 
-\end{gather}
-
-\end_inset
-
-This is consistent with the regular elasticity matrix, and Equation 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:D13"
-
-\end_inset
-
- should thus be used when forming the stiffness matrix.
- We do not presently use this formulation, but it may be included in future
- versions.
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 1
+\use_esint 0
+\use_mhchem 0
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 2
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+\begin_inset CommandInset label
+LatexCommand label
+name "cha:Alternative-Formulations"
+
+\end_inset
+
+Alternative Material Model Formulations
+\end_layout
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:ViscoelasticFormulations"
+
+\end_inset
+
+Viscoelastic Formulations
+\end_layout
+
+\begin_layout Standard
+The viscoelastic formulations presently used in PyLith are described in
+ Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Viscoelastic-Materials"
+
+\end_inset
+
+.
+ In some cases there are alternative formulations that may be used in future
+ versions of PyLith, and those are described here.
+\end_layout
+
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Effective-Stress-Formulation-Maxwell"
+
+\end_inset
+
+Effective Stress Formulation for a Linear Maxwell Viscoelastic Material
+\end_layout
+
+\begin_layout Standard
+An alternative technique for solving the equations for a Maxwell viscoelastic
+ material is based on the effective stress formulation described in Section
+ 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Effective-Stress-Formulations-Viscoelastic"
+
+\end_inset
+
+.
+ A linear Maxwell viscoelastic material may be characterized by the same
+ elastic parameters as an isotropic elastic material (
+\begin_inset Formula $E$
+\end_inset
+
+ and 
+\begin_inset Formula $\nu$
+\end_inset
+
+), as well as the viscosity, 
+\begin_inset Formula $\eta$
+\end_inset
+
+.
+ The creep strain increment is
+\begin_inset Formula 
+\begin{gather}
+\underline{\Delta e}^{C}=\frac{\Delta t\phantom{}^{\tau}\underline{S}}{2\eta}\,\,.\label{eq:D1}
+\end{gather}
+
+\end_inset
+
+Therefore,
+\begin_inset Formula 
+\begin{gather}
+\Delta\overline{e}^{C}=\frac{\Delta t\sqrt{^{\tau}J_{2}^{\prime}}}{\sqrt{3\eta}}=\frac{\Delta t\phantom{}^{\tau}\overline{\sigma}}{3\eta}\,,\,\mathrm{and}\,^{\tau}\gamma=\frac{1}{2\eta}\,\,.\label{eq:D2}
+\end{gather}
+
+\end_inset
+
+Substituting Equations 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:46"
+
+\end_inset
+
+, 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:D1"
+
+\end_inset
+
+, and 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:D2"
+
+\end_inset
+
+ into 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:43"
+
+\end_inset
+
+, we obtain
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}\left\{ ^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}\left[(1-\alpha)^{t}\underline{S}+\alpha\phantom{}^{t+\Delta t}\underline{S}\right]\right\} +\underline{S}^{I}\,\,.\label{eq:D3}
+\end{gather}
+
+\end_inset
+
+Solving for 
+\begin_inset Formula $^{t+\Delta t}\underline{S}$
+\end_inset
+
+,
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{S}=\frac{1}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\left[^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}(1-\alpha)^{t}\underline{S}+\frac{1+\mathrm{\nu}}{E}\underline{S}^{I}\right]\,\,.\label{eq:D4}
+\end{gather}
+
+\end_inset
+
+In this case it is possible to solve directly for the deviatoric stresses,
+ and the effective stress function approach is not needed.
+ To obtain the total stress, we simply use
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\sigma_{ij}=\phantom{}^{t+\Delta t}S_{ij}+\frac{\mathit{1}}{a_{m}}\left(\,^{t+\Delta t}\theta-\theta^{I}\right)\delta_{ij}+P^{I}\delta_{ij}\,\,.\label{eq:D5}
+\end{gather}
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+To compute the viscoelastic tangent material matrix relating stress and
+ strain, we need to compute the first term in Equation 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:58"
+
+\end_inset
+
+.
+ From Equation 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:D4"
+
+\end_inset
+
+, we have
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}=\frac{\delta_{ik}}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\,\,.\label{eq:D12}
+\end{gather}
+
+\end_inset
+
+Using this, along with Equations 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:58"
+
+\end_inset
+
+, 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:59"
+
+\end_inset
+
+, and 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:60"
+
+\end_inset
+
+, the final material matrix relating stress and tensor strain is
+\begin_inset Formula 
+\begin{gather}
+C_{ij}^{VE}=\frac{1}{3a_{m}}\left[\begin{array}{cccccc}
+1 & 1 & 1 & 0 & 0 & 0\\
+1 & 1 & 1 & 0 & 0 & 0\\
+1 & 1 & 1 & 0 & 0 & 0\\
+0 & 0 & 0 & 0 & 0 & 0\\
+0 & 0 & 0 & 0 & 0 & 0\\
+0 & 0 & 0 & 0 & 0 & 0
+\end{array}\right]+\frac{1}{3\left(a_{E}+\frac{\alpha\Delta t}{2\eta}\right)}\left[\begin{array}{cccccc}
+2 & -1 & -1 & 0 & 0 & 0\\
+-1 & 2 & -1 & 0 & 0 & 0\\
+-1 & -1 & 2 & 0 & 0 & 0\\
+0 & 0 & 0 & 3 & 0 & 0\\
+0 & 0 & 0 & 0 & 3 & 0\\
+0 & 0 & 0 & 0 & 0 & 3
+\end{array}\right]\,.\label{eq:D13}
+\end{gather}
+
+\end_inset
+
+Note that the coefficient of the second matrix approaches 
+\begin_inset Formula $E/3(1+\nu)=1/3a_{E}$
+\end_inset
+
+ as 
+\begin_inset Formula $\eta$
+\end_inset
+
+ goes to infinity.
+ To check the results we make sure that the regular elastic constitutive
+ matrix is obtained for selected terms in the case where 
+\begin_inset Formula $\eta$
+\end_inset
+
+ goes to infinity.
+\begin_inset Formula 
+\begin{gather}
+C_{11}^{E}=\frac{E(1-\nu)}{(1+\nu)(1-2\nu)}\,\,\nonumber \\
+C_{12}^{E}=\frac{E\nu}{(1+\nu)(1-2\nu)}\,.\label{eq:D14}\\
+C_{44}^{E}=\frac{E}{1+\nu}\,\,\nonumber 
+\end{gather}
+
+\end_inset
+
+This is consistent with the regular elasticity matrix, and Equation 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:D13"
+
+\end_inset
+
+ should thus be used when forming the stiffness matrix.
+ We do not presently use this formulation, but it may be included in future
+ versions.
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/preface.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/preface.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/preface.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,280 +1,280 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 1
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 2
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Chapter
-Preface
-\end_layout
-
-\begin_layout Section
-About This Document
-\end_layout
-
-\begin_layout Standard
-This document is organized into two parts.
- The first part begins with an introduction to PyLith and discusses the
- types of problems that PyLith can solve and how to run the software; the
- second part provides appendices and references.
-\end_layout
-
-\begin_layout Section
-Who Will Use This Documentation
-\end_layout
-
-\begin_layout Standard
-This documentation is aimed at two categories of users: scientists who prefer
- to use prepackaged and specialized analysis tools, and experienced computationa
-l Earth scientists.
- Of the latter, there are likely to be two classes of users: those who just
- run models, and those who modify the source code.
- Users who modify the source are likely to have familiarity with scripting,
- software installation, and programming, but are not necessarily professional
- programmers.
-\end_layout
-
-\begin_layout Section
-Citation
-\end_layout
-
-\begin_layout Standard
-The Computational Infrastructure for Geodynamics (CIG) 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-geodynamics.org
-\end_layout
-
-\end_inset
-
- is making this source code available to you at no cost in hopes that the
- software will enhance your research in geophysics.
- A number of individuals have contributed a significant portion of their
- careers toward the development of this software.
- It is essential that you recognize these individuals in the normal scientific
- practice by citing the appropriate peer-reviewed papers and making appropriate
- acknowledgements in talks and publications.
- At this time there are no refereed journal articles discussing the design
- and implementation of PyLith, so we request that you cite four AGU meeting
- abstracts associated with PyLith:
-\end_layout
-
-\begin_layout Itemize
-Williams, C.A., B.
- Aagaard, M.G.
- Knepley (2005), Development of software for studying earthquakes across
- multiple spatial and temporal scales by coupling quasi-static and dynamic
- simulations, 
-\emph on
-Eos Trans.
- AGU, 86
-\emph default
-(52), Fall Meet.
- Suppl., Abstract S53A-1072.
-\end_layout
-
-\begin_layout Itemize
-Williams, C.A.
- (2006), Development of a package for modeling stress in the lithosphere,
- 
-\emph on
-Eos Trans.
- AGU, 87
-\emph default
-(36), Jt.
- Assem.
- Suppl., Abstract T24A-01 Invited.
-\end_layout
-
-\begin_layout Itemize
-Aagaard, B., C.
- Williams, M.
- Knepley (2007), PyLith: A finite-element code for modeling quasi-static
- and dynamic crustal deformation, 
-\emph on
-Eos Trans.
- AGU, 8
-\emph default
-8(52), Fall Meet.
- Suppl., Abstract T21B-0592.
-\end_layout
-
-\begin_layout Itemize
-Aagaard, B., C.
- Williams, M.
- Knepley (2008), PyLith: A finite-element code for modeling quasi-static
- and dynamic crustal deformation, 
-\emph on
-Eos Trans.
- AGU, 89
-\emph default
-(53), Fall Meet.
- Suppl., Abstract T41A-1925.
-\end_layout
-
-\begin_layout Standard
-To cite this manual, use:
-\end_layout
-
-\begin_layout Itemize
-Aagaard, B., S.
- Kientz, M.
- Knepley, S.
- Somala, L.
- Strand, and C.
- Williams (2011), 
-\emph on
-PyLith User Manual, Version 1.7.1.
-
-\emph default
- Davis, CA: Computational Infrastructure of Geodynamics.
-\begin_inset Newline newline
-\end_inset
-
-URL: geodynamics.org/cig/software/pylith/pylith_manual-1.7.pdf
-\end_layout
-
-\begin_layout Section
-Support
-\end_layout
-
-\begin_layout Standard
-Current PyLith development is supported by the CIG, and internal GNS Science
- 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-www.gns.cri.nz
-\end_layout
-
-\end_inset
-
- and U.S.
- Geological Survey 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.usgs.gov
-\end_layout
-
-\end_inset
-
- funding.
- Pyre development was funded by the Department of Energy's 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.doe.gov/engine/content.do
-\end_layout
-
-\end_inset
-
- Advanced Simulation and Computing program and the National Science Foundation's
- Information Technology Research (ITR) program.
-\end_layout
-
-\begin_layout Standard
-This material is based upon work supported by the National Science Foundation
- under Grants No.
- 0313238, 0745391, and EAR-0949446.
- Any opinions, findings, and conclusions or recommendations expressed in
- this material are those of the author(s) and do not necessarily reflect
- the views of the National Science Foundation.
-\end_layout
-
-\begin_layout Section
-Request for Comments
-\end_layout
-
-\begin_layout Standard
-Your suggestions and corrections can only improve this documentation.
- Please report any errors, inaccuracies, or typos to the CIG Short-Term
- Tectonics email list 
-\begin_inset Flex URL
-status open
-
-\begin_layout Plain Layout
-
-cig-short at geodynamics.org
-\end_layout
-
-\end_inset
-
-.
- 
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 1
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 2
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Chapter
+Preface
+\end_layout
+
+\begin_layout Section
+About This Document
+\end_layout
+
+\begin_layout Standard
+This document is organized into two parts.
+ The first part begins with an introduction to PyLith and discusses the
+ types of problems that PyLith can solve and how to run the software; the
+ second part provides appendices and references.
+\end_layout
+
+\begin_layout Section
+Who Will Use This Documentation
+\end_layout
+
+\begin_layout Standard
+This documentation is aimed at two categories of users: scientists who prefer
+ to use prepackaged and specialized analysis tools, and experienced computationa
+l Earth scientists.
+ Of the latter, there are likely to be two classes of users: those who just
+ run models, and those who modify the source code.
+ Users who modify the source are likely to have familiarity with scripting,
+ software installation, and programming, but are not necessarily professional
+ programmers.
+\end_layout
+
+\begin_layout Section
+Citation
+\end_layout
+
+\begin_layout Standard
+The Computational Infrastructure for Geodynamics (CIG) 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+geodynamics.org
+\end_layout
+
+\end_inset
+
+ is making this source code available to you at no cost in hopes that the
+ software will enhance your research in geophysics.
+ A number of individuals have contributed a significant portion of their
+ careers toward the development of this software.
+ It is essential that you recognize these individuals in the normal scientific
+ practice by citing the appropriate peer-reviewed papers and making appropriate
+ acknowledgements in talks and publications.
+ At this time there are no refereed journal articles discussing the design
+ and implementation of PyLith, so we request that you cite four AGU meeting
+ abstracts associated with PyLith:
+\end_layout
+
+\begin_layout Itemize
+Williams, C.A., B.
+ Aagaard, M.G.
+ Knepley (2005), Development of software for studying earthquakes across
+ multiple spatial and temporal scales by coupling quasi-static and dynamic
+ simulations, 
+\emph on
+Eos Trans.
+ AGU, 86
+\emph default
+(52), Fall Meet.
+ Suppl., Abstract S53A-1072.
+\end_layout
+
+\begin_layout Itemize
+Williams, C.A.
+ (2006), Development of a package for modeling stress in the lithosphere,
+ 
+\emph on
+Eos Trans.
+ AGU, 87
+\emph default
+(36), Jt.
+ Assem.
+ Suppl., Abstract T24A-01 Invited.
+\end_layout
+
+\begin_layout Itemize
+Aagaard, B., C.
+ Williams, M.
+ Knepley (2007), PyLith: A finite-element code for modeling quasi-static
+ and dynamic crustal deformation, 
+\emph on
+Eos Trans.
+ AGU, 8
+\emph default
+8(52), Fall Meet.
+ Suppl., Abstract T21B-0592.
+\end_layout
+
+\begin_layout Itemize
+Aagaard, B., C.
+ Williams, M.
+ Knepley (2008), PyLith: A finite-element code for modeling quasi-static
+ and dynamic crustal deformation, 
+\emph on
+Eos Trans.
+ AGU, 89
+\emph default
+(53), Fall Meet.
+ Suppl., Abstract T41A-1925.
+\end_layout
+
+\begin_layout Standard
+To cite this manual, use:
+\end_layout
+
+\begin_layout Itemize
+Aagaard, B., S.
+ Kientz, M.
+ Knepley, S.
+ Somala, L.
+ Strand, and C.
+ Williams (2011), 
+\emph on
+PyLith User Manual, Version 1.7.1.
+
+\emph default
+ Davis, CA: Computational Infrastructure of Geodynamics.
+\begin_inset Newline newline
+\end_inset
+
+URL: geodynamics.org/cig/software/pylith/pylith_manual-1.7.1.pdf
+\end_layout
+
+\begin_layout Section
+Support
+\end_layout
+
+\begin_layout Standard
+Current PyLith development is supported by the CIG, and internal GNS Science
+ 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+www.gns.cri.nz
+\end_layout
+
+\end_inset
+
+ and U.S.
+ Geological Survey 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+www.usgs.gov
+\end_layout
+
+\end_inset
+
+ funding.
+ Pyre development was funded by the Department of Energy's 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+www.doe.gov/engine/content.do
+\end_layout
+
+\end_inset
+
+ Advanced Simulation and Computing program and the National Science Foundation's
+ Information Technology Research (ITR) program.
+\end_layout
+
+\begin_layout Standard
+This material is based upon work supported by the National Science Foundation
+ under Grants No.
+ 0313238, 0745391, and EAR-0949446.
+ Any opinions, findings, and conclusions or recommendations expressed in
+ this material are those of the author(s) and do not necessarily reflect
+ the views of the National Science Foundation.
+\end_layout
+
+\begin_layout Section
+Request for Comments
+\end_layout
+
+\begin_layout Standard
+Your suggestions and corrections can only improve this documentation.
+ Please report any errors, inaccuracies, or typos to the CIG Short-Term
+ Tectonics email list 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+cig-short at geodynamics.org
+\end_layout
+
+\end_inset
+
+.
+ 
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/runpylith/runpylith.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/runpylith/runpylith.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/runpylith/runpylith.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -2309,6 +2309,8 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+
+\family typewriter
 ksp_type
 \end_layout
 
@@ -2756,6 +2758,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_pc_type
 \end_layout
 
@@ -2789,6 +2792,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_pc_fieldsplit_real_diagonal
 \end_layout
 
@@ -2822,6 +2826,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_pc_fieldsplit_type
 \end_layout
 
@@ -2856,6 +2861,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_fieldsplit_0_pc_type
 \end_layout
 
@@ -2889,6 +2895,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_fieldsplit_1_pc_type
 \end_layout
 
@@ -2923,6 +2930,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_fieldsplit_0_ksp_type
 \end_layout
 
@@ -2956,6 +2964,7 @@
 \begin_layout Plain Layout
 
 \family typewriter
+\size footnotesize
 fs_fieldsplit_1_ksp_type
 \end_layout
 
@@ -3280,27 +3289,39 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 [pylithapp.timedependent.formulation]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 time_step = pylith.problems.TimeStepUniform
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 solver = pylith.problems.SolverLinear ; Nonlinear solver is pylith.problems.SolverNo
 nlinear
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 output = [domain,ground_surface]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 matrix_type = sbaij ; To use a non-symmetric sparse matrix, set it to aij
 \end_layout
 
 \begin_layout LyX-Code
+
+\size footnotesize
 view_jacobian = false
 \end_layout
 
@@ -4069,26 +4090,26 @@
 
 \begin_layout LyX-Code
 
-\size small
+\size footnotesize
 [pylithapp.timedependent.materials.material]
 \end_layout
 
 \begin_layout LyX-Code
 
-\size small
+\size footnotesize
 db_properties = spatialdata.spatialdb.UniformDB ; Set the db to a UniformDB
 \end_layout
 
 \begin_layout LyX-Code
 
-\size small
+\size footnotesize
 db_properties.values = [vp,vs,density] ; Set the names of the values in the
  database
 \end_layout
 
 \begin_layout LyX-Code
 
-\size small
+\size footnotesize
 db_properties.data = [5773.5*m/s, 3333.3*m/s, 2700.0*kg/m**3] ; Set the values
  in the database
 \end_layout
@@ -4741,6 +4762,10 @@
 ).
  In most cases users will want to use the 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 DataWriterHDF5Mesh
 \family default
 .

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/3dhex8.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/3dhex8.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/3dhex8.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,634 +1,638 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 0
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Section
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Tutorial-3d-hex8"
-
-\end_inset
-
-Tutorials Using Hexahedral Mesh Created by CUBIT
-\end_layout
-
-\begin_layout Standard
-PyLith features discussed in this set of tutorials:
-\end_layout
-
-\begin_layout Itemize
-Static solution
-\end_layout
-
-\begin_layout Itemize
-Quasi-static solution
-\end_layout
-
-\begin_layout Itemize
-CUBIT mesh format
-\end_layout
-
-\begin_layout Itemize
-Trilinear hexahedral cells
-\end_layout
-
-\begin_layout Itemize
-VTK output
-\end_layout
-
-\begin_layout Itemize
-HDF5 output
-\end_layout
-
-\begin_layout Itemize
-Dirichlet displacement and velocity boundary conditions
-\end_layout
-
-\begin_layout Itemize
-Neumann traction boundary conditions and time-varying tractions
-\end_layout
-
-\begin_layout Itemize
-ZeroDispDB spatial database
-\end_layout
-
-\begin_layout Itemize
-SimpleDB spatial database
-\end_layout
-
-\begin_layout Itemize
-UniformDB spatial database
-\end_layout
-
-\begin_layout Itemize
-Static fault rupture
-\end_layout
-
-\begin_layout Itemize
-Multiple kinematic fault ruptures
-\end_layout
-
-\begin_layout Itemize
-Specifying more than one material
-\end_layout
-
-\begin_layout Itemize
-Nonlinear solver
-\end_layout
-
-\begin_layout Itemize
-Linearly elastic isotropic material
-\end_layout
-
-\begin_layout Itemize
-Maxwell linear viscoelastic material
-\end_layout
-
-\begin_layout Itemize
-Generalized Maxwell linear viscoelastic material
-\end_layout
-
-\begin_layout Itemize
-Power-law viscoelastic material
-\end_layout
-
-\begin_layout Itemize
-Drucker-Prager elastoplastic material
-\end_layout
-
-\begin_layout Itemize
-Adaptive time stepping
-\end_layout
-
-\begin_layout Itemize
-Static fault friction
-\end_layout
-
-\begin_layout Itemize
-Slip-weakening fault friction
-\end_layout
-
-\begin_layout Itemize
-Rate-and-state fault friction
-\end_layout
-
-\begin_layout Itemize
-Gravitational body forces
-\end_layout
-
-\begin_layout Itemize
-Initial stresses
-\end_layout
-
-\begin_layout Itemize
-Finite strain
-\end_layout
-
-\begin_layout Standard
-All of the files necessary to run the examples are contained in the directory
- 
-\family typewriter
-examples/3d/hex8
-\family default
-.
-\end_layout
-
-\begin_layout Subsection
-Overview
-\end_layout
-
-\begin_layout Standard
-This tutorial is meant to demonstrate most of the important features of
- PyLith as a quasi-static finite-element code, using a sequence of example
- problems.
- All problems use the same 3D hexahedral mesh generated using the CUBIT
- 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cubit.sandia.gov
-\end_layout
-
-\end_inset
-
- mesh generation package.
- Each example builds on the previous examples, as we demonstrate new features.
- As in the other examples, the files include extensive comments.
- We start with the generation of the mesh, which is composed of 144 trilinear
- hexahedra.
- The tutorial demonstrates the usage of the CUBIT mesh generation package
- to create a mesh, as well as describing how to use a CUBIT-generated mesh
- in PyLith.
- Following the discussion of how to generate the mesh, we discuss the 
-\family typewriter
-pylithapp.cfg
-\family default
- file, which contains information common to all the simulations.
- We group the examples into four sections, each pertaining to a particular
- set of PyLith features.
- We suggest users go through each of these sections in order as the complexity
- increases at each step.
- 
-\end_layout
-
-\begin_layout Subsection
-Mesh Generation and Description
-\end_layout
-
-\begin_layout Standard
-The mesh for these examples is a simple rectangular solid (Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:3dhex8-mesh"
-
-\end_inset
-
-).
- Although it would be possible to generate this mesh by hand, it is much
- simpler to use a mesh generation package, and we use CUBIT for this example.
- We provide documented journal files in 
-\family typewriter
-examples/3d/hex8/mesh.
-
-\family default
- Dissection of these journal files should provide some insight into how
- to use CUBIT with PyLith.
- For more detailed information on using CUBIT, refer to the CUBIT documentation
- 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-cubit.sandia.gov
-\end_layout
-
-\end_inset
-
-.
- If you have CUBIT installed on your machine, you can use the journal files
- to create your own mesh.
- Otherwise, you can use the mesh that has already been created.
-\end_layout
-
-\begin_layout Standard
-If you are using CUBIT to generate your own mesh, there are two ways to
- use the journal files.
- The simplest method is to go to the
-\family sans
- Tools
-\family default
- menu, select 
-\family sans
-Play Journal File
-\family default
-, and then select the file 
-\family typewriter
-mesh_hex8_1000m.jou
-\family default
-.
- This will run the commands in that file as well as the commands in 
-\family typewriter
-geometry.jou
-\family default
-, which is referenced from 
-\family typewriter
-mesh_hex8_1000m.jou
-\family default
-.
- Prior to doing this, you should set your directory to the one containing
- the journal files.
- This method will create the mesh, but you will gain very little insight
- into what is being done.
- A more informative approach is to input each journal command into the CUBIT
- command window directly.
- That way, you will see what each command does.
- The first command in 
-\family typewriter
-mesh_hex8_1000m.jou
-\family default
- is 
-\family typewriter
-`playback
-\family default
- 
-\family typewriter
-geometry.jou
-\family default
-', so you should start with the commands in 
-\family typewriter
-geometry.jou
-\family default
-.
- The first three commands, which define the block shape, are
-\end_layout
-
-\begin_layout LyX-Code
-reset
-\end_layout
-
-\begin_layout LyX-Code
-brick x 6000 y 6000 z 4000
-\end_layout
-
-\begin_layout LyX-Code
-volume 1 move x 0 y 0 z -2000
-\end_layout
-
-\begin_layout Standard
-Continuing through the remainder of the commands in 
-\family typewriter
-geometry.jou
-\family default
-, and then using the additional commands in 
-\family typewriter
-mesh_hex8_1000m.jou
-\family default
-, you will eventually end up with the file 
-\family typewriter
-box_hex8_1000m.exo
-\family default
-, which contains all of the mesh information.
- This information is similar to that included in PyLith mesh ASCII format,
- but the information is contained in an Exodus file, which is a specialized
- netCDF file.
- If you have the 
-\family typewriter
-ncdump
-\family default
- command available, you can see what is in the file by typing:
-\end_layout
-
-\begin_layout LyX-Code
-ncdump box_hex8_1000m.exo
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/hex8-mesh.jpg
-	lyxscale 50
-	scale 33
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Mesh composed of trilinear hexahedral cells generated by CUBIT used for
- the suite of example problems.
- The different colors represent the two different materials.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:3dhex8-mesh"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsection
-Additional Common Information
-\end_layout
-
-\begin_layout Standard
-In addition to the mesh, the example problems share other information.
- As in previous examples, we place this information in 
-\family typewriter
-pylithapp.cfg
-\family default
-.
- Since these examples use a mesh from CUBIT, in this file we set the importer
- to 
-\family typewriter
-MeshIOCubit
-\family default
-:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.mesh_generator]
-\end_layout
-
-\begin_layout LyX-Code
-reader = pylith.meshio.MeshIOCubit
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.mesh_generator.reader]
-\end_layout
-
-\begin_layout LyX-Code
-filename = mesh/box_hex8_1000m.exo
-\end_layout
-
-\begin_layout Standard
-This example differs from some earlier examples, because we specify two
- material groups:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent]
-\end_layout
-
-\begin_layout LyX-Code
-materials = [upper_crust,lower_crust]
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.materials.upper_crust]
-\end_layout
-
-\begin_layout LyX-Code
-label = Upper crust material
-\end_layout
-
-\begin_layout LyX-Code
-id = 1
-\end_layout
-
-\begin_layout LyX-Code
-db.iohandler.filename = spatialdb/mat_elastic.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell = pylith.feassemble.FIATLagrange
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell.dimension = 3
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.materials.lower_crust]
-\end_layout
-
-\begin_layout LyX-Code
-label = Lower crust material
-\end_layout
-
-\begin_layout LyX-Code
-id = 2
-\end_layout
-
-\begin_layout LyX-Code
-db.iohandler.filename = spatialdb/mat_elastic.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell = pylith.feassemble.FIATLagrange
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell.dimension = 3
-\end_layout
-
-\begin_layout Standard
-The two material groups correspond to the two different colored regions
- in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:3dhex8-mesh"
-
-\end_inset
-
-.
- Using two material groups allows us to specify different material types
- or material variations for the upper crust and lower crust, if desired.
- For now, we retain the default 
-\family typewriter
-ElasticIsotropic3D
-\family default
- material type for both materials.
- This behavior will be overridden by example-specific
-\family typewriter
-.cfg
-\family default
- files in some of the examples.
- Although the material groups are specified in 
-\family typewriter
-pylithapp.cfg
-\family default
-, the physical properties for the material models are given in 
-\family typewriter
-spatialdb/mat_elastic.spatialdb
-\family default
-.
- This spatial database provides values at a single point, resulting in uniform
- properties within the material.
-\end_layout
-
-\begin_layout Subsection
-Example Problems
-\end_layout
-
-\begin_layout Standard
-The example problems are divided into categories that roughly correspond
- to simple static problems, quasi-static problems, problems involving fault
- friction, and problems where gravity is used.
- For the most part, each successive example involves just adding or changing
- a few parameters from the previous example.
- For this reason, it is advisable to go through each example in order, starting
- with the simplest (static problems).
-\end_layout
-
-\begin_layout Standard
-\begin_inset CommandInset include
-LatexCommand input
-filename "static/static.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "quasistatic/quasistatic.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "friction/friction.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "gravity/gravity.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "surfload/surfload.lyx"
-
-\end_inset
-
-
-\begin_inset CommandInset include
-LatexCommand input
-filename "dike/dike.lyx"
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 0
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Tutorial-3d-hex8"
+
+\end_inset
+
+Tutorials Using Hexahedral Mesh Created by CUBIT
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this set of tutorials:
+\end_layout
+
+\begin_layout Itemize
+Static solution
+\end_layout
+
+\begin_layout Itemize
+Quasi-static solution
+\end_layout
+
+\begin_layout Itemize
+CUBIT mesh format
+\end_layout
+
+\begin_layout Itemize
+Trilinear hexahedral cells
+\end_layout
+
+\begin_layout Itemize
+VTK output
+\end_layout
+
+\begin_layout Itemize
+HDF5 output
+\end_layout
+
+\begin_layout Itemize
+Dirichlet displacement and velocity boundary conditions
+\end_layout
+
+\begin_layout Itemize
+Neumann traction boundary conditions and time-varying tractions
+\end_layout
+
+\begin_layout Itemize
+ZeroDispDB spatial database
+\end_layout
+
+\begin_layout Itemize
+SimpleDB spatial database
+\end_layout
+
+\begin_layout Itemize
+UniformDB spatial database
+\end_layout
+
+\begin_layout Itemize
+Static fault rupture
+\end_layout
+
+\begin_layout Itemize
+Multiple kinematic fault ruptures
+\end_layout
+
+\begin_layout Itemize
+Specifying more than one material
+\end_layout
+
+\begin_layout Itemize
+Nonlinear solver
+\end_layout
+
+\begin_layout Itemize
+Linearly elastic isotropic material
+\end_layout
+
+\begin_layout Itemize
+Maxwell linear viscoelastic material
+\end_layout
+
+\begin_layout Itemize
+Generalized Maxwell linear viscoelastic material
+\end_layout
+
+\begin_layout Itemize
+Power-law viscoelastic material
+\end_layout
+
+\begin_layout Itemize
+Drucker-Prager elastoplastic material
+\end_layout
+
+\begin_layout Itemize
+Adaptive time stepping
+\end_layout
+
+\begin_layout Itemize
+Static fault friction
+\end_layout
+
+\begin_layout Itemize
+Slip-weakening fault friction
+\end_layout
+
+\begin_layout Itemize
+Rate-and-state fault friction
+\end_layout
+
+\begin_layout Itemize
+Gravitational body forces
+\end_layout
+
+\begin_layout Itemize
+Initial stresses
+\end_layout
+
+\begin_layout Itemize
+Finite strain
+\end_layout
+
+\begin_layout Standard
+All of the files necessary to run the examples are contained in the directory
+ 
+\family typewriter
+examples/3d/hex8
+\family default
+.
+\end_layout
+
+\begin_layout Subsection
+Overview
+\end_layout
+
+\begin_layout Standard
+This tutorial is meant to demonstrate most of the important features of
+ PyLith as a quasi-static finite-element code, using a sequence of example
+ problems.
+ All problems use the same 3D hexahedral mesh generated using the CUBIT
+ 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+cubit.sandia.gov
+\end_layout
+
+\end_inset
+
+ mesh generation package.
+ Each example builds on the previous examples, as we demonstrate new features.
+ As in the other examples, the files include extensive comments.
+ We start with the generation of the mesh, which is composed of 144 trilinear
+ hexahedra.
+ The tutorial demonstrates the usage of the CUBIT mesh generation package
+ to create a mesh, as well as describing how to use a CUBIT-generated mesh
+ in PyLith.
+ Following the discussion of how to generate the mesh, we discuss the 
+\family typewriter
+pylithapp.cfg
+\family default
+ file, which contains information common to all the simulations.
+ We group the examples into four sections, each pertaining to a particular
+ set of PyLith features.
+ We suggest users go through each of these sections in order as the complexity
+ increases at each step.
+ 
+\end_layout
+
+\begin_layout Subsection
+Mesh Generation and Description
+\end_layout
+
+\begin_layout Standard
+The mesh for these examples is a simple rectangular solid (Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:3dhex8-mesh"
+
+\end_inset
+
+).
+ Although it would be possible to generate this mesh by hand, it is much
+ simpler to use a mesh generation package, and we use CUBIT for this example.
+ We provide documented journal files in 
+\family typewriter
+examples/3d/hex8/mesh.
+
+\family default
+ Dissection of these journal files should provide some insight into how
+ to use CUBIT with PyLith.
+ For more detailed information on using CUBIT, refer to the CUBIT documentation
+ 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+cubit.sandia.gov
+\end_layout
+
+\end_inset
+
+.
+ If you have CUBIT installed on your machine, you can use the journal files
+ to create your own mesh.
+ Otherwise, you can use the mesh that has already been created.
+\end_layout
+
+\begin_layout Standard
+If you are using CUBIT to generate your own mesh, there are two ways to
+ use the journal files.
+ The simplest method is to go to the
+\family sans
+ Tools
+\family default
+ menu, select 
+\family sans
+Play Journal File
+\family default
+, and then select the file 
+\family typewriter
+mesh_hex8_1000m.jou
+\family default
+.
+ This will run the commands in that file as well as the commands in 
+\family typewriter
+geometry.jou
+\family default
+, which is referenced from 
+\family typewriter
+mesh_hex8_1000m.jou
+\family default
+.
+ Prior to doing this, you should set your directory to the one containing
+ the journal files.
+ This method will create the mesh, but you will gain very little insight
+ into what is being done.
+ A more informative approach is to input each journal command into the CUBIT
+ command window directly.
+ That way, you will see what each command does.
+ The first command in 
+\family typewriter
+mesh_hex8_1000m.jou
+\family default
+ is 
+\family typewriter
+`playback
+\family default
+ 
+\family typewriter
+geometry.jou
+\family default
+', so you should start with the commands in 
+\family typewriter
+geometry.jou
+\family default
+.
+ The first three commands, which define the block shape, are
+\end_layout
+
+\begin_layout LyX-Code
+reset
+\end_layout
+
+\begin_layout LyX-Code
+brick x 6000 y 6000 z 4000
+\end_layout
+
+\begin_layout LyX-Code
+volume 1 move x 0 y 0 z -2000
+\end_layout
+
+\begin_layout Standard
+Continuing through the remainder of the commands in 
+\family typewriter
+geometry.jou
+\family default
+, and then using the additional commands in 
+\family typewriter
+mesh_hex8_1000m.jou
+\family default
+, you will eventually end up with the file 
+\family typewriter
+box_hex8_1000m.exo
+\family default
+, which contains all of the mesh information.
+ This information is similar to that included in PyLith mesh ASCII format,
+ but the information is contained in an Exodus file, which is a specialized
+ netCDF file.
+ If you have the 
+\family typewriter
+ncdump
+\family default
+ command available, you can see what is in the file by typing:
+\end_layout
+
+\begin_layout LyX-Code
+ncdump box_hex8_1000m.exo
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/hex8-mesh.jpg
+	lyxscale 50
+	scale 33
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Mesh composed of trilinear hexahedral cells generated by CUBIT used for
+ the suite of example problems.
+ The different colors represent the two different materials.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:3dhex8-mesh"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Additional Common Information
+\end_layout
+
+\begin_layout Standard
+In addition to the mesh, the example problems share other information.
+ As in previous examples, we place this information in 
+\family typewriter
+pylithapp.cfg
+\family default
+.
+ Since these examples use a mesh from CUBIT, in this file we set the importer
+ to 
+\family typewriter
+MeshIOCubit
+\family default
+:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.mesh_generator]
+\end_layout
+
+\begin_layout LyX-Code
+reader = pylith.meshio.MeshIOCubit
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.mesh_generator.reader]
+\end_layout
+
+\begin_layout LyX-Code
+filename = mesh/box_hex8_1000m.exo
+\end_layout
+
+\begin_layout Standard
+This example differs from some earlier examples, because we specify two
+ material groups:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent]
+\end_layout
+
+\begin_layout LyX-Code
+materials = [upper_crust,lower_crust]
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.materials.upper_crust]
+\end_layout
+
+\begin_layout LyX-Code
+label = Upper crust material
+\end_layout
+
+\begin_layout LyX-Code
+id = 1
+\end_layout
+
+\begin_layout LyX-Code
+db.iohandler.filename = spatialdb/mat_elastic.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell = pylith.feassemble.FIATLagrange
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell.dimension = 3
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.materials.lower_crust]
+\end_layout
+
+\begin_layout LyX-Code
+label = Lower crust material
+\end_layout
+
+\begin_layout LyX-Code
+id = 2
+\end_layout
+
+\begin_layout LyX-Code
+db.iohandler.filename = spatialdb/mat_elastic.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell = pylith.feassemble.FIATLagrange
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell.dimension = 3
+\end_layout
+
+\begin_layout Standard
+The two material groups correspond to the two different colored regions
+ in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:3dhex8-mesh"
+
+\end_inset
+
+.
+ Using two material groups allows us to specify different material types
+ or material variations for the upper crust and lower crust, if desired.
+ For now, we retain the default 
+\family typewriter
+ElasticIsotropic3D
+\family default
+ material type for both materials.
+ This behavior will be overridden by example-specific
+\family typewriter
+.cfg
+\family default
+ files in some of the examples.
+ Although the material groups are specified in 
+\family typewriter
+pylithapp.cfg
+\family default
+, the physical properties for the material models are given in 
+\family typewriter
+spatialdb/
+\begin_inset Newline linebreak
+\end_inset
+
+mat_elastic.spatialdb
+\family default
+.
+ This spatial database provides values at a single point, resulting in uniform
+ properties within the material.
+\end_layout
+
+\begin_layout Subsection
+Example Problems
+\end_layout
+
+\begin_layout Standard
+The example problems are divided into categories that roughly correspond
+ to simple static problems, quasi-static problems, problems involving fault
+ friction, and problems where gravity is used.
+ For the most part, each successive example involves just adding or changing
+ a few parameters from the previous example.
+ For this reason, it is advisable to go through each example in order, starting
+ with the simplest (static problems).
+\end_layout
+
+\begin_layout Standard
+\begin_inset CommandInset include
+LatexCommand input
+filename "static/static.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "quasistatic/quasistatic.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "friction/friction.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "gravity/gravity.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "surfload/surfload.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "dike/dike.lyx"
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/dike/dike.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/dike/dike.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/dike/dike.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -261,11 +261,7 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Displacement magnitude for example 
-\family typewriter
-step20
-\family default
- visualized using ParaView.
+Displacement magnitude for example step20 visualized using ParaView.
  
 \begin_inset CommandInset label
 LatexCommand label

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/friction/friction.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/friction/friction.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/friction/friction.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -183,17 +183,10 @@
 \family typewriter
 step10.cfg
 \family default
- file defines a problem that is identical to example 
-\family typewriter
-step01
-\family default
-, except for the presence of a vertical fault with static friction.
+ file defines a problem that is identical to example step01, except for
+ the presence of a vertical fault with static friction.
  In this case, the applied displacements are insufficient to cause the fault
- to slip, so the solution is identical to that in example 
-\family typewriter
-step01
-\family default
-.
+ to slip, so the solution is identical to that in example step01.
  As in previous examples involving faults, we must first provide an array
  defining the fault interfaces:
 \end_layout
@@ -428,11 +421,8 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Magnitude of tractions on the fault for example 
-\family typewriter
-step10
-\family default
- visualized using ParaView.
+Magnitude of tractions on the fault for example step10 visualized using
+ ParaView.
  
 \begin_inset CommandInset label
 LatexCommand label
@@ -584,11 +574,8 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Magnitude of tractions on the fault for example 
-\family typewriter
-step10
-\family default
- visualized using ParaView.
+Magnitude of tractions on the fault for example step10 visualized using
+ ParaView.
  Vectors of fault slip are also plotted.
  Note that PyLith outputs slip in the fault coordinate system, so we transform
  them to the global coordinate system using the Calculator in ParaView.
@@ -826,11 +813,8 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Displacement field for example 
-\family typewriter
-step12
-\family default
- at t = 200 years visualized using ParaView.
+Displacement field for example step12 at t = 200 years visualized using
+ ParaView.
  The mesh has been distorted by the computed displacements (magnified by
  500), and the vectors show the computed displacements.
 \begin_inset CommandInset label
@@ -986,11 +970,8 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Displacement field for example 
-\family typewriter
-step13
-\family default
- at t = 200 years visualized using ParaView.
+Displacement field for example step13 at t = 200 years visualized using
+ ParaView.
  The mesh has been distorted by the computed displacements (magnified by
  500), and the vectors show the computed displacements.
 \begin_inset CommandInset label
@@ -1055,51 +1036,75 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 [pylithapp.timedependent.interfaces.fault]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # Set rate-and-state parameters using a UniformDB.
  Set the parameters as
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # follows:
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # reference coefficient of friction: 0.6
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # reference slip rate: 1.0e-06 m/s
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # slip-weakening parameter: 0.037 m
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # a: 0.0125
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # b: 0.0172
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # cohesion: 0 Pa
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 friction.db_properties = spatialdata.spatialdb.UniformDB
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 friction.db_properties.label = Rate State Ageing
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 friction.db_properties.values = [reference-friction-coefficient,reference-slip-rat
 e,
 \begin_inset Newline newline
@@ -1110,6 +1115,8 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 friction.db_properties.data = [0.6,1.0e-6*m/s,0.0370*m,0.0125,0.0172,0.0*Pa]
 \end_layout
 
@@ -1149,9 +1156,9 @@
 \family default
  (all with a prefix of 
 \family typewriter
-step1
+step14
 \family default
-4).
+).
  Results using ParaView are shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -1184,11 +1191,8 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Displacement field for example 
-\family typewriter
-step14
-\family default
- at t = 200 years visualized using ParaView.
+Displacement field for example step14 at t = 200 years visualized using
+ ParaView.
  The mesh has been distorted by the computed displacements (magnified by
  500), and the vectors show the computed displacements.
 \begin_inset CommandInset label

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,731 +1,731 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 0
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Tutorial-3d-hex8-gravity"
-
-\end_inset
-
-Gravitational Body Force Examples
-\end_layout
-
-\begin_layout Standard
-PyLith features discussed in this tutorial:
-\end_layout
-
-\begin_layout Itemize
-Gravitational body forces
-\end_layout
-
-\begin_layout Itemize
-Initial stresses
-\end_layout
-
-\begin_layout Itemize
-Finite strain
-\end_layout
-
-\begin_layout Itemize
-Generalized Maxwell linear viscoelastic material
-\end_layout
-
-\begin_layout Subsubsection
-Overview
-\end_layout
-
-\begin_layout Standard
-This set of examples describes a set of problems for PyLith involving gravitatio
-nal body forces.
- All of the examples are quasi-static and run for a time period of 200 years.
- These examples also demonstrate the use of a generalized Maxwell viscoelastic
- material, which is used for the lower crust in all examples.
- The final example (step17) demonstrates the usage of a finite strain formulatio
-n, which automatically invokes the nonlinear solver.
- All of the examples are contained in the directory 
-\family typewriter
-examples/3d/hex8
-\family default
-, and the corresponding 
-\family typewriter
-.cfg
-\family default
- files are 
-\family typewriter
-step15.cfg
-\family default
-, 
-\family typewriter
-step16.cfg
-\family default
-, and 
-\family typewriter
-step17.cfg
-\family default
-.
- Each example may be run as follows:
-\end_layout
-
-\begin_layout LyX-Code
-pylith stepXX.cfg
-\end_layout
-
-\begin_layout Standard
-This will cause PyLith to read the default parameters in 
-\family typewriter
-pylithapp.cfg
-\family default
-, and then override or augment them with the additional parameters in the
- 
-\family typewriter
-stepXX.cfg
-\family default
- file.
- Each 
-\family typewriter
-.cfg
-\family default
- file is extensively documented, to provide detailed information on the
- various parameters.
-\end_layout
-
-\begin_layout Subsubsection
-Step15 - Gravitational Body Forces
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step15.cfg
-\family default
- file defines a problem with extremely simple Dirichlet boundary conditions.
- On the positive and negative x-faces, the positive and negative y-faces,
- and the negative z-face, the displacements normal to the face are set to
- zero.
- Because all of the materials in the example have the same density, the
- elastic solution for loading via gravitational body forces is
-\begin_inset Formula 
-\begin{equation}
-\sigma_{zz}=\rho gh;\:\sigma_{xx}=\sigma_{yy}=\frac{\nu\rho gh}{1-\nu}\:.\label{eq:1-1}
-\end{equation}
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-We first set the gravity field, which by default has values of 9.80655 
-\begin_inset Formula $\unitfrac{m}{s^{2}}$
-\end_inset
-
- for acceleration and 
-\begin_inset Formula $\left[0,0,-1\right]$
-\end_inset
-
- for direction:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent]
-\end_layout
-
-\begin_layout LyX-Code
-# Set gravity field (default is None)
-\end_layout
-
-\begin_layout LyX-Code
-gravity_field = spatialdata.spatialdb.GravityField
-\end_layout
-
-\begin_layout Standard
-We use adaptive time stepping, set the simulation time to 200 years, and
- specify a maximum time step size of 10 years:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.implicit]
-\end_layout
-
-\begin_layout LyX-Code
-# Change time stepping algorithm from uniform time step, to adaptive
-\end_layout
-
-\begin_layout LyX-Code
-# time stepping.
-\end_layout
-
-\begin_layout LyX-Code
-time_step = pylith.problems.TimeStepAdapt
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-# Change the total simulation time to 200 years, and set the maximum time
-\end_layout
-
-\begin_layout LyX-Code
-# step size to 10 years.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.implicit.time_step]
-\end_layout
-
-\begin_layout LyX-Code
-total_time = 200.0*year
-\end_layout
-
-\begin_layout LyX-Code
-max_dt = 10.0*year
-\end_layout
-
-\begin_layout LyX-Code
-stability_factor = 1.0 ; use time step equal to stable value from materials
-\end_layout
-
-\begin_layout Standard
-We use a generalized Maxwell model for the lower crust (see Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sub:Formulation-for-Gen-Max"
-
-\end_inset
-
-), and use a 
-\family typewriter
-SimpleDB
-\family default
- to provide the properties.
- We also request the relevant properties and state variables for output:
-\end_layout
-
-\begin_layout LyX-Code
-# Change material type of lower crust to generalized Maxwell viscoelastic.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent]
-\end_layout
-
-\begin_layout LyX-Code
-materials.lower_crust = pylith.materials.GenMaxwellIsotropic3D
-\end_layout
-
-\begin_layout LyX-Code
-# Provide a spatial database from which to obtain property values.
-\end_layout
-
-\begin_layout LyX-Code
-# Since there are additional properties and state variables for the
-\end_layout
-
-\begin_layout LyX-Code
-# generalized Maxwell model, we explicitly request that they be output.
-\end_layout
-
-\begin_layout LyX-Code
-# Properties are named in cell_info_fields and state variables are named
- in
-\end_layout
-
-\begin_layout LyX-Code
-# cell_data_fields.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.materials.lower_crust]
-\end_layout
-
-\begin_layout LyX-Code
-db_properties.iohandler.filename = spatialdb/mat_genmaxwell.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-output.cell_info_fields = [density,mu,lambda,shear_ratio,maxwell_time]
-\end_layout
-
-\begin_layout LyX-Code
-output.cell_data_fields = [total_strain,stress,viscous_strain_1,viscous_strain_2,
-\begin_inset Newline newline
-\end_inset
-
-viscous_strain_3]
-\end_layout
-
-\begin_layout Standard
-The boundary conditions for this example are trivial, so we are able to
- use the default 
-\family typewriter
-ZeroDispDB
-\family default
- for all faces.
- When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step15
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step15-displ-t200"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step15-displ-t200.jpg
-	lyxscale 50
-	width 10cm
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement field for example step15 at t = 200 years visualized using
- ParaView.
- The z-component of the displacement field is shown with the color contours,
- and the vectors show the computed displacements.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step15-displ-t200"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Step16 - Gravitational Body Forces with Initial Stresses
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step16.cfg
-\family default
- file defines a problem that is identical to example step15, except that
- initial stresses are used to prevent the initial large displacements due
- to 'turning on' gravity.
- Since all normal stress components are given an initial stress of 
-\begin_inset Formula $\rho gh$
-\end_inset
-
-, the initial stress state is lithostatic, which is an appropriate condition
- for many tectonic problems in the absence of tectonic stresses (e.g., McGarr
- 
-\begin_inset CommandInset citation
-LatexCommand cite
-key "McGarr:1988"
-
-\end_inset
-
-).
- When compared to example step15, this example should maintain a lithostatic
- state of stress for the entire simulation, and displacements should remain
- essentially zero.
-\end_layout
-
-\begin_layout Standard
-We set the gravity field, as in example step15, and we again use adaptive
- time stepping with a generalized Maxwell rheology for the lower crust.
- We provide values for the initial stress for both the upper and lower crust.
- Since the materials have the same density, we are able to use the same
- 
-\family typewriter
-SimpleDB
-\family default
- with a linear variation for both (see file 
-\family typewriter
-examples/3d/hex8/spatialdb/initial_stress.spatialdb
-\family default
-):
-\end_layout
-
-\begin_layout LyX-Code
-# We must specify initial stresses for each material.
-\end_layout
-
-\begin_layout LyX-Code
-# We provide a filename for the spatial database that gives the stresses,
-\end_layout
-
-\begin_layout LyX-Code
-# and we change the query_type from the default 'nearest' to 'linear'.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.materials.upper_crust]
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress = spatialdata.spatialdb.SimpleDB
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress.iohandler.filename = spatialdb/initial_stress.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress.query_type = linear
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.materials.lower_crust]
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress = spatialdata.spatialdb.SimpleDB
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress.iohandler.filename = spatialdb/initial_stress.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-db_initial_stress.query_type = linear
-\end_layout
-
-\begin_layout Standard
-Note that we use a 
-\family typewriter
-linear
-\family default
- 
-\family typewriter
-query_type
-\family default
- rather than the default type of 
-\family typewriter
-nearest
-\family default
-, so that a linear interpolation is performed along the z-direction.
- When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step16
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step16-stress_xx-t200"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step16-stress_xx-t200.jpg
-	lyxscale 50
-	width 10cm
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Stress field (xx-component) for example step16 at t = 200 years visualized
- using ParaView.
- Note that for this example, Stress_xx = Stress_yy = Stress_zz, and there
- is no vertical displacement throughout the simulation.
- Also note that the stresses appear as 4 layers since we have used 
-\family typewriter
-CellFilterAvgMesh
-\family default
- for material output.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step16-stress_xx-t200"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Step17 - Gravitational Body Forces with Small Strain
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step17.cfg
-\family default
- file defines a problem that is identical to example step15, except that
- we now use a small strain formulation (see Section 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "sec:Small-Strain-Formulation"
-
-\end_inset
-
-).
- All of the problems up to this point have assumed infinitesimal strain,
- meaning that the change in shape of the domain during deformation is not
- taken into account.
- In many problems it is important to consider the change in shape of the
- domain.
- This is particularly important in many problems involving gravitational
- body forces, since a change in shape of the domain results in a different
- stress field.
- By examining the stress and deformation fields for this example in comparison
- with those of example step15, we can see what effect the infinitesimal
- strain approximation has on our solution.
-\end_layout
-
-\begin_layout Standard
-We set the gravity field, as in example step15 and again use adaptive time
- stepping withs a generalized Maxwell rheology for the lower crust.
- The only change is that we change the problem formulation from the default
- 
-\family typewriter
-Implicit
-\family default
- to 
-\family typewriter
-ImplicitLgDeform
-\family default
-.
- Since the large deformation formulation is nonlinear, PyLith automatically
- switches the solver from the default 
-\family typewriter
-SolverLinear
-\family default
- to 
-\family typewriter
-SolverNonlinear
-\family default
-.
- It is thus only necessary to change the formulation:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent]
-\end_layout
-
-\begin_layout LyX-Code
-# Set the formulation for finite strain.
- The default solver will
-\end_layout
-
-\begin_layout LyX-Code
-# automatically be switched to the nonlinear solver.
-\end_layout
-
-\begin_layout LyX-Code
-formulation = pylith.problems.ImplicitLgDeform
-\end_layout
-
-\begin_layout Standard
-When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step17
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step17-disp-t200"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step17-displ-t200.jpg
-	lyxscale 50
-	width 10cm
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement field for example step17 at t = 200 years visualized using
- ParaView.
- The z-component of the displacement field is shown with the color contours,
- and the vectors show the computed displacements.
- Note the larger displacements compared with example step15.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step17-disp-t200"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 0
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Tutorial-3d-hex8-gravity"
+
+\end_inset
+
+Gravitational Body Force Examples
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this tutorial:
+\end_layout
+
+\begin_layout Itemize
+Gravitational body forces
+\end_layout
+
+\begin_layout Itemize
+Initial stresses
+\end_layout
+
+\begin_layout Itemize
+Finite strain
+\end_layout
+
+\begin_layout Itemize
+Generalized Maxwell linear viscoelastic material
+\end_layout
+
+\begin_layout Subsubsection
+Overview
+\end_layout
+
+\begin_layout Standard
+This set of examples describes a set of problems for PyLith involving gravitatio
+nal body forces.
+ All of the examples are quasi-static and run for a time period of 200 years.
+ These examples also demonstrate the use of a generalized Maxwell viscoelastic
+ material, which is used for the lower crust in all examples.
+ The final example (step17) demonstrates the usage of a finite strain formulatio
+n, which automatically invokes the nonlinear solver.
+ All of the examples are contained in the directory 
+\family typewriter
+examples/3d/hex8
+\family default
+, and the corresponding 
+\family typewriter
+.cfg
+\family default
+ files are 
+\family typewriter
+step15.cfg
+\family default
+, 
+\family typewriter
+step16.cfg
+\family default
+, and 
+\family typewriter
+step17.cfg
+\family default
+.
+ Each example may be run as follows:
+\end_layout
+
+\begin_layout LyX-Code
+pylith stepXX.cfg
+\end_layout
+
+\begin_layout Standard
+This will cause PyLith to read the default parameters in 
+\family typewriter
+pylithapp.cfg
+\family default
+, and then override or augment them with the additional parameters in the
+ 
+\family typewriter
+stepXX.cfg
+\family default
+ file.
+ Each 
+\family typewriter
+.cfg
+\family default
+ file is extensively documented, to provide detailed information on the
+ various parameters.
+\end_layout
+
+\begin_layout Subsubsection
+Step15 - Gravitational Body Forces
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step15.cfg
+\family default
+ file defines a problem with extremely simple Dirichlet boundary conditions.
+ On the positive and negative x-faces, the positive and negative y-faces,
+ and the negative z-face, the displacements normal to the face are set to
+ zero.
+ Because all of the materials in the example have the same density, the
+ elastic solution for loading via gravitational body forces is
+\begin_inset Formula 
+\begin{equation}
+\sigma_{zz}=\rho gh;\:\sigma_{xx}=\sigma_{yy}=\frac{\nu\rho gh}{1-\nu}\:.\label{eq:1-1}
+\end{equation}
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+We first set the gravity field, which by default has values of 9.80655 
+\begin_inset Formula $\unitfrac{m}{s^{2}}$
+\end_inset
+
+ for acceleration and 
+\begin_inset Formula $\left[0,0,-1\right]$
+\end_inset
+
+ for direction:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent]
+\end_layout
+
+\begin_layout LyX-Code
+# Set gravity field (default is None)
+\end_layout
+
+\begin_layout LyX-Code
+gravity_field = spatialdata.spatialdb.GravityField
+\end_layout
+
+\begin_layout Standard
+We use adaptive time stepping, set the simulation time to 200 years, and
+ specify a maximum time step size of 10 years:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.implicit]
+\end_layout
+
+\begin_layout LyX-Code
+# Change time stepping algorithm from uniform time step, to adaptive
+\end_layout
+
+\begin_layout LyX-Code
+# time stepping.
+\end_layout
+
+\begin_layout LyX-Code
+time_step = pylith.problems.TimeStepAdapt
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# Change the total simulation time to 200 years, and set the maximum time
+\end_layout
+
+\begin_layout LyX-Code
+# step size to 10 years.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.implicit.time_step]
+\end_layout
+
+\begin_layout LyX-Code
+total_time = 200.0*year
+\end_layout
+
+\begin_layout LyX-Code
+max_dt = 10.0*year
+\end_layout
+
+\begin_layout LyX-Code
+stability_factor = 1.0 ; use time step equal to stable value from materials
+\end_layout
+
+\begin_layout Standard
+We use a generalized Maxwell model for the lower crust (see Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sub:Formulation-for-Gen-Max"
+
+\end_inset
+
+), and use a 
+\family typewriter
+SimpleDB
+\family default
+ to provide the properties.
+ We also request the relevant properties and state variables for output:
+\end_layout
+
+\begin_layout LyX-Code
+# Change material type of lower crust to generalized Maxwell viscoelastic.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent]
+\end_layout
+
+\begin_layout LyX-Code
+materials.lower_crust = pylith.materials.GenMaxwellIsotropic3D
+\end_layout
+
+\begin_layout LyX-Code
+# Provide a spatial database from which to obtain property values.
+\end_layout
+
+\begin_layout LyX-Code
+# Since there are additional properties and state variables for the
+\end_layout
+
+\begin_layout LyX-Code
+# generalized Maxwell model, we explicitly request that they be output.
+\end_layout
+
+\begin_layout LyX-Code
+# Properties are named in cell_info_fields and state variables are named
+ in
+\end_layout
+
+\begin_layout LyX-Code
+# cell_data_fields.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.materials.lower_crust]
+\end_layout
+
+\begin_layout LyX-Code
+db_properties.iohandler.filename = spatialdb/mat_genmaxwell.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+output.cell_info_fields = [density,mu,lambda,shear_ratio,maxwell_time]
+\end_layout
+
+\begin_layout LyX-Code
+output.cell_data_fields = [total_strain,stress,viscous_strain_1,viscous_strain_2,
+\begin_inset Newline newline
+\end_inset
+
+viscous_strain_3]
+\end_layout
+
+\begin_layout Standard
+The boundary conditions for this example are trivial, so we are able to
+ use the default 
+\family typewriter
+ZeroDispDB
+\family default
+ for all faces.
+ When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step15
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step15-displ-t200"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step15-displ-t200.jpg
+	lyxscale 50
+	width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for example step15 at t = 200 years visualized using
+ ParaView.
+ The z-component of the displacement field is shown with the color contours,
+ and the vectors show the computed displacements.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step15-displ-t200"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Step16 - Gravitational Body Forces with Initial Stresses
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step16.cfg
+\family default
+ file defines a problem that is identical to example step15, except that
+ initial stresses are used to prevent the initial large displacements due
+ to 'turning on' gravity.
+ Since all normal stress components are given an initial stress of 
+\begin_inset Formula $\rho gh$
+\end_inset
+
+, the initial stress state is lithostatic, which is an appropriate condition
+ for many tectonic problems in the absence of tectonic stresses (e.g., McGarr
+ 
+\begin_inset CommandInset citation
+LatexCommand cite
+key "McGarr:1988"
+
+\end_inset
+
+).
+ When compared to example step15, this example should maintain a lithostatic
+ state of stress for the entire simulation, and displacements should remain
+ essentially zero.
+\end_layout
+
+\begin_layout Standard
+We set the gravity field, as in example step15, and we again use adaptive
+ time stepping with a generalized Maxwell rheology for the lower crust.
+ We provide values for the initial stress for both the upper and lower crust.
+ Since the materials have the same density, we are able to use the same
+ 
+\family typewriter
+SimpleDB
+\family default
+ with a linear variation for both (see file 
+\family typewriter
+examples/3d/hex8/spatialdb/initial_stress.spatialdb
+\family default
+):
+\end_layout
+
+\begin_layout LyX-Code
+# We must specify initial stresses for each material.
+\end_layout
+
+\begin_layout LyX-Code
+# We provide a filename for the spatial database that gives the stresses,
+\end_layout
+
+\begin_layout LyX-Code
+# and we change the query_type from the default 'nearest' to 'linear'.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.materials.upper_crust]
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress = spatialdata.spatialdb.SimpleDB
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress.iohandler.filename = spatialdb/initial_stress.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress.query_type = linear
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.materials.lower_crust]
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress = spatialdata.spatialdb.SimpleDB
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress.iohandler.filename = spatialdb/initial_stress.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+db_initial_stress.query_type = linear
+\end_layout
+
+\begin_layout Standard
+Note that we use a 
+\family typewriter
+linear
+\family default
+ 
+\family typewriter
+query_type
+\family default
+ rather than the default type of 
+\family typewriter
+nearest
+\family default
+, so that a linear interpolation is performed along the z-direction.
+ When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step16
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step16-stress_xx-t200"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step16-stress_xx-t200.jpg
+	lyxscale 50
+	width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Stress field (xx-component) for example step16 at t = 200 years visualized
+ using ParaView.
+ Note that for this example, Stress_xx = Stress_yy = Stress_zz, and there
+ is no vertical displacement throughout the simulation.
+ Also note that the stresses appear as four layers since we have used 
+\family typewriter
+CellFilterAvgMesh
+\family default
+ for material output.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step16-stress_xx-t200"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Step17 - Gravitational Body Forces with Small Strain
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step17.cfg
+\family default
+ file defines a problem that is identical to example step15, except that
+ we now use a small strain formulation (see Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Small-Strain-Formulation"
+
+\end_inset
+
+).
+ All of the problems up to this point have assumed infinitesimal strain,
+ meaning that the change in shape of the domain during deformation is not
+ taken into account.
+ In many problems it is important to consider the change in shape of the
+ domain.
+ This is particularly important in many problems involving gravitational
+ body forces, since a change in shape of the domain results in a different
+ stress field.
+ By examining the stress and deformation fields for this example in comparison
+ with those of example step15, we can see what effect the infinitesimal
+ strain approximation has on our solution.
+\end_layout
+
+\begin_layout Standard
+We set the gravity field, as in example step15 and again use adaptive time
+ stepping withs a generalized Maxwell rheology for the lower crust.
+ The only change is that we change the problem formulation from the default
+ 
+\family typewriter
+Implicit
+\family default
+ to 
+\family typewriter
+ImplicitLgDeform
+\family default
+.
+ Since the large deformation formulation is nonlinear, PyLith automatically
+ switches the solver from the default 
+\family typewriter
+SolverLinear
+\family default
+ to 
+\family typewriter
+SolverNonlinear
+\family default
+.
+ It is thus only necessary to change the formulation:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent]
+\end_layout
+
+\begin_layout LyX-Code
+# Set the formulation for finite strain.
+ The default solver will
+\end_layout
+
+\begin_layout LyX-Code
+# automatically be switched to the nonlinear solver.
+\end_layout
+
+\begin_layout LyX-Code
+formulation = pylith.problems.ImplicitLgDeform
+\end_layout
+
+\begin_layout Standard
+When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step17
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step17-disp-t200"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step17-displ-t200.jpg
+	lyxscale 50
+	width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for example step17 at t = 200 years visualized using
+ ParaView.
+ The z-component of the displacement field is shown with the color contours,
+ and the vectors show the computed displacements.
+ Note the larger displacements compared with example step15.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step17-disp-t200"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -756,12 +756,11 @@
 \end_layout
 
 \begin_layout LyX-Code
-db_rate.values = [traction-rate-shear-horiz,traction-rate-shear-vert,traction-rat
-e-normal,
+db_rate.values = [traction-rate-shear-horiz,traction-rate-shear-vert,
 \begin_inset Newline newline
 \end_inset
 
-rate-start-time]
+traction-rate-normal,rate-start-time]
 \end_layout
 
 \begin_layout LyX-Code
@@ -1483,13 +1482,9 @@
 \end_layout
 
 \begin_layout Standard
-In 
-\family typewriter
-step07
-\family default
- we add velocity boundary conditions in the positive and negative y-directions
- on the positive and negative x-faces, so that the external boundaries keep
- pace with the average fault slip.
+In step07 we add velocity boundary conditions in the positive and negative
+ y-directions on the positive and negative x-faces, so that the external
+ boundaries keep pace with the average fault slip.
  This problem is nearly identical to the strike-slip fault model of Savage
  and Prescott 
 \begin_inset CommandInset citation
@@ -1756,12 +1751,8 @@
 step07
 \family default
 ).
- As for example 
+ As for example step06, make sure to open the 
 \family typewriter
-step06
-\family default
-, make sure to open the 
-\family typewriter
 .xmf
 \family default
  files rather than the 
@@ -1796,11 +1787,7 @@
 
 \begin_layout Plain Layout
 Displacement field (color contours) and velocity field (vectors) for example
- 
-\family typewriter
-step07
-\family default
- at t = 300 years visualized using ParaView.
+ step07 at t = 300 years visualized using ParaView.
  The mesh has been distorted by the computed displacements (magnified by
  500), and the vectors show the computed velocities.
 \begin_inset CommandInset label
@@ -1809,7 +1796,7 @@
 
 \end_inset
 
-.
+
 \end_layout
 
 \end_inset
@@ -1839,11 +1826,8 @@
 \family typewriter
 step08.cfg
 \family default
- file defines a problem that is identical to example 
-\family typewriter
-step07
-\family default
-, except the the lower crust is composed of a power-law viscoelastic material.
+ file defines a problem that is identical to example step07, except the
+ the lower crust is composed of a power-law viscoelastic material.
  Since the material behavior is now nonlinear, we must use the nonlinear
  solver:
 \end_layout
@@ -1931,7 +1915,11 @@
  The user must provide a spatial database defining the spatial distribution
  of laboratory-derived parameters (contained in 
 \family typewriter
-powerlaw_params.spatialdb
+powerlaw_params.
+\begin_inset Newline linebreak
+\end_inset
+
+spatialdb
 \family default
 ), another spatial database defining the temperature field in degrees K
  (contained in 
@@ -1992,8 +1980,11 @@
 \end_layout
 
 \begin_layout Standard
-This code will automatically read the parameters in powerlaw_gendb.cfg in
- creating the file
+This code will automatically read the parameters in 
+\family typewriter
+powerlaw_gendb.cfg
+\family default
+ in creating the file
 \begin_inset Newline newline
 \end_inset
 
@@ -2077,39 +2068,57 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # Provide the values to be obtained from each database and the database
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 # name.
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 [pylithapp.timedependent.materials.lower_crust.db_properties]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 values_A = [density,vs,vp]   ; Elastic properties.
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db_A.label = Elastic properties
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db_A.iohandler.filename = spatialdb/mat_elastic.spatialdb
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 values_B = [reference-stress,reference-strain-rate,power-law-exponent] 
   ; Power-law properties.
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db_B.label = Power-law properties
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db_B.iohandler.filename = spatialdb/mat_powerlaw.spatialdb
 \end_layout
 
@@ -2202,11 +2211,7 @@
 
 \begin_layout Plain Layout
 The XY-component of strain (color contours) and displacement field (vectors)
- for example 
-\family typewriter
-step08
-\family default
- at t = 150 years visualized using ParaView.
+ for example step08 at t = 150 years visualized using ParaView.
  For this visualization, we loaded both the 
 \family typewriter
 step08-lower_crust.xmf
@@ -2227,7 +2232,7 @@
 
 \end_inset
 
-.
+
 \end_layout
 
 \end_inset
@@ -2248,11 +2253,8 @@
 \begin_layout Standard
 In this example we use a Drucker-Prager elastoplastic rheology in the lower
  crust.
- As in example 
-\family typewriter
-step08
-\family default
-, the material behavior is nonlinear so we again use the nonlinear solver.
+ As in example step08, the material behavior is nonlinear so we again use
+ the nonlinear solver.
  The material is elastoplastic, there is no inherent time-dependent response
  and the stable time-step size for the material depends on the loading condition
 s.
@@ -2363,12 +2365,8 @@
 \end_layout
 
 \begin_layout Standard
-As for the 
-\family typewriter
-step08
-\family default
- example, we first define the properties that come from each spatial database
- and then provide the database filename:
+As for the step08 example, we first define the properties that come from
+ each spatial database and then provide the database filename:
 \end_layout
 
 \begin_layout LyX-Code
@@ -2484,11 +2482,7 @@
 
 \begin_layout Plain Layout
 The XY-component of strain (color contours) and displacement field (vectors)
- for example 
-\family typewriter
-step09
-\family default
- at t = 150 years visualized using ParaView.
+ for example step09 at t = 150 years visualized using ParaView.
  For this visualization, we loaded both the 
 \family typewriter
 step09-lower_crust.xmf
@@ -2509,7 +2503,7 @@
 
 \end_inset
 
-.
+
 \end_layout
 
 \end_inset

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/static/static.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/static/static.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/static/static.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1,869 +1,872 @@
-#LyX 2.0 created this file. For more info see http://www.lyx.org/
-\lyxformat 413
-\begin_document
-\begin_header
-\textclass book
-\begin_preamble
-
-\end_preamble
-\use_default_options false
-\maintain_unincluded_children false
-\language english
-\language_package default
-\inputencoding latin1
-\fontencoding global
-\font_roman default
-\font_sans default
-\font_typewriter default
-\font_default_family default
-\use_non_tex_fonts false
-\font_sc false
-\font_osf false
-\font_sf_scale 100
-\font_tt_scale 100
-
-\graphics default
-\default_output_format default
-\output_sync 0
-\bibtex_command default
-\index_command default
-\paperfontsize default
-\spacing single
-\use_hyperref false
-\papersize default
-\use_geometry true
-\use_amsmath 0
-\use_esint 0
-\use_mhchem 1
-\use_mathdots 1
-\cite_engine basic
-\use_bibtopic false
-\use_indices false
-\paperorientation portrait
-\suppress_date false
-\use_refstyle 0
-\index Index
-\shortcut idx
-\color #008000
-\end_index
-\leftmargin 1in
-\topmargin 1in
-\rightmargin 1in
-\bottommargin 2in
-\secnumdepth 3
-\tocdepth 3
-\paragraph_separation indent
-\paragraph_indentation default
-\quotes_language english
-\papercolumns 1
-\papersides 1
-\paperpagestyle default
-\tracking_changes false
-\output_changes false
-\html_math_output 0
-\html_css_as_file 0
-\html_be_strict false
-\end_header
-
-\begin_body
-
-\begin_layout Subsection
-\begin_inset CommandInset label
-LatexCommand label
-name "sec:Tutorial-3d-hex8-static"
-
-\end_inset
-
-Static Examples
-\end_layout
-
-\begin_layout Standard
-PyLith features discussed in this tutorial:
-\end_layout
-
-\begin_layout Itemize
-Static solution
-\end_layout
-
-\begin_layout Itemize
-VTK output
-\end_layout
-
-\begin_layout Itemize
-Dirichlet displacement boundary conditions
-\end_layout
-
-\begin_layout Itemize
-Neumann traction boundary conditions
-\end_layout
-
-\begin_layout Itemize
-ZeroDispDB spatial database
-\end_layout
-
-\begin_layout Itemize
-SimpleDB spatial database
-\end_layout
-
-\begin_layout Itemize
-UniformDB spatial database
-\end_layout
-
-\begin_layout Itemize
-Static fault rupture
-\end_layout
-
-\begin_layout Itemize
-Specifying more than one material
-\end_layout
-
-\begin_layout Itemize
-Linearly elastic isotropic material
-\end_layout
-
-\begin_layout Subsubsection
-Overview
-\end_layout
-
-\begin_layout Standard
-This set of examples describe the simplest class of problems for PyLith.
- The problems are all purely elastic, and there is no time-dependence.
- This set of elastostatic examples primarily demonstrates the application
- of different types of boundary conditions in PyLith, as well as demonstrating
- the use of a kinematic fault for a static problem.
- All of the examples are contained in the directory 
-\family typewriter
-examples/3d/hex8
-\family default
-, and the corresponding 
-\family typewriter
-.cfg
-\family default
- files are 
-\family typewriter
-step01.cfg
-\family default
-, 
-\family typewriter
-step02.cfg
-\family default
-, and 
-\family typewriter
-step03.cfg
-\family default
-.
- Each example may be run as follows:
-\end_layout
-
-\begin_layout LyX-Code
-pylith stepXX.cfg
-\end_layout
-
-\begin_layout Standard
-This will cause PyLith to read the default parameters in 
-\family typewriter
-pylithapp.cfg
-\family default
-, and then override or augment them with the additional parameters in the
- 
-\family typewriter
-stepXX.cfg
-\family default
- file.
- Each 
-\family typewriter
-.cfg
-\family default
- file is extensively documented to provide detailed information on the various
- parameters.
-\end_layout
-
-\begin_layout Subsubsection
-Step01 - Pure Dirichlet Boundary Conditions
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step01.cfg
-\family default
- file defines a problem with pure Dirichlet (displacement) boundary conditions
- corresponding to compression in the x-direction and shear in the y-direction.
- The bottom (minimum z) boundary is held fixed in the z-direction.
- On the positive and negative x-faces, compressional displacements of 1
- m are applied in the x-direction and shear displacements yielding a left-latera
-l sense of shear are applied in the y-direction.
- In this example and in subsequent examples we would like to output the
- displacement solution over a subset of the domain corresponding to the
- ground surface.
- To do this, we first set the output to an array of two output managers
- as follows:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.implicit]
-\end_layout
-
-\begin_layout LyX-Code
-# Set the output to an array of 2 output managers.
-\end_layout
-
-\begin_layout LyX-Code
-# We will output the solution over the domain and the ground surface.
-\end_layout
-
-\begin_layout LyX-Code
-output = [domain,subdomain]
-\end_layout
-
-\begin_layout Standard
-We then define the subdomain output manager to correspond to a subset of
- the domain:
-\end_layout
-
-\begin_layout LyX-Code
-# Set subdomain component to OutputSolnSubset (boundary of the domain).
-\end_layout
-
-\begin_layout LyX-Code
-output.subdomain = pylith.meshio.OutputSolnSubset
-\end_layout
-
-\begin_layout Standard
-Later (in the output section at the end of the file), we specify the nodeset
- that corresponds to the desired output:
-\end_layout
-
-\begin_layout LyX-Code
-# Give basename for VTK domain output of solution over ground surface.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.problem.formulation.output.subdomain]
-\end_layout
-
-\begin_layout LyX-Code
-# Name of nodeset for ground surface.
-\end_layout
-
-\begin_layout LyX-Code
-label = face_zpos
-\end_layout
-
-\begin_layout LyX-Code
-writer.filename = output/step01-groundsurf.vtk
-\end_layout
-
-\begin_layout Standard
-For the boundary conditions, we must describe which degrees of freedom are
- being constrained (
-\family typewriter
-bc_dof
-\family default
-), we must provide a the label associated with the CUBIT nodeset associated
- with the BC, and we must specify the type of spatial database is being
- used to describe the boundary conditions.
- For the x-faces, we use a 
-\family typewriter
-SimpleDB
-\family default
- to provide the displacements on the x-faces:
-\end_layout
-
-\begin_layout LyX-Code
-# +x face
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc.x_pos]
-\end_layout
-
-\begin_layout LyX-Code
-bc_dof = [0, 1]
-\end_layout
-
-\begin_layout LyX-Code
-label = face_xpos
-\end_layout
-
-\begin_layout LyX-Code
-db_initial = spatialdata.spatialdb.SimpleDB
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.label = Dirichlet BC on +x
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.iohandler.filename = spatialdb/fixeddisp_axial_shear.spatialdb
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-# -x face
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc.x_neg]
-\end_layout
-
-\begin_layout LyX-Code
-bc_dof = [0, 1]
-\end_layout
-
-\begin_layout LyX-Code
-label = face_xneg
-\end_layout
-
-\begin_layout LyX-Code
-db_initial = spatialdata.spatialdb.SimpleDB
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.label = Dirichlet BC on -x
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.iohandler.filename = spatialdb/fixeddisp_axial_shear.spatialdb
-\end_layout
-
-\begin_layout Standard
-For a 
-\family typewriter
-SimpleDB
-\family default
-, we must provide a filename.
- The default spatial database for 
-\family typewriter
-db_initial
-\family default
- is 
-\family typewriter
-ZeroDispBC
-\family default
-, which automatically applies zero displacements to all vertices in the
- nodeset, and no filename is required (or needed).
- This is what we use for the bottom of the mesh:
-\end_layout
-
-\begin_layout LyX-Code
-# -z face
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc.z_neg]
-\end_layout
-
-\begin_layout LyX-Code
-bc_dof = [2]
-\end_layout
-
-\begin_layout LyX-Code
-label = face_zneg
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.label = Dirichlet BC on -z
-\end_layout
-
-\begin_layout Standard
-When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step01
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step01-displ"
-
-\end_inset
-
-.
-\end_layout
-
-\begin_layout Standard
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step01-displ.jpg
-	width 10cm
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Plain Layout
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement field for example step01 visualized using ParaView.
- The mesh has been distorted by the computed displacements (magnified by
- 500), and the vectors show the computed displacements.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step01-displ"
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Step02 - Dirichlet and Neumann Boundary Conditions
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step02.cfg
-\family default
- file defines a problem with Dirichlet (displacement) boundary conditions
- corresponding to zero x and y-displacements applied on the negative x-face
- and Neumann (traction) boundary conditions corresponding to normal compression
- and horizontal shear applied on the positive x-face.
- The bottom (negative z) boundary is held fixed in the z-direction.
- The problem is similar to example step01, except that 1 MPa of normal compressi
-on and 1 MPa of shear (in a left-lateral sense) are applied on the positive
- x-face, and the negative x-face is pinned in both the x and y-directions.
-\end_layout
-
-\begin_layout Standard
-For the boundary conditions, we must first change the boundary condition
- type for the positive x-face from the default Dirichlet to Neumann:
-\end_layout
-
-\begin_layout LyX-Code
-# +x face -- first change bc type to Neumann
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc]
-\end_layout
-
-\begin_layout LyX-Code
-x_pos = pylith.bc.Neumann 
-\end_layout
-
-\begin_layout Standard
-We use a 
-\family typewriter
-SimpleDB
-\family default
- to describe the traction boundary conditions.
- When applying traction boundary conditions over a surface, it is also necessary
- to specify integration information for the surface.
- Since this is a three-dimensional problem, the dimension of the surface
- is 2.
- Since the cells being used are trilinear hexahedra, the cell type is 
-\family typewriter
-FIATLagrange
-\family default
- and we use an integration order of 2.
- A lower integration order would not provide sufficient accuracy while a
- higher integration order would offer no benefit (while requiring more computati
-on time and storage):
-\end_layout
-
-\begin_layout LyX-Code
-# +x face
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc.x_pos]
-\end_layout
-
-\begin_layout LyX-Code
-label = face_xpos
-\end_layout
-
-\begin_layout LyX-Code
-db_initial = spatialdata.spatialdb.SimpleDB
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.label = Neumann BC on +x
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.iohandler.filename = spatialdb/tractions_axial_shear.spatialdb
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-# We must specify quadrature information for the cell faces.
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell = pylith.feassemble.FIATLagrange
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell.dimension = 2
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell.quad_order = 2 
-\end_layout
-
-\begin_layout Standard
-The boundary conditions on the negative x-face are simpler than they were
- in example step01 (zero displacements in the x and y-directions), so we
- can use the default 
-\family typewriter
-ZeroDispBC
-\family default
-:
-\end_layout
-
-\begin_layout LyX-Code
-# -x face
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.bc.x_neg]
-\end_layout
-
-\begin_layout LyX-Code
-bc_dof = [0, 1] 
-\end_layout
-
-\begin_layout LyX-Code
-label = face_xneg
-\end_layout
-
-\begin_layout LyX-Code
-db_initial.label = Dirichlet BC on -x 
-\end_layout
-
-\begin_layout Standard
-The boundary conditions on the negative z-face are supplied in the same
- manner as for example step01.
- When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step02
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step02-displ"
-
-\end_inset
-
-.
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step02-displ.jpg
-	lyxscale 50
-	width 10cm
-
-\end_inset
-
-
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement field for example step02 visualized using ParaView.
- The mesh has been distorted by the computed displacements (magnified by
- 500), and the vectors show the computed displacements.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step02-displ"
-
-\end_inset
-
-.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Subsubsection
-Step03 - Dirichlet Boundary Conditions with Kinematic Fault Slip
-\end_layout
-
-\begin_layout Standard
-The 
-\family typewriter
-step03.cfg
-\family default
- file describes a problem with Dirichlet (displacement) boundary conditions
- corresponding to zero x and y-displacements applied on the negative and
- positive x-faces and a vertical fault with a combination of left-lateral
- and updip motion.
- The left-lateral component of fault slip has a constant value of 2 m in
- the upper crust, and then decreases linearly to zero at the base of the
- model.
- The reverse slip component has a value of 0.25 m at the surface, and then
- decreases linearly to zero at 2 km depth.
-\end_layout
-
-\begin_layout Standard
-Due to the simplicity of the boundary conditions, we are able to use the
- default 
-\family typewriter
-ZeroDispBC
-\family default
- for the positive and negative x-faces, as well as the negative z-face.
- To use a fault, we must first define a fault interface.
- We do this by providing an array containing a single interface:
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent]
-\end_layout
-
-\begin_layout LyX-Code
-# Set interfaces to an array of 1 fault: 'fault'.
-\end_layout
-
-\begin_layout LyX-Code
-interfaces = [fault] 
-\end_layout
-
-\begin_layout Standard
-For this example we specify the fault slip, so we set the interface type
- to 
-\family typewriter
-FaultCohesiveKin
-\family default
-:
-\end_layout
-
-\begin_layout LyX-Code
-# Set the type of fault interface condition.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.interfaces]
-\end_layout
-
-\begin_layout LyX-Code
-fault = pylith.faults.FaultCohesiveKin 
-\end_layout
-
-\begin_layout Standard
-We must then identify the nodeset corresponding to the fault, and provide
- integration information for the fault surface:
-\end_layout
-
-\begin_layout LyX-Code
-# Set the parameters for the fault interface condition.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.timedependent.interfaces.fault]
-\end_layout
-
-\begin_layout LyX-Code
-# The label corresponds to the name of the nodeset in CUBIT.
-\end_layout
-
-\begin_layout LyX-Code
-label = fault
-\begin_inset Newline newline
-\end_inset
-
-
-\begin_inset Newline newline
-\end_inset
-
-
-\end_layout
-
-\begin_layout LyX-Code
-# We must define the quadrature information for fault cells.
-\end_layout
-
-\begin_layout LyX-Code
-# The fault cells are 2D (surface).
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell = pylith.feassemble.FIATLagrange
-\end_layout
-
-\begin_layout LyX-Code
-quadrature.cell.dimension = 2 
-\end_layout
-
-\begin_layout Standard
-We retain the default 
-\family typewriter
-StepSlipFn
-\family default
- since we want static fault slip.
- Finally, we use one 
-\family typewriter
-SimpleDB
-\family default
- to define the spatial variation of fault slip, and another 
-\family typewriter
-SimpleDB
-\family default
- to define the spatial variation in slip initiation times (the start time
- is 0.0 everywhere since this is a static problem):
-\end_layout
-
-\begin_layout LyX-Code
-# The slip time and final slip are defined in spatial databases.
- [pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
-\end_layout
-
-\begin_layout LyX-Code
-slip.iohandler.filename = spatialdb/finalslip.spatialdb
-\end_layout
-
-\begin_layout LyX-Code
-slip.query_type = linear
-\end_layout
-
-\begin_layout LyX-Code
-slip_time.iohandler.filename = spatialdb/sliptime.spatialdb 
-\end_layout
-
-\begin_layout Standard
-Since the problem now contains a fault, we can request that fault infomation
- is also output:
-\end_layout
-
-\begin_layout LyX-Code
-# Give basename for VTK fault output.
-\end_layout
-
-\begin_layout LyX-Code
-[pylithapp.problem.interfaces.fault.output]
-\end_layout
-
-\begin_layout LyX-Code
-writer.filename = output/step03-fault.vtk 
-\end_layout
-
-\begin_layout Standard
-This will result in two extra files being produced.
- The first file (
-\family typewriter
-step03-fault_info.vtk
-\family default
-) contains information such as the normal directions to the fault surface,
- the applied fault slip, and the fault slip times.
- The second file (
-\family typewriter
-step03-fault_t0000000.vtk
-\family default
-) contains the cumulative fault slip for the time step and the change in
- tractions on the fault surface due to the slip.
- When we have run the simulation, the output VTK files will be contained
- in 
-\family typewriter
-examples/3d/hex8/output
-\family default
- (all with a prefix of 
-\family typewriter
-step03
-\family default
-).
- Results using ParaView are shown in Figure 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "fig:step03-displ"
-
-\end_inset
-
-.
-\begin_inset Float figure
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\align center
-\begin_inset Graphics
-	filename figs/step03-displ.jpg
-	lyxscale 50
-	width 10cm
-
-\end_inset
-
-
-\begin_inset Caption
-
-\begin_layout Plain Layout
-Displacement field for example step03 visualized using ParaView.
- The mesh has been distorted by the computed displacements (magnified by
- 500), and the vectors show the computed displacements.
-\begin_inset CommandInset label
-LatexCommand label
-name "fig:step03-displ"
-
-\end_inset
-
-.
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\end_body
-\end_document
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\maintain_unincluded_children false
+\language english
+\language_package default
+\inputencoding latin1
+\fontencoding global
+\font_roman default
+\font_sans default
+\font_typewriter default
+\font_default_family default
+\use_non_tex_fonts false
+\font_sc false
+\font_osf false
+\font_sf_scale 100
+\font_tt_scale 100
+
+\graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
+\paperfontsize default
+\spacing single
+\use_hyperref false
+\papersize default
+\use_geometry true
+\use_amsmath 0
+\use_esint 0
+\use_mhchem 1
+\use_mathdots 1
+\cite_engine basic
+\use_bibtopic false
+\use_indices false
+\paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
+\leftmargin 1in
+\topmargin 1in
+\rightmargin 1in
+\bottommargin 2in
+\secnumdepth 3
+\tocdepth 3
+\paragraph_separation indent
+\paragraph_indentation default
+\quotes_language english
+\papercolumns 1
+\papersides 1
+\paperpagestyle default
+\tracking_changes false
+\output_changes false
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
+\end_header
+
+\begin_body
+
+\begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Tutorial-3d-hex8-static"
+
+\end_inset
+
+Static Examples
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this tutorial:
+\end_layout
+
+\begin_layout Itemize
+Static solution
+\end_layout
+
+\begin_layout Itemize
+VTK output
+\end_layout
+
+\begin_layout Itemize
+Dirichlet displacement boundary conditions
+\end_layout
+
+\begin_layout Itemize
+Neumann traction boundary conditions
+\end_layout
+
+\begin_layout Itemize
+ZeroDispDB spatial database
+\end_layout
+
+\begin_layout Itemize
+SimpleDB spatial database
+\end_layout
+
+\begin_layout Itemize
+UniformDB spatial database
+\end_layout
+
+\begin_layout Itemize
+Static fault rupture
+\end_layout
+
+\begin_layout Itemize
+Specifying more than one material
+\end_layout
+
+\begin_layout Itemize
+Linearly elastic isotropic material
+\end_layout
+
+\begin_layout Subsubsection
+Overview
+\end_layout
+
+\begin_layout Standard
+This set of examples describe the simplest class of problems for PyLith.
+ The problems are all purely elastic, and there is no time-dependence.
+ This set of elastostatic examples primarily demonstrates the application
+ of different types of boundary conditions in PyLith, as well as demonstrating
+ the use of a kinematic fault for a static problem.
+ All of the examples are contained in the directory 
+\family typewriter
+examples/3d/hex8
+\family default
+, and the corresponding 
+\family typewriter
+.cfg
+\family default
+ files are 
+\family typewriter
+step01.cfg
+\family default
+, 
+\family typewriter
+step02.cfg
+\family default
+, and 
+\family typewriter
+step03.cfg
+\family default
+.
+ Each example may be run as follows:
+\end_layout
+
+\begin_layout LyX-Code
+pylith stepXX.cfg
+\end_layout
+
+\begin_layout Standard
+This will cause PyLith to read the default parameters in 
+\family typewriter
+pylithapp.cfg
+\family default
+, and then override or augment them with the additional parameters in the
+ 
+\family typewriter
+stepXX.cfg
+\family default
+ file.
+ Each 
+\family typewriter
+.cfg
+\family default
+ file is extensively documented to provide detailed information on the various
+ parameters.
+\end_layout
+
+\begin_layout Subsubsection
+Step01 - Pure Dirichlet Boundary Conditions
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step01.cfg
+\family default
+ file defines a problem with pure Dirichlet (displacement) boundary conditions
+ corresponding to compression in the x-direction and shear in the y-direction.
+ The bottom (minimum z) boundary is held fixed in the z-direction.
+ On the positive and negative x-faces, compressional displacements of 1
+ m are applied in the x-direction and shear displacements yielding a left-latera
+l sense of shear are applied in the y-direction.
+ In this example and in subsequent examples we would like to output the
+ displacement solution over a subset of the domain corresponding to the
+ ground surface.
+ To do this, we first set the output to an array of two output managers
+ as follows:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.implicit]
+\end_layout
+
+\begin_layout LyX-Code
+# Set the output to an array of 2 output managers.
+\end_layout
+
+\begin_layout LyX-Code
+# We will output the solution over the domain and the ground surface.
+\end_layout
+
+\begin_layout LyX-Code
+output = [domain,subdomain]
+\end_layout
+
+\begin_layout Standard
+We then define the subdomain output manager to correspond to a subset of
+ the domain:
+\end_layout
+
+\begin_layout LyX-Code
+# Set subdomain component to OutputSolnSubset (boundary of the domain).
+\end_layout
+
+\begin_layout LyX-Code
+output.subdomain = pylith.meshio.OutputSolnSubset
+\end_layout
+
+\begin_layout Standard
+Later (in the output section at the end of the file), we specify the nodeset
+ that corresponds to the desired output:
+\end_layout
+
+\begin_layout LyX-Code
+# Give basename for VTK domain output of solution over ground surface.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.problem.formulation.output.subdomain]
+\end_layout
+
+\begin_layout LyX-Code
+# Name of nodeset for ground surface.
+\end_layout
+
+\begin_layout LyX-Code
+label = face_zpos
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = output/step01-groundsurf.vtk
+\end_layout
+
+\begin_layout Standard
+For the boundary conditions, we must describe which degrees of freedom are
+ being constrained (
+\family typewriter
+bc_dof
+\family default
+), we must provide a the label associated with the CUBIT nodeset associated
+ with the BC, and we must specify the type of spatial database is being
+ used to describe the boundary conditions.
+ For the x-faces, we use a 
+\family typewriter
+SimpleDB
+\family default
+ to provide the displacements on the x-faces:
+\end_layout
+
+\begin_layout LyX-Code
+# +x face
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc.x_pos]
+\end_layout
+
+\begin_layout LyX-Code
+bc_dof = [0, 1]
+\end_layout
+
+\begin_layout LyX-Code
+label = face_xpos
+\end_layout
+
+\begin_layout LyX-Code
+db_initial = spatialdata.spatialdb.SimpleDB
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.label = Dirichlet BC on +x
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.iohandler.filename = spatialdb/fixeddisp_axial_shear.spatialdb
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# -x face
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc.x_neg]
+\end_layout
+
+\begin_layout LyX-Code
+bc_dof = [0, 1]
+\end_layout
+
+\begin_layout LyX-Code
+label = face_xneg
+\end_layout
+
+\begin_layout LyX-Code
+db_initial = spatialdata.spatialdb.SimpleDB
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.label = Dirichlet BC on -x
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.iohandler.filename = spatialdb/fixeddisp_axial_shear.spatialdb
+\end_layout
+
+\begin_layout Standard
+For a 
+\family typewriter
+SimpleDB
+\family default
+, we must provide a filename.
+ The default spatial database for 
+\family typewriter
+db_initial
+\family default
+ is 
+\family typewriter
+ZeroDispBC
+\family default
+, which automatically applies zero displacements to all vertices in the
+ nodeset, and no filename is required (or needed).
+ This is what we use for the bottom of the mesh:
+\end_layout
+
+\begin_layout LyX-Code
+# -z face
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc.z_neg]
+\end_layout
+
+\begin_layout LyX-Code
+bc_dof = [2]
+\end_layout
+
+\begin_layout LyX-Code
+label = face_zneg
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.label = Dirichlet BC on -z
+\end_layout
+
+\begin_layout Standard
+When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step01
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step01-displ"
+
+\end_inset
+
+.
+\end_layout
+
+\begin_layout Standard
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step01-displ.jpg
+	width 10cm
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for example step01 visualized using ParaView.
+ The mesh has been distorted by the computed displacements (magnified by
+ 500), and the vectors show the computed displacements.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step01-displ"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Step02 - Dirichlet and Neumann Boundary Conditions
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step02.cfg
+\family default
+ file defines a problem with Dirichlet (displacement) boundary conditions
+ corresponding to zero x and y-displacements applied on the negative x-face
+ and Neumann (traction) boundary conditions corresponding to normal compression
+ and horizontal shear applied on the positive x-face.
+ The bottom (negative z) boundary is held fixed in the z-direction.
+ The problem is similar to example step01, except that 1 MPa of normal compressi
+on and 1 MPa of shear (in a left-lateral sense) are applied on the positive
+ x-face, and the negative x-face is pinned in both the x and y-directions.
+\end_layout
+
+\begin_layout Standard
+For the boundary conditions, we must first change the boundary condition
+ type for the positive x-face from the default Dirichlet to Neumann:
+\end_layout
+
+\begin_layout LyX-Code
+# +x face -- first change bc type to Neumann
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc]
+\end_layout
+
+\begin_layout LyX-Code
+x_pos = pylith.bc.Neumann 
+\end_layout
+
+\begin_layout Standard
+We use a 
+\family typewriter
+SimpleDB
+\family default
+ to describe the traction boundary conditions.
+ When applying traction boundary conditions over a surface, it is also necessary
+ to specify integration information for the surface.
+ Since this is a three-dimensional problem, the dimension of the surface
+ is 2.
+ Since the cells being used are trilinear hexahedra, the cell type is 
+\family typewriter
+FIATLagrange
+\family default
+ and we use an integration order of 2.
+ A lower integration order would not provide sufficient accuracy while a
+ higher integration order would offer no benefit (while requiring more computati
+on time and storage):
+\end_layout
+
+\begin_layout LyX-Code
+# +x face
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc.x_pos]
+\end_layout
+
+\begin_layout LyX-Code
+label = face_xpos
+\end_layout
+
+\begin_layout LyX-Code
+db_initial = spatialdata.spatialdb.SimpleDB
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.label = Neumann BC on +x
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.iohandler.filename = spatialdb/tractions_axial_shear.spatialdb
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# We must specify quadrature information for the cell faces.
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell = pylith.feassemble.FIATLagrange
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell.dimension = 2
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell.quad_order = 2 
+\end_layout
+
+\begin_layout Standard
+The boundary conditions on the negative x-face are simpler than they were
+ in example step01 (zero displacements in the x and y-directions), so we
+ can use the default 
+\family typewriter
+ZeroDispBC
+\family default
+:
+\end_layout
+
+\begin_layout LyX-Code
+# -x face
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.bc.x_neg]
+\end_layout
+
+\begin_layout LyX-Code
+bc_dof = [0, 1] 
+\end_layout
+
+\begin_layout LyX-Code
+label = face_xneg
+\end_layout
+
+\begin_layout LyX-Code
+db_initial.label = Dirichlet BC on -x 
+\end_layout
+
+\begin_layout Standard
+The boundary conditions on the negative z-face are supplied in the same
+ manner as for example step01.
+ When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step02
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step02-displ"
+
+\end_inset
+
+.
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step02-displ.jpg
+	lyxscale 50
+	width 10cm
+
+\end_inset
+
+
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for example step02 visualized using ParaView.
+ The mesh has been distorted by the computed displacements (magnified by
+ 500), and the vectors show the computed displacements.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step02-displ"
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Step03 - Dirichlet Boundary Conditions with Kinematic Fault Slip
+\end_layout
+
+\begin_layout Standard
+The 
+\family typewriter
+step03.cfg
+\family default
+ file describes a problem with Dirichlet (displacement) boundary conditions
+ corresponding to zero x and y-displacements applied on the negative and
+ positive x-faces and a vertical fault with a combination of left-lateral
+ and updip motion.
+ The left-lateral component of fault slip has a constant value of 2 m in
+ the upper crust, and then decreases linearly to zero at the base of the
+ model.
+ The reverse slip component has a value of 0.25 m at the surface, and then
+ decreases linearly to zero at 2 km depth.
+\end_layout
+
+\begin_layout Standard
+Due to the simplicity of the boundary conditions, we are able to use the
+ default 
+\family typewriter
+ZeroDispBC
+\family default
+ for the positive and negative x-faces, as well as the negative z-face.
+ To use a fault, we must first define a fault interface.
+ We do this by providing an array containing a single interface:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent]
+\end_layout
+
+\begin_layout LyX-Code
+# Set interfaces to an array of 1 fault: 'fault'.
+\end_layout
+
+\begin_layout LyX-Code
+interfaces = [fault] 
+\end_layout
+
+\begin_layout Standard
+For this example we specify the fault slip, so we set the interface type
+ to 
+\family typewriter
+FaultCohesiveKin
+\family default
+:
+\end_layout
+
+\begin_layout LyX-Code
+# Set the type of fault interface condition.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces]
+\end_layout
+
+\begin_layout LyX-Code
+fault = pylith.faults.FaultCohesiveKin 
+\end_layout
+
+\begin_layout Standard
+We must then identify the nodeset corresponding to the fault, and provide
+ integration information for the fault surface:
+\end_layout
+
+\begin_layout LyX-Code
+# Set the parameters for the fault interface condition.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault]
+\end_layout
+
+\begin_layout LyX-Code
+# The label corresponds to the name of the nodeset in CUBIT.
+\end_layout
+
+\begin_layout LyX-Code
+label = fault
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# We must define the quadrature information for fault cells.
+\end_layout
+
+\begin_layout LyX-Code
+# The fault cells are 2D (surface).
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell = pylith.feassemble.FIATLagrange
+\end_layout
+
+\begin_layout LyX-Code
+quadrature.cell.dimension = 2 
+\end_layout
+
+\begin_layout Standard
+We retain the default 
+\family typewriter
+StepSlipFn
+\family default
+ since we want static fault slip.
+ Finally, we use one 
+\family typewriter
+SimpleDB
+\family default
+ to define the spatial variation of fault slip, and another 
+\family typewriter
+SimpleDB
+\family default
+ to define the spatial variation in slip initiation times (the start time
+ is 0.0 everywhere since this is a static problem):
+\end_layout
+
+\begin_layout LyX-Code
+# The slip time and final slip are defined in spatial databases.
+\begin_inset Newline newline
+\end_inset
+
+[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+\begin_inset Newline newline
+\end_inset
+
+slip.iohandler.filename = spatialdb/finalslip.spatialdb
+\end_layout
+
+\begin_layout LyX-Code
+slip.query_type = linear
+\end_layout
+
+\begin_layout LyX-Code
+slip_time.iohandler.filename = spatialdb/sliptime.spatialdb 
+\end_layout
+
+\begin_layout Standard
+Since the problem now contains a fault, we can request that fault infomation
+ is also output:
+\end_layout
+
+\begin_layout LyX-Code
+# Give basename for VTK fault output.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.problem.interfaces.fault.output]
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = output/step03-fault.vtk 
+\end_layout
+
+\begin_layout Standard
+This will result in two extra files being produced.
+ The first file (
+\family typewriter
+step03-fault_info.vtk
+\family default
+) contains information such as the normal directions to the fault surface,
+ the applied fault slip, and the fault slip times.
+ The second file (
+\family typewriter
+step03-fault_t0000000.vtk
+\family default
+) contains the cumulative fault slip for the time step and the change in
+ tractions on the fault surface due to the slip.
+ When we have run the simulation, the output VTK files will be contained
+ in 
+\family typewriter
+examples/3d/hex8/output
+\family default
+ (all with a prefix of 
+\family typewriter
+step03
+\family default
+).
+ Results using ParaView are shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:step03-displ"
+
+\end_inset
+
+.
+\begin_inset Float figure
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Graphics
+	filename figs/step03-displ.jpg
+	lyxscale 50
+	width 10cm
+
+\end_inset
+
+
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field for example step03 visualized using ParaView.
+ The mesh has been distorted by the computed displacements (magnified by
+ 500), and the vectors show the computed displacements.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:step03-displ"
+
+\end_inset
+
+.
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/surfload/surfload.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/surfload/surfload.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dhex8/surfload/surfload.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -331,9 +331,9 @@
 \family default
  (all with a prefix of 
 \family typewriter
-step1
+step18
 \family default
-8).
+).
  Results using ParaView are shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -471,9 +471,9 @@
 \family default
  (all with a prefix of 
 \family typewriter
-step1
+step19
 \family default
-9).
+).
  Results using ParaView are shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -529,13 +529,10 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Stress field (zz-component) for example 
+Stress field (zz-component) for example step19 at t = 200 years visualized
+ using ParaView.
+ The stresses appear as four layers since we have used 
 \family typewriter
-step19
-\family default
- at t = 200 years visualized using ParaView.
- The stresses appear as 4 layers since we have used 
-\family typewriter
 CellFilterAvgMesh
 \family default
  for material output.

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dtet4/3dtet4.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dtet4/3dtet4.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/3dtet4/3dtet4.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -218,6 +218,10 @@
 \family default
 examples directory (
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 examples/3d/tet4
 \family default
 ), start LaGriT, and then type:
@@ -419,9 +423,9 @@
 \begin_layout Standard
 Since these examples use a mesh from LaGriT, we set the importer to 
 \family typewriter
-MeshIO
+MeshIOLagrit
 \family default
-Lagrit:
+:
 \end_layout
 
 \begin_layout LyX-Code
@@ -691,7 +695,11 @@
 \begin_layout Description
 pylithapp.problem.formulation.output.subdomain Gives the label of the nodeset
  defining the subdomain and gives the base filename for VTK output over
- the subdomain corresponding to the ground surface (
+ the subdomain corresponding to the ground surface 
+\begin_inset Newline linebreak
+\end_inset
+
+(
 \family typewriter
 step01-groundsurf.vtk
 \family default
@@ -745,36 +753,20 @@
 \begin_layout Standard
 The files containing common information (
 \family typewriter
-\size small
-tet4_1000m_binary.gmv
+tet4_1000m_binary.gmv, tet4_1000m_binary.pset, 
+\begin_inset Newline linebreak
+\end_inset
+
+pylithapp.cfg, mat_elastic.spatialdb, and mat_viscoelastic.spatialdb
 \family default
-, 
-\family typewriter
-tet4_1000m_binary.pset
-\family default
-, 
-\family typewriter
-pylithapp.cfg
-\family default
-, 
-\family typewriter
-mat_elastic.spatialdb
-\family default
-\size default
-, and 
-\family typewriter
-mat_viscoelastic.spatialdb
-\family default
 ) along with the problem-specific files (
 \family typewriter
-\size small
-step01.cfg
+step01.cfg 
 \family default
- and 
+and
 \family typewriter
-fixeddisp_shear.spatialdb
+ fixeddisp_shear.spatialdb
 \family default
-\size default
 ) provide a complete description of the problem, and we can then run this
  example by typing
 \end_layout
@@ -800,6 +792,10 @@
  mesh vertices.
  The second file is named 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 step01-statevars-elastic_t0000000.vtk
 \family default
 .
@@ -1576,7 +1572,11 @@
 \begin_layout Description
 pylithapp.problem.formulation.output.subdomain Gives the label of the nodeset
  defining the subdomain and gives the base filename for VTK output over
- the subdomain corresponding to the ground surface (
+ the subdomain corresponding to the ground surface 
+\begin_inset Newline linebreak
+\end_inset
+
+(
 \family typewriter
 step03-groundsurf.vtk
 \family default
@@ -1585,7 +1585,11 @@
 
 \begin_layout Description
 pylithapp.timedependent.interfaces.fault.output.writer Gives the base filename
- for cohesive cell output files (
+ for cohesive cell output files 
+\begin_inset Newline linebreak
+\end_inset
+
+(
 \family typewriter
 step03-fault.vtk
 \family default
@@ -1712,6 +1716,10 @@
  mesh vertices.
  The second file is named 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 step03-statevars-elastic_t0000000.vtk
 \family default
 .

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/greensfns2d/greensfns2d.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/greensfns2d/greensfns2d.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/greensfns2d/greensfns2d.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -902,9 +902,15 @@
 \end_layout
 
 \begin_layout LyX-Code
-../invert_slip.py --impulses=output/greensfns-fault.h5 --responses=output/greensfns-
-points.h5 --data=output/eqsim-points.h5 --penalty=penalty_params.txt --output=outpu
-t/slip_inverted.txt
+../invert_slip.py --impulses=output/greensfns-fault.h5
+\begin_inset Newline newline
+\end_inset
+
+--responses=output/greensfns-points.h5 --data=output/eqsim-points.h5
+\begin_inset Newline newline
+\end_inset
+
+--penalty=penalty_params.txt --output=output/slip_inverted.txt
 \end_layout
 
 \begin_layout Standard
@@ -935,6 +941,8 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 plot_invresults.py --solution=output/eqsim-fault.h5 --predicted=output/slip_invert
 ed.txt
 \end_layout

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/shearwave/hex8.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/shearwave/hex8.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/shearwave/hex8.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -74,7 +74,7 @@
 
 \end_inset
 
-3-D Bar Discretized with Hexahedra
+3D Bar Discretized with Hexahedra
 \end_layout
 
 \begin_layout Standard

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/subduction/subduction.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/subduction/subduction.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/subduction/subduction.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -1058,7 +1058,11 @@
  consistent with a coefficient of friction of 0.6.
  The 
 \family typewriter
-afterslip_tractions.spatialdb
+afterslip_tractions.
+\begin_inset Newline linebreak
+\end_inset
+
+spatialdb
 \family default
  file is provided, so you do not need to run the Python script 
 \family typewriter
@@ -1170,8 +1174,8 @@
 
 , which was created using ParaView, displays the magnitude of the displacement
  field with the original configuration.
- Slip occurs down-dip from the coseismic slip as well as in three areas with
- sharp gradients in slip, including the trench.
+ Slip occurs down-dip from the coseismic slip as well as in three areas
+ with sharp gradients in slip, including the trench.
  The location of the afterslip can be shifted by changing the spatial variation
  of the coseismic slip and background stress field.
 \end_layout

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twohex8/twohex8.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twohex8/twohex8.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twohex8/twohex8.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -237,54 +237,80 @@
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 [pylithapp.timedependent.materials]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 material = pylith.materials.MaxwellIsotropic3D
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
  
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 [pylithapp.timedependent.materials.material]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 label = viscoelastic material
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 id = 1
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
  
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db = spatialdata.spatialdb.UniformDB
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db.values = [vp,vs,density,viscosity]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 db.data = [5773.502691896258*m/s, 3333.333333333333*m/s, 2700.0*kg/m**3, 1.0e18*Pa*s]
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
  
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 quadrature.cell = pylith.feassemble.FIATLagrange
 \end_layout
 
 \begin_layout LyX-Code
+
+\size small
 quadrature.cell.dimension = 3
 \end_layout
 
@@ -763,28 +789,23 @@
 .
  The files containing common information (
 \family typewriter
+twohex8.mesh,
+\family default
 \size small
-twohex8.mesh
-\family default
-, 
+ 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
+
+\size default
 pylithapp.cfg
 \family default
-\size default
 ) along with the problem-specific files (
 \family typewriter
-\size small
-dislocation.cfg
+dislocation.cfg, dislocation_slip.spatialdb, dislocation_sliptime.spatialdb
 \family default
-, 
-\family typewriter
-dislocation_slip.spatialdb
-\family default
-, 
-\family typewriter
-dislocation_sliptime.spatialdb
-\family default
-\size default
 ) provide a complete description of the problem, and we can then run this
  example by typing
 \end_layout

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twoquad4/twoquad4.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twoquad4/twoquad4.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twoquad4/twoquad4.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -445,9 +445,9 @@
  left side of the mesh, defining which degrees of freedom are being constrained
  (y only), giving the label (
 \family typewriter
-x_
+x_pos
 \family default
-pos, defined in 
+, defined in 
 \family typewriter
 twoquad4.mesh
 \family default
@@ -680,6 +680,10 @@
 \family default
 , 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 dislocation_sliptime.spatialdb
 \family default
 \size default
@@ -695,6 +699,10 @@
 The addition of a fault results in two additional output files (as in the
  two triangle fault example), 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 dislocation-fault_t0000000.vtk
 \family default
  and 

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4/twotet4.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4/twotet4.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4/twotet4.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -470,18 +470,12 @@
 \family default
 ) along with the problem-specific files (
 \family typewriter
-\size small
-dislocation.cfg
-\family default
-, 
-\family typewriter
-dislocation_slip.spatialdb
-\family default
-, 
-\family typewriter
+dislocation.cfg, dislocation_slip.spatialdb, 
+\begin_inset Newline linebreak
+\end_inset
+
 dislocation_sliptime.spatialdb
 \family default
-\size default
 ) provide a complete description of the problem, and we can then run this
  example by typing
 \end_layout

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4-geoproj/twotet4-geoproj.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4-geoproj/twotet4-geoproj.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotet4-geoproj/twotet4-geoproj.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -463,6 +463,10 @@
  Note that we vary the amount of fault slip for each vertex with this example,
  as described in 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 dislocation_slip.spatialdb
 \family default
 .
@@ -497,18 +501,8 @@
 \family default
 ) along with the problem-specific files (
 \family typewriter
-\size small
-dislocation.cfg
+dislocation.cfg, dislocation_slip.spatialdb, dislocation_sliptime.spatialdb
 \family default
-, 
-\family typewriter
-dislocation_slip.spatialdb
-\family default
-, 
-\family typewriter
-dislocation_sliptime.spatialdb
-\family default
-\size default
 ) provide a complete description of the problem, and we can then run this
  example by typing
 \end_layout

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotri3/twotri3.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotri3/twotri3.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/tutorials/twotri3/twotri3.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -360,7 +360,11 @@
 
 \begin_layout Description
 pylithapp.timedependent.materials.material.output Gives the base filename for
- state variable output files (
+ state variable output files 
+\begin_inset Newline linebreak
+\end_inset
+
+(
 \family typewriter
 axialdisp-statevars.vtk
 \family default
@@ -562,9 +566,9 @@
  left side of the mesh, defining which degrees of freedom are being constrained
  (y only), giving the label (
 \family typewriter
-x_
+x_pos
 \family default
-pos, defined in 
+, defined in 
 \family typewriter
 twotri3.mesh
 \family default
@@ -719,7 +723,11 @@
 
 \begin_layout Description
 pylithapp.timedependent.interfaces.fault.output.writer Gives the base filename
- for cohesive cell output files (
+ for cohesive cell output files 
+\begin_inset Newline linebreak
+\end_inset
+
+(
 \family typewriter
 dislocation-fault.vtk
 \family default
@@ -783,6 +791,10 @@
 \family default
 , 
 \family typewriter
+
+\begin_inset Newline linebreak
+\end_inset
+
 dislocation_sliptime.spatialdb
 \family default
 \size default

Modified: short/3D/PyLith/branches/v1.7-stable/doc/userguide/userguide.lyx
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/doc/userguide/userguide.lyx	2012-06-27 22:42:44 UTC (rev 20423)
+++ short/3D/PyLith/branches/v1.7-stable/doc/userguide/userguide.lyx	2012-06-28 01:14:20 UTC (rev 20424)
@@ -475,9 +475,14 @@
 Ben-Zion, Y.
  and J.R.
  Rice (1997), Dynamic simulations of slip on a smooth fault in an elastic
- solid, J.
- Geophys.
- Res., 102, 17,771–17,784.
+ solid, 
+\emph on
+Journal of Geophysical Research
+\shape italic
+\emph default
+, 102
+\shape default
+, 17,771–17,784.
 \end_layout
 
 \begin_layout Bibliography
@@ -562,9 +567,9 @@
 Bull.
  Seismol.
  Soc.
- Am.
+ Am., 96
 \shape default
-, 96, 2118-2130.
+, 2118-2130.
 \end_layout
 
 \begin_layout Bibliography
@@ -584,7 +589,11 @@
 \shape italic
 Journal of Geophysical Research
 \shape default
-, 113, B09317, doi:10.1029/2007JB005553.
+,
+\shape italic
+ 113
+\shape default
+, B09317, doi:10.1029/2007JB005553.
 \end_layout
 
 \begin_layout Bibliography
@@ -620,9 +629,13 @@
  and X.X.
  Ni (2001), Numerical instability at the edge of a dynamic fracture, 
 \emph on
-Geophysical Journal International, 
+Geophysical Journal International,
+\shape italic
+ 
 \emph default
-147(3), 1-6, doi: 10.1046/j.1365-246x.2001.01567.x.
+147
+\shape default
+(3), 1-6, doi: 10.1046/j.1365-246x.2001.01567.x.
 \end_layout
 
 \begin_layout Bibliography



More information about the CIG-COMMITS mailing list