[cig-commits] r16836 - in short/3D/PyLith/trunk/doc/userguide/tutorials: . shearwave

brad at geodynamics.org brad at geodynamics.org
Sun May 30 13:56:35 PDT 2010


Author: brad
Date: 2010-05-30 13:56:34 -0700 (Sun, 30 May 2010)
New Revision: 16836

Added:
   short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/figs/
   short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/hex8.lyx
   short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/quad4.lyx
   short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tet4.lyx
Modified:
   short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tri3.lyx
   short/3D/PyLith/trunk/doc/userguide/tutorials/tutorials.lyx
Log:
More work on shear wave tutorials.

Added: short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/hex8.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/hex8.lyx	                        (rev 0)
+++ short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/hex8.lyx	2010-05-30 20:56:34 UTC (rev 16836)
@@ -0,0 +1,259 @@
+#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
+\lyxformat 345
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\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
+\use_hyperref false
+\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 CommandInset label
+LatexCommand label
+name "sec:tutorial:shearwave:hex8"
+
+\end_inset
+
+3-D Bar Discretized with Hexahedra
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this tutorial:
+\end_layout
+
+\begin_layout Itemize
+Dynamic solution
+\end_layout
+
+\begin_layout Itemize
+CUBIT mesh format
+\end_layout
+
+\begin_layout Itemize
+Absorbing dampers boundary conditions
+\end_layout
+
+\begin_layout Itemize
+Kinematic fault interface conditions
+\end_layout
+
+\begin_layout Itemize
+Elastic isotropic linearly elastic material
+\end_layout
+
+\begin_layout Itemize
+VTK output
+\end_layout
+
+\begin_layout Itemize
+Linear hexahedral cells
+\end_layout
+
+\begin_layout Itemize
+SimpleDB spatial database
+\end_layout
+
+\begin_layout Itemize
+ZeroDispDB spatial database
+\end_layout
+
+\begin_layout Subsection
+Mesh Generation
+\end_layout
+
+\begin_layout Standard
+The mesh is a simple rectangular prism 8 km by 400 m by 400m (Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:shearwave:hex8:mesh"
+
+\end_inset
+
+).
+ This mesh could be generated via a simple script, but it is even easier
+ to generate this mesh using CUBIT.
+ We provide documented CUBIT journal files in 
+\family typewriter
+examples/bar_shearwave/hex8.
+
+\family default
+ We first create the geometry, mesh the domain using hexahedral cells, and
+ then create blocks and nodesets associated with the materials and boundary
+ conditions.
+\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 45
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Mesh composed of hexahedral cells generated by CUBIT used for the example
+ problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:hex8:mesh"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Simulation Parameters
+\end_layout
+
+\begin_layout Standard
+The simulation parameters match those in the tri3 and tet4 examples.
+ As in the tet4 example, we both the longiudinal degree of freedom and the
+ out-of-plane tranverse degree of freedom.
+ Using eight-point quadrature permits use of a time step of 1/20 s, which
+ is slightly larger than the time step of 1/30 s used in the tri3 and tet4
+ simulations.
+ All of the parameters are set in the pylithapp.cfg file.
+ To run the problem, simply run PyLith without any command line arguments:
+\end_layout
+
+\begin_layout LyX-Code
+pylith
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory.
+ The output includes the displacement and velocity fields over the entire
+ domain at every other time step (0.10 s), the slip and change in traction
+ vectors on the fault surface in along-strike and normal directions at every
+ other time step (0.10 s), and the strain and stress tensors for each cell
+ at every 20th time step (1.0 s).
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:hex8:deform"
+
+\end_inset
+
+, which was generated using ParaView.
+\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/hex8deform30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:hex8:deform"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Added: short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/quad4.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/quad4.lyx	                        (rev 0)
+++ short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/quad4.lyx	2010-05-30 20:56:34 UTC (rev 16836)
@@ -0,0 +1,652 @@
+#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
+\lyxformat 345
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\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
+\use_hyperref false
+\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 CommandInset label
+LatexCommand label
+name "sec:tutorial:shearwave:quad4"
+
+\end_inset
+
+3-D Bar Discretized with Quadrilaterals
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this tutorial:
+\end_layout
+
+\begin_layout Itemize
+Dynamic solution
+\end_layout
+
+\begin_layout Itemize
+CUBIT mesh format
+\end_layout
+
+\begin_layout Itemize
+Absorbing dampers boundary conditions
+\end_layout
+
+\begin_layout Itemize
+Kinematic fault interface conditions
+\end_layout
+
+\begin_layout Itemize
+Dynamic fault interface conditions
+\end_layout
+
+\begin_layout Itemize
+Plane strain linearly elastic material
+\end_layout
+
+\begin_layout Itemize
+VTK output
+\end_layout
+
+\begin_layout Itemize
+Linear quadrilateral cells
+\end_layout
+
+\begin_layout Itemize
+SimpleDB spatial database
+\end_layout
+
+\begin_layout Itemize
+ZeroDispDB spatial database
+\end_layout
+
+\begin_layout Itemize
+UniformDB spatial database
+\end_layout
+
+\begin_layout Subsection
+Mesh Generation
+\end_layout
+
+\begin_layout Standard
+The mesh is a simple rectangular prism 8 km by 400 m by 400m (Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:shearwave:quad4:mesh"
+
+\end_inset
+
+).
+ This mesh could be generated via a simple script, but it is even easier
+ to generate this mesh using CUBIT.
+ We provide documented CUBIT journal files in 
+\family typewriter
+examples/bar_shearwave/quad4.
+
+\family default
+ We first create the geometry, mesh the domain using quadrilateral cells,
+ and then create blocks and nodesets associated with the materials and boundary
+ conditions.
+\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/quad4_mesh.jpg
+	lyxscale 50
+	scale 45
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Mesh composed of hexahedral cells generated by CUBIT used for the example
+ problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:quad4:mesh"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Kinematic Fault
+\end_layout
+
+\begin_layout Standard
+The simulation parameters match those in the tri3, tet4, and hex8 examples.
+ Using four-point quadrature permits use of a time step of 1/20 s, which
+ is slightly larger than the time step of 1/30 s used in the tri3 and tet4
+ simulations.
+ In contrast to the tri3, tet4, and hex8 shear wave examples which only
+ contained a single simulation in a directory, in this example we consider
+ several different simulations.
+ Consequently, we separate the parameters into multiple 
+\family typewriter
+.cfg
+\family default
+ files.
+ The parameters common parameters are placed in 
+\family typewriter
+pylithapp.cfg
+\family default
+ with the parameters specific to the kinematic fault example in 
+\family typewriter
+kinematic.cfg
+\family default
+.
+ To run the problem, simply run PyLith via:
+\end_layout
+
+\begin_layout LyX-Code
+pylith kinematic.cfg
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory with the prefix 
+\family typewriter
+kinematic
+\family default
+.
+ The output includes the displacement field over the entire domain at every
+ other time step (0.10 s), the slip and traction vectors on the fault surface
+ in along-strike and normal directions at every other time step (0.10 s),
+ and the strain and stress tensors for each cell at every 20th time step
+ (1.0 s).
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:quad4:kinematic"
+
+\end_inset
+
+, which was generated using ParaView.
+\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/quad4kinematic30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:quad4:kinematic"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Dynamic Fault
+\end_layout
+
+\begin_layout Standard
+In this set of examples we replace the kinematic fault interface with the
+ dynamic fault interface, resulting in fault slip controlled by a fault-constitu
+tive model.
+ Because this is a dynamic simulation we want the generated shear wave to
+ continue to be absorbed at the ends of the bar, so we drive the fault by
+ imposing initial tractions directly on the fault surface rather than through
+ deformation within the bar.
+ We employ a UniformDB object to specify 6.1 MPa of right-lateral shear and
+ 10.0 MPa of normal compression for the initial fault tractions.
+ The parameters common to the dynamic fault simulations are in 
+\family typewriter
+dynamic.cfg
+\family default
+.
+ We use the explicit time-stepping with a lumped Jacobian matrix.
+ We also request that the fault output include slip, slip rate, and traction
+ fields:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault.output]
+\end_layout
+
+\begin_layout LyX-Code
+vertex_data_fields = [slip,slip_rate,traction]
+\end_layout
+
+\begin_layout Subsubsection
+Dynamic Fault with Static Friction
+\end_layout
+
+\begin_layout Standard
+The parameters specific to this example are related to the use of the static
+ friction fault constitutive model (see Section ??).
+ We set the fault constitutive model via
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault]
+\end_layout
+
+\begin_layout LyX-Code
+friction = pylith.friction.StaticFriction
+\end_layout
+
+\begin_layout Standard
+and use a UniformDB to set the static friction parameters.
+ We use a coefficient of friction of 0.6 and no cohesion (0 MPa).
+ The parameters specific to this example are in dynamic_
+\family typewriter
+staticfriction.cfg
+\family default
+, so we run the problem via:
+\end_layout
+
+\begin_layout LyX-Code
+pylith dynamic.cfg dynamic_staticfriction.cfg
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory with the prefix 
+\family typewriter
+staticfriction
+\family default
+.
+ The output includes the displacement and velocity fields over the entire
+ domain at every other time step (0.10 s), the slip, slip rate, and traction
+ vectors on the fault surface in along-strike and normal directions at every
+ other time step (0.10 s), and the strain and stress tensors for each cell
+ at every 20th time step (1.0 s).
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:quad4:staticfriction"
+
+\end_inset
+
+, which was generated using ParaView.
+ The steady-state solution is a constant slip rate of ?? m/s, a uniform
+ shear strain of ?? in the bar with uniform, constant velocities in the
+ y-direction of +?? m/s and -?? m/s on the -x and +x sides of the fault,
+ respectively.
+\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/quad4staticfriction30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:quad4:staticfriction"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Dynamic Fault with Slip-Weakening Friction
+\end_layout
+
+\begin_layout Standard
+The parameters specific to this example are related to the use of the slip-weake
+ning friction fault constitutive model (see Section ??).
+ We set the fault constitutive model via
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault]
+\end_layout
+
+\begin_layout LyX-Code
+friction = pylith.friction.SlipWeakening
+\end_layout
+
+\begin_layout Standard
+and use a UniformDB to set the slip-weakening friction parameters.
+ We use a static coefficient of friction of 0.6, a dynamic coefficient of
+ friction of 0.5, a slip-weakening parameter of 0.2 m, and no cohesion (0
+ MPa).
+ The fault constitutive model is associated with the fault, so we can append
+ the fault constitutive model parameters to the vertex information fields
+ and the fault constitutive model state variables to the vertex data fields:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault.output]
+\end_layout
+
+\begin_layout LyX-Code
+vertex_info_fields = [strike_dir,normal_dir,initial_traction,static_coefficient,
+ dynamic_coefficient,slip_weakening_parameter,cohesion]
+\end_layout
+
+\begin_layout LyX-Code
+vertex_data_fields = [slip,traction,cumulative_slip,previous_slip]
+\end_layout
+
+\begin_layout Standard
+The parameters specific to this example are in dynamic_
+\family typewriter
+slipweakening.cfg
+\family default
+, so we run the problem via:
+\end_layout
+
+\begin_layout LyX-Code
+pylith dynamic.cfg dynamic_slipweakening.cfg
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory with the prefix 
+\family typewriter
+slipweakening
+\family default
+.
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:quad4:slipweakening"
+
+\end_inset
+
+, which was generated using ParaView.
+ The steady-state solution is a constant slip rate of ?? m/s, a uniform
+ shear strain of ?? in the bar with uniform, constant velocities in the
+ y-direction of +?? m/s and -?? m/s on the -x and +x sides of the fault,
+ respectively.
+\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/quad4slipweakening30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:quad4:slipweakening"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsubsection
+Dynamic Fault with Rate-State Friction
+\end_layout
+
+\begin_layout Standard
+The parameters specific to this example are related to the use of the rate-
+ and state-friction fault constitutive model (see Section ??).
+ The evolution of the state variable uses the ageing law.
+ We set the fault constitutive model via
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.interfaces.fault]
+\end_layout
+
+\begin_layout LyX-Code
+friction = pylith.friction.RateStateAgeing
+\end_layout
+
+\begin_layout Standard
+and use a UniformDB to set the static friction parameters.
+ We use a reference coefficient of friction of 0.6, reference slip rate of
+ 1.0e-6 m/s, characterisitc slip distance of 0.037 m, coefficients a and b
+ of 0.0125 and 0.0172, and no cohesion (0 MPa).
+ The parameters specific to this example are in dynamic_
+\family typewriter
+ratestateageing.cfg
+\family default
+, so we run the problem via:
+\end_layout
+
+\begin_layout LyX-Code
+pylith dynamic.cfg dynamic_ratestateageing.cfg
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory with the prefix 
+\family typewriter
+ratestateageing
+\family default
+.
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:quad4:ratestateageing"
+
+\end_inset
+
+, which was generated using ParaView.
+ The steady-state solution is a constant slip rate of ?? m/s, a uniform
+ shear strain of ?? in the bar with uniform, constant velocities in the
+ y-direction of +?? m/s and -?? m/s on the -x and +x sides of the fault,
+ respectively.
+\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/quad4ratestateageing30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:quad4:ratestateageing"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Added: short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tet4.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tet4.lyx	                        (rev 0)
+++ short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tet4.lyx	2010-05-30 20:56:34 UTC (rev 16836)
@@ -0,0 +1,259 @@
+#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
+\lyxformat 345
+\begin_document
+\begin_header
+\textclass book
+\begin_preamble
+
+\end_preamble
+\use_default_options false
+\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
+\use_hyperref false
+\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 CommandInset label
+LatexCommand label
+name "sec:tutorial:shearwave:tet4"
+
+\end_inset
+
+3-D Bar Discretized with Tetrahedra
+\end_layout
+
+\begin_layout Standard
+PyLith features discussed in this tutorial:
+\end_layout
+
+\begin_layout Itemize
+Dynamic solution
+\end_layout
+
+\begin_layout Itemize
+LaGriT mesh format
+\end_layout
+
+\begin_layout Itemize
+Absorbing dampers boundary conditions
+\end_layout
+
+\begin_layout Itemize
+Kinematic fault interface conditions
+\end_layout
+
+\begin_layout Itemize
+Elastic isotropic linearly elastic material
+\end_layout
+
+\begin_layout Itemize
+VTK output
+\end_layout
+
+\begin_layout Itemize
+Linear tetrahedral cells
+\end_layout
+
+\begin_layout Itemize
+SimpleDB spatial database
+\end_layout
+
+\begin_layout Itemize
+ZeroDispDB spatial database
+\end_layout
+
+\begin_layout Subsection
+Mesh Generation
+\end_layout
+
+\begin_layout Standard
+The mesh is a simple rectangular prism 8 km by 400 m by 400m (Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:shearwave:tet4:mesh"
+
+\end_inset
+
+).
+ This mesh could be generated via a simple script, but it is even easier
+ to generate this mesh using LaGriT.
+ We provide documented LaGriT files in 
+\family typewriter
+examples/bar_shearwave/tet4.
+
+\family default
+ We first create the geometry, regions, mesh the domain using tetrahedral
+ cells, and then create point sets associated with boundary conditions.
+\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/tet4_mesh.jpg
+	lyxscale 50
+	scale 45
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Mesh composed of tetrahedral cells generated by LaGriT used for the example
+ problem.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:tet4:mesh"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Simulation Parameters
+\end_layout
+
+\begin_layout Standard
+The simulation parameters match those in the tri3 example with the exception
+ of using the LaGriT mesh reader and switching the from a two-dimensional
+ problem to a three-dimensional problem.
+ In addition to fixing the longitudinal degree of freedom, we also fix the
+ out-of-plane tranverse degree of freedom.
+ Because the fault separates two material regions in LaGriT, we use two
+ materials in PyLith.
+ All of the parameters are set in the pylithapp.cfg file.
+ To run the problem, simply run PyLith without any command line arguments:
+\end_layout
+
+\begin_layout LyX-Code
+pylith
+\end_layout
+
+\begin_layout Standard
+The VTK files will be written to the 
+\family typewriter
+output
+\family default
+ directory.
+ The output includes the displacement and velocity fields over the entire
+ domain at every 3rd time step (0.10 s), the slip and change in traction
+ vectors on the fault surface in along-strike and normal directions at every
+ 3rd time step (0.10 s), and the strain and stress tensors for each cell
+ at every 30th time step (1.0 s).
+ If the problem ran correctly, you should be able to generate a figure such
+ as Figure 
+\begin_inset CommandInset ref
+LatexCommand vref
+reference "fig:shearwave:tet4:deform"
+
+\end_inset
+
+, which was generated using ParaView.
+\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/tet4deform30.jpg
+	lyxscale 50
+	scale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:tet4:deform"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_body
+\end_document

Modified: short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tri3.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tri3.lyx	2010-05-30 04:14:47 UTC (rev 16835)
+++ short/3D/PyLith/trunk/doc/userguide/tutorials/shearwave/tri3.lyx	2010-05-30 20:56:34 UTC (rev 16836)
@@ -52,7 +52,7 @@
 \begin_layout Section
 \begin_inset CommandInset label
 LatexCommand label
-name "sec:Tutorial-shearwave-tri3"
+name "sec:tutorial:shearwave:tri3"
 
 \end_inset
 
@@ -107,7 +107,7 @@
 The mesh is a simple rectangle 8 km by 400 m (Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "fig:shearwave-tri3-mesh"
+reference "fig:shearwave:tet4:mesh"
 
 \end_inset
 
@@ -122,7 +122,14 @@
  We first create the geometry, mesh the domain using triangular cells, and
  then create blocks and nodesets to associated the cells and vertices with
  materials and boundary conditions.
- See Section ?? for more information on using CUBIT to generate meshes.
+ See Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Tutorial-3d-hex8"
+
+\end_inset
+
+ for more information on using CUBIT to generate meshes.
 \end_layout
 
 \begin_layout Standard
@@ -153,7 +160,7 @@
  problem.
 \begin_inset CommandInset label
 LatexCommand label
-name "fig:shearwave:tri3:mesh-1"
+name "fig:shearwave:tri3:mesh"
 
 \end_inset
 
@@ -170,30 +177,17 @@
 
 \end_layout
 
-\begin_layout Standard
-This tutorial is the simplest 2D example of a quasi-static finite element
- problem (a simpler problem would consist of a 1D bar).
- It is a mesh composed of two linear triangles subject to displacement boundary
- conditions, assuming plane-strain linear elastic behavior.
- Due to the simple geometry of the problem, the mesh may be constructed
- by hand, using PyLith mesh ASCII format.
- In this tutorial, we will walk through the steps necessary to construct,
- run, and view three problems that use the same mesh.
- In addition to this manual, each of the files for the example problem includes
- extensive comments.
-\end_layout
-
 \begin_layout Subsection
 Simulation Parameters
 \end_layout
 
 \begin_layout Standard
 All of the parameters are set in the pylithapp.cfg file.
- The structure of the file follows the same pattern as the other examples.
- We first turn on some journal information so that we can view the progress
- of the simulation followed by the parameters for the mesh reader, problem,
- materials, boundary conditions, fault, and output.
- We change the time stepping formulation from the default value of implicit
+ The structure of the file follows the same pattern as in all of the other
+ examples.
+ We set the parameters for the journal information followed by the mesh
+ reader, problem, materials, boundary conditions, fault, and output.
+ We change the time-stepping formulation from the default value of implicit
  time stepping to explicit time stepping by setting the formulation object
  via
 \end_layout
@@ -203,44 +197,34 @@
 \end_layout
 
 \begin_layout Standard
-and can change to explicit time stepping with a lumped Jacobian matrix (rather
- than the full Jacobian matrix) by changing 
-\family typewriter
-Explicit
-\family default
- to 
-\family typewriter
-ExplicitLumped
-\family default
-.
- Using the 
-\family typewriter
-ExplicitLumped
-\family default
- object automatically triggers lumping of the Jacobian cell matrices and
- assembly into a vector rather than a sparse matrix.
+We can switch to explicit time stepping with a lumped Jacobian matrix (rather
+ than the full Jacobian matrix) by changing Explicit to ExplicitLumped.
+ Using the ExplicitLumped object automatically triggers lumping of the Jacobian
+ cell matrices and assembly into a vector rather than a sparse matrix.
  Lumping the Jacobian decouples the equations, so we can use a very simple
  direct solver.
- Selection of this simple solver is also triggered by the selection of the
+ Use of this simple solver is also triggered by the selection of the ExplicitLum
+ped object.
  
-\family typewriter
-ExplicitLumped
-\family default
- object.
- 
 \end_layout
 
 \begin_layout Standard
 For dynamic problems we use the NondimElasticDynamic object to nondimensionalize
  the equations.
  This object provides scales associated with wave propagation for nondimensional
-ization, including the period of the wave, the shear wave speed, and mass
+ization, including the minimum wave period, the shear wave speed, and mass
  density.
- In this example we use the default values.
+ In this example we use the default values of a minimum wave period of 1.0
+ s, a shear wave speed of 3 km/s, and a mass density of 3000 kg/m
+\begin_inset Formula $^{3}$
+\end_inset
+
+.
  We simulation 12.0 s of motion with a time step of 1/30 s.
- This time step must follow the CFL condition; that is, the time step must
- be smaller than the time it takes the P wave to propagate across the shortest
- edge of a cell.
+ This time step must follow the Courant–Friedrichs–Lewy condition; that
+ is, the time step must be smaller than the time it takes the P wave to
+ propagate across the shortest edge of a cell.
+ 
 \end_layout
 
 \begin_layout Standard
@@ -248,31 +232,20 @@
  bar and a Dirichlet boundary condition to prevent longitudinal motion.
  Because we cannot overlap the Dirichlet BC with the fault, we use the nodeset
  associated with all vertices except the fault.
+ For the output over the entire domain, we request both displacement and
+ velocity fields:
 \end_layout
 
+\begin_layout LyX-Code
+[pylithapp.timedependent.output]
+\end_layout
+
+\begin_layout LyX-Code
+vertex_data_fields = [displacement,velocity]
+\end_layout
+
 \begin_layout Standard
-The files containing common information (
-\family typewriter
-twotri3.mesh
-\family default
-, 
-\family typewriter
-pylithapp.cfg
-\family default
-, 
-\family typewriter
-matprops.spatialdb
-\family default
-) along with the problem-specific files (
-\family typewriter
-axialdisp.cfg
-\family default
-, 
-\family typewriter
-axialdisp.spatialdb
-\family default
-) provide a complete description of the problem, and we can then run this
- example by typing
+To run the problem, simply run PyLith without any command line arguments:
 \end_layout
 
 \begin_layout LyX-Code
@@ -280,59 +253,21 @@
 \end_layout
 
 \begin_layout Standard
-Once the problem has run, three files will be produced.
- The first file is named 
+The VTK files will be written to the 
 \family typewriter
-axialdisp_t0000000.vtk
+output
 \family default
-.
- The 
-\family typewriter
-t0000000
-\family default
- indicates that the output is for the first (and only) time step, corresponding
- to an elastic solution.
- This file contains mesh information as well as displacement values at the
- mesh vertices.
- The second file is named 
-\family typewriter
-axialdisp-statevars_t0000000.vtk
-\family default
-.
- This file contains the state variables for each cell.
- The default fields are the total strain and stress fields.
- Since the cells are linear triangles, there is a single quadrature point
- for each cell and thus a single set of stress and strain values for each
- cell.
- The final file (
-\family typewriter
-axialdisp-statevars_info.vtk
-\family default
-) gives the material properties used for the problem.
- Since we have not specified which properties to write, the default properties
- (
-\family typewriter
-mu
-\family default
-, 
-\family typewriter
-lambda
-\family default
-, 
-\family typewriter
-density
-\family default
-) are written.
- All of the 
-\family typewriter
-.vtk
-\family default
- files may be used with a number of visualization packages.
+ directory.
+ The output includes the displacement and velocity fields over the entire
+ domain at every 3rd time step (0.10 s), the slip and change in traction
+ vectors on the fault surface in along-strike and normal directions at every
+ 3rd time step (0.10 s), and the strain and stress tensors for each cell
+ at every 30th time step (1.0 s).
  If the problem ran correctly, you should be able to generate a figure such
  as Figure 
 \begin_inset CommandInset ref
 LatexCommand vref
-reference "fig:twotri3-axial"
+reference "fig:shearwave:tet4:deform"
 
 \end_inset
 
@@ -350,7 +285,7 @@
 \begin_layout Plain Layout
 \align center
 \begin_inset Graphics
-	filename figs/axialdisp.jpg
+	filename figs/tri3deform30.jpg
 	lyxscale 50
 	scale 50
 
@@ -363,11 +298,11 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-Color contours and vectors of displacement for the axial displacement example
- using a mesh composed of two linear triangular cells.
+Displacement field in the bar at 3.0 s.
+ Deformation has been exaggerated by a factor of 200.
 \begin_inset CommandInset label
 LatexCommand label
-name "fig:twotri3-axial"
+name "fig:shearwave:tri3:deform"
 
 \end_inset
 

Modified: short/3D/PyLith/trunk/doc/userguide/tutorials/tutorials.lyx
===================================================================
--- short/3D/PyLith/trunk/doc/userguide/tutorials/tutorials.lyx	2010-05-30 04:14:47 UTC (rev 16835)
+++ short/3D/PyLith/trunk/doc/userguide/tutorials/tutorials.lyx	2010-05-30 20:56:34 UTC (rev 16836)
@@ -90,7 +90,7 @@
 \color none
  For more complex tutorials, you will also need either CUBIT 
 \begin_inset Flex URL
-status collapsed
+status open
 
 \begin_layout Plain Layout
 
@@ -223,7 +223,7 @@
 \end_layout
 
 \begin_layout Section
-Shear Wave in a Square Bar
+Shear Wave in a Bar
 \end_layout
 
 \begin_layout Standard
@@ -237,23 +237,68 @@
  The discretization size is 200 m in all cases.
  The slip time histories follows the integral of Brune's far-field time
  function with slip initiating at 0.1 s, a left-lateral final slip of 1.0
- m, a rise time of 2.0 s.
- The shear wave speed in the bar is 1 km/s, so the shear wave reaches each
+ m, and a rise time of 2.0 s.
+ The shear wave speed in the bar is 1.0 km/s, so the shear wave reaches each
  end of the bar at 4.1 s.
  Absorbing boundaries on the ends of the bar prevent significant reflections.
  The bar comes to a rest with a static offset.
 \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/bar.eps
+	lyxscale 50
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Domain for shear wave propagation in a 8.0 km bar with 400 m cross-section.
+ We generate a shear wave via slip on a fault located in the middle of the
+ bar while limiting deformation to the transverse direction.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:shearwave:domain"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
 For the bar discretized with quad4 cells we also consider the fault subjected
  to frictional sliding controlled by static friction, linear slip-weakening
- friction, or rate- and state-friction.
+ friction, and rate- and state-friction.
  We use initial tractions applied to the fault to drive the dislocation
  and generate the shear wave.
  Because the fault tractions are constant in time, they continue to drive
  the motion even after the shear wave reaches the absorbing boundary, leading
- to a steady state solution with uniform shear deformation in the bar with
- a constant slip rate dislocation.
+ to a steady state solution with uniform shear deformation in the bar and
+ a constant slip rate on the fault.
  
 \end_layout
 
@@ -265,6 +310,27 @@
 \end_inset
 
 
+\begin_inset CommandInset include
+LatexCommand input
+filename "shearwave/tet4.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "shearwave/hex8.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
+filename "shearwave/quad4.lyx"
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Section
@@ -277,7 +343,7 @@
 examples
 \family default
  directory also contains an example of using PyLith to compute Green's functions
- associated with fault slip at points on a fault surface in the 
+ associated with slip at points on a fault surface in the 
 \family typewriter
 greensfns
 \family default
@@ -285,9 +351,28 @@
  The files associated with this example contain comments to explain how
  the simulation is setup.
  Once you understand the examples described in detail in the previous sections
- of this chapter, you should have little trouble understanding these additional
- ones.
+ of this chapter, you should have little trouble understanding this additional
+ one.
 \end_layout
 
+\begin_layout Standard
+The CIG subversion software repository 
+\begin_inset Flex URL
+status collapsed
+
+\begin_layout Plain Layout
+
+http://geodynamics.org/svn/cig/short/3D/PyLith/benchmarks/trunk
+\end_layout
+
+\end_inset
+
+ contains input files for a number of community benchmarks.
+ Most of the benchmarks include complete sets of PyLith input files.
+ Some of the dynamic benchmarks do not include the mesh files because they
+ are so large; instead they include the CUBIT journal files that can be
+ used to generate the meshes.
+\end_layout
+
 \end_body
 \end_document



More information about the CIG-COMMITS mailing list