[cig-commits] r16768 - in short/3D/PyLith/trunk: . doc/releasenotes examples/bar_shearwave examples/bar_shearwave/hex8 examples/bar_shearwave/quad4 examples/bar_shearwave/tet4 examples/bar_shearwave/tri3

brad at geodynamics.org brad at geodynamics.org
Sun May 23 15:01:58 PDT 2010


Author: brad
Date: 2010-05-23 15:01:58 -0700 (Sun, 23 May 2010)
New Revision: 16768

Modified:
   short/3D/PyLith/trunk/README
   short/3D/PyLith/trunk/TODO
   short/3D/PyLith/trunk/doc/releasenotes/announce_v1.5.0.txt
   short/3D/PyLith/trunk/examples/bar_shearwave/README
   short/3D/PyLith/trunk/examples/bar_shearwave/hex8/pylithapp.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/README
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/dynamicfault.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/mesh_quad4_200m.jou
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/pylithapp.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_kinematicslip.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_ratestateageing.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_slipweakening.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_staticfriction.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_sliding.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_stick.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/tet4/pylithapp.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/tri3/bar_tri3_200m.exo
   short/3D/PyLith/trunk/examples/bar_shearwave/tri3/geometry.jou
   short/3D/PyLith/trunk/examples/bar_shearwave/tri3/mesh_tri3_200m.jou
   short/3D/PyLith/trunk/examples/bar_shearwave/tri3/pylithapp.cfg
Log:
Fixed errors in setting parameters for bar shear wave examples.

Modified: short/3D/PyLith/trunk/README
===================================================================
--- short/3D/PyLith/trunk/README	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/README	2010-05-23 22:01:58 UTC (rev 16768)
@@ -133,6 +133,17 @@
     and faults. Users can specify to use nodeset names (default
     behavior) or ids.
 
+  * Velocity and slip rate as output fields
+
+    Velocity (domain and subdomain) and slip rate (fault) fields are
+    can be requested as output fields. The fields are computed using
+    the time-stepping algorithm and alleviates the need to compute
+    them via post-processing.
+
+  * Dimensionless values in spatial databases no longer need
+    artificial dimensions. Values without dimensions are understood by
+    the parser as dimensionless quantities.
+
   * Bug fixes
 
     - Updating state variables did not retrieve physical properties

Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/TODO	2010-05-23 22:01:58 UTC (rev 16768)
@@ -96,9 +96,6 @@
    16. Gravity w/prestress
    17. Gravity w/small strain
 
-  bar_shearwave
-    Add more comments to .cfg files and redo README.
-
   meshgeneration
 
 

Modified: short/3D/PyLith/trunk/doc/releasenotes/announce_v1.5.0.txt
===================================================================
--- short/3D/PyLith/trunk/doc/releasenotes/announce_v1.5.0.txt	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/doc/releasenotes/announce_v1.5.0.txt	2010-05-23 22:01:58 UTC (rev 16768)
@@ -78,6 +78,17 @@
     and faults. Users can specify to use nodeset names (default
     behavior) or ids.
 
+  * Velocity and slip rate as output fields
+
+    Velocity (domain and subdomain) and slip rate (fault) fields are
+    can be requested as output fields. The fields are computed using
+    the time-stepping algorithm and alleviates the need to compute
+    them via post-processing.
+
+  * Dimensionless values in spatial databases no longer need
+    artificial dimensions. Values without dimensions are understood by
+    the parser as dimensionless quantities.
+
   * Bug fixes
 
     - Updating state variables did not retrieve physical properties

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/README
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/README	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/README	2010-05-23 22:01:58 UTC (rev 16768)
@@ -10,7 +10,9 @@
 
   pylith
 
-in any of the subdirectories.
+in the tri3, tet4, or hex8 subdirectories. The quad4 subdirectory also
+contains some additional dynamic examples, so the problem is run by
+entering "pylith shearwave_kinematicslip.cfg".
 
 
 Subdirectories
@@ -20,8 +22,10 @@
   - tet4: Mesh with tetrahedral cells
   - quad4: Mesh with quadrilateral cells
 
-Each of the subdirectories contains the files listed below (along with
-other files for the mesh).
+Each of the tri3, tet4, and hex8 subdirectories contains the files
+listed below (along with other files for the mesh). The files in the
+quad4 subdirectory are named differently (see the README in the quad4
+subdirectory for more information).
 
   - pylithapp.cfg: Parameter settings for the shear wave dislocation problem
   - matprops.spatialdb: Material database of physical properties
@@ -30,4 +34,3 @@
     peak slip rate
   - shearwave_sliptime.spatialdb: Spatial database with values for the
     slip initiation time
-

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/hex8/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/hex8/pylithapp.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/hex8/pylithapp.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -71,7 +71,7 @@
 # Label for material
 label = Elastic material
 
-# Nodeset id from CUBIT
+# Block id from CUBIT
 id = 1
 
 # Spatial database with physical properties for elastic material
@@ -89,8 +89,8 @@
 [pylithapp.timedependent.bc.x_pos]
 # Absorbing boundary condition on +x face of bar
 
-# Nodeset id from CUBIT
-label = 11
+# Nodeset name from CUBIT
+label = face_xpos
 
 # Specify label and filename for spatial database with physical properties
 db.label = Absorbing BC +x
@@ -105,8 +105,8 @@
 [pylithapp.timedependent.bc.x_neg]
 # Absorbing boundary condition on -x face of bar
 
-# Nodeset id from CUBIT
-label = 12
+# Nodeset name from CUBIT
+label = face_xneg
 
 # Specify label and filename for spatial database with physical properties
 db.label = Absorbing BC -x
@@ -124,8 +124,8 @@
 # Pin x and z degrees of freedom
 bc_dof = [0, 2]
 
-# Nodeset id from CUBIT
-label = 13
+# Nodeset name from CUBIT
+label = vertices_nofault
 
 # ----------------------------------------------------------------------
 # faults
@@ -146,8 +146,8 @@
 # Material id
 id = 100
 
-# Nodeset id from CUBIT
-label = 10
+# Nodeset name from CUBIT
+label = fault
 
 # Specify the basis functions and quadrature:
 # 2-D Lagrange cell in 3-D space with 2nd order quadrature

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/README
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/README	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/README	2010-05-23 22:01:58 UTC (rev 16768)
@@ -1,18 +1,59 @@
-The bar is discretized with quadrilateral cells.
+The bar is discretized with quadrilateral cells. Detailed descriptions
+of the problems are in the .cfg files associated with each example. In
+each example the output (VTK files) are written to the output
+directory.
 
-Files associated with the example problem:
+Example problems
 
+  * Kinematic fault slip (same as problem in tri3, tet4, and hex8
+    subdirectories)
+
+  * Static problem with fault friction without slip
+
+  * Static problem with fault friction with slip
+
+  * Dynamic problem with static friction fault constitutive model
+
+  * Dynamic problem with linear slip-weakening fault constitutive model
+
+  * Dynamic problem with rate- and state-friction fault constitutive model
+
+
+Files common to all example problems
+
   - geometry.jou: CUBIT journal file defining the geometry of the mesh
   - mesh_quad4_200m.jou: CUBIT journal file for meshing the problem
-  - pylithapp.cfg: Parameter settings for the shear wave dislocation problem
+  - pylithapp.cfg: Parameter settings common to all example problems
   - matprops.spatialdb: Material database of physical properties
   - bar_quad4_200m.exo: Exodus file with mesh generated by CUBIT
-  - shearwave_slip.spatialdb: Spatial database with values for final slip
-  - shearwave_sliprate.spatialdb: Spatial database with values for the
-    peak slip rate
-  - shearwave_sliptime.spatialdb: Spatial database with values for the
-    slip initiation time
 
-To run the problem, enter
+Files associated with the example problems:
 
-  pylith
+  + Kinematic fault slip
+    - shearwave_kinematicslip.cfg: Parameters for simulation
+    - kinematic_risetime.spatialdb: Spatial database for slip rise time
+    - kinematic_slip.spatialdb: Spatial database for final slip
+    - kinematic_sliptime.spatialdb: Spatial database for slip initiation time 
+
+  + Static problem with fault friction without slip
+
+    - static_stick.cfg: Parameters for simulation
+
+  + Static problem with fault friction with slip
+
+    - static_sliding.cfg: Parameters for simulation
+
+  + Dynamic problem with static friction fault constitutive model
+
+    - dynamicfault.cfg: Parameters common to dynamic friction problems
+    - shearwave_staticfriction.cfg: Parameters for simulation 
+
+  + Dynamic problem with linear slip-weakening fault constitutive model
+
+    - dynamicfault.cfg: Parameters common to dynamic friction problems
+    - shearwave_slipweakening.cfg: Parameters for simulation 
+
+  + Dynamic problem with rate- and state-friction fault constitutive model
+
+    - dynamicfault.cfg: Parameters common to dynamic friction problems
+    - shearwave_ratestateageing.cfg: Parameters for simulation 

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/dynamicfault.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/dynamicfault.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/dynamicfault.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -8,6 +8,7 @@
 # ----------------------------------------------------------------------
 # journal
 # ----------------------------------------------------------------------
+# Turn on progress for the dynamic fault.
 [pylithapp.journal.info]
 faultcohesivedyn = 1
 
@@ -23,13 +24,14 @@
 # boundary conditions
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.bc]
-# Change the DirichletPoints BC to the AbsorbingDampers BC
+# Change the default Dirichlet BC to the AbsorbingDampers BC
 x_pos = pylith.bc.AbsorbingDampers
 x_neg = pylith.bc.AbsorbingDampers
 
 [pylithapp.timedependent.bc.x_pos]
 # Absorbing BC on +x face of bar
 
+# Name of nodeset in CUBIT
 label = face_xpos
 
 # Specify label and filename for spatial database with physical properties
@@ -45,6 +47,7 @@
 [pylithapp.timedependent.bc.x_neg]
 # Absorbing BC on -x face of bar
 
+# Name of nodeset in CUBIT
 label = face_xneg
 
 # Specify label and filename for spatial database with physical properties
@@ -65,21 +68,6 @@
 fault = pylith.faults.FaultCohesiveDyn
 
 # ----------------------------------------------------------------------
-# PETSc
-# ----------------------------------------------------------------------
-[pylithapp.petsc]
-
-# Friction sensitivity solve
-friction_pc_type = asm
-friction_sub_pc_factor_shift_type = nonzero
-friction_ksp_max_it = 25
-friction_ksp_gmres_restart = 30
-# Uncomment to view details of friction sensitivity solve.
-#friction_ksp_monitor = true
-#friction_ksp_view = true
-friction_ksp_converged_reason = true
-
-# ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.interfaces.fault.output]

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/mesh_quad4_200m.jou
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/mesh_quad4_200m.jou	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/mesh_quad4_200m.jou	2010-05-23 22:01:58 UTC (rev 16768)
@@ -1,12 +1,3 @@
-## /tools/common/cubit-10.2/bin/clarox
-## Cubit Version 10.2
-## Cubit Build 24
-## Revised 12/15/2006 16:09:40 MST
-## Running 06/18/2007 10:26:50 AM
-## Command Options:
-## -warning = On
-## -information = On
-
 # ----------------------------------------------------------------------
 # Generate geometry
 # ----------------------------------------------------------------------
@@ -61,4 +52,3 @@
 # Export exodus file
 # ----------------------------------------------------------------------
 export mesh "bar_quad4_200m.exo" dimension 2 overwrite
-

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/pylithapp.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/pylithapp.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -42,6 +42,7 @@
 # problem
 # ----------------------------------------------------------------------
 [pylithapp.timedependent]
+# Set the spatial dimension of the problem.
 dimension = 2
 
 # Change to an explicit time stepping formulation.  We use explicit
@@ -63,6 +64,7 @@
 materials = [elastic]
 
 [pylithapp.timedependent.formulation.time_step]
+# Set the total time of the simulation and the time step.
 total_time = 12.0*s
 dt = 0.05*s
 
@@ -70,6 +72,7 @@
 # materials
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.materials]
+# Use elastic plane strain bulk constitutive model.
 elastic = pylith.materials.ElasticPlaneStrain
 
 [pylithapp.timedependent.materials.elastic]

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_kinematicslip.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_kinematicslip.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_kinematicslip.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,9 +2,21 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Impose 1.0 m of left-lateral slip at time 0.1 s with slip rate
+# following Brune's far-field time function. The rise time (95% of the
+# final slip) is 2.0 s.
+#
+# The fault slip causes a shear wave to propagate down the bar. The
+# shear wave is absorbed at the lateral ends of the bar using the
+# absorbing dampers boundary condition.
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for an explicit
 # time-stepping problem using a fault with kinematically-specified
@@ -12,12 +24,11 @@
 #
 # To run the simulation:
 # pylith shearwave_kinematicslip.cfg
-#
-# Output will be directed to the directory output.
 
 # ----------------------------------------------------------------------
 # journal
 # ----------------------------------------------------------------------
+# Turn on progress for the kinematic fault.
 [pylithapp.journal.info]
 faultcohesivekin = 1
 
@@ -25,7 +36,6 @@
 # problem
 # ----------------------------------------------------------------------
 [pylithapp.timedependent]
-dimension = 2
 
 # Uncomment the line below to switch to explicit time-stepping with a
 # lumped Jacobian matrix.

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_ratestateageing.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_ratestateageing.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_ratestateageing.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,9 +2,19 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Use constant initial tractions on the fault to drive fault slip
+# subject to rate- and state-friction on the fault. Deformation
+# propagates to the edges of the bar where it is absorbed using
+# absorbing dampers boundary conditions. The steady state solution is
+# a constant slip rate on the fault with uniform strain in the bar.
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for an explicit
 # time-stepping problem using a dynamic fault interface condition with
@@ -20,18 +30,31 @@
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.interfaces.fault]
 
+# Specify the initial tractions on the fault using a uniform DB.
+#  shear: 6.1 MPa (right-lateral)
+#  normal 10 MPa (compressive)
 db_initial_tractions = spatialdata.spatialdb.UniformDB
 db_initial_tractions.label = Initial fault tractions
 db_initial_tractions.values = [traction-shear,traction-normal]
 db_initial_tractions.data = [-6.1*MPa, -10.0*MPa]
 
+# Use rate- and state-friction with the ageing law for evolution of
+# the state variable.
 friction = pylith.friction.RateStateAgeing
 
+# Set the friction model parameters.
+#  reference coefficient of friction: 0.6
+#  reference slip rate: 1.0e-06 m/s
+#  slip weakening parameter: 0.037 m
+#  a: 0.0125
+#  b: 0.0172
+#  cohesion: 0 Pa
 friction.db_properties = spatialdata.spatialdb.UniformDB
 friction.db_properties.label = Rate State Ageing
 friction.db_properties.values = [reference-friction-coefficient,reference-slip-rate,characteristic-slip-distance,constitutive-parameter-a,constitutive-parameter-b,cohesion]
-friction.db_properties.data = [0.6,0.000001*m/s,0.0370*m,0.0125,0.0172,0.0*Pa]
+friction.db_properties.data = [0.6,1.0e-6*m/s,0.0370*m,0.0125,0.0172,0.0*Pa]
 
+# Set spatial database for the initial value of the state variable.
 friction.db_initial_state = spatialdata.spatialdb.UniformDB
 friction.db_initial_state.label = Rate State Ageing State
 friction.db_initial_state.values = [state-variable]

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_slipweakening.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_slipweakening.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_slipweakening.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,9 +2,19 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Use constant initial tractions on the fault to drive fault slip
+# subject to linear slip-weakening friction on the fault. Deformation
+# propagates to the edges of the bar where it is absorbed using
+# absorbing dampers boundary conditions. The steady state solution is
+# a constant slip rate on the fault with uniform strain in the bar.
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for an explicit
 # time-stepping problem using a dynamic fault interface condition with
@@ -20,13 +30,22 @@
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.interfaces.fault]
 
+# Specify the initial tractions on the fault using a uniform DB.
+#  shear: 6.1 MPa (right-lateral)
+#  normal 10 MPa (compressive)
 db_initial_tractions = spatialdata.spatialdb.UniformDB
 db_initial_tractions.label = Initial fault tractions
 db_initial_tractions.values = [traction-shear,traction-normal]
 db_initial_tractions.data = [-6.1*MPa, -10.0*MPa]
 
+# Use slip-weakening friction
 friction = pylith.friction.SlipWeakening
 
+# Set the slip-weakening friction model parameters.
+#  static coefficient of friction: 0.6
+#  dynamic coefficient of friction: 0.5
+#  slip-weakening parameter: 0.2 m
+#  cohesion: 0 Pa
 friction.db_properties = spatialdata.spatialdb.UniformDB
 friction.db_properties.label = Slip weakening
 friction.db_properties.values = [static-coefficient,dynamic-coefficient,slip-weakening-parameter,cohesion]

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_staticfriction.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_staticfriction.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave_staticfriction.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,9 +2,19 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Use constant initial tractions on the fault to drive fault slip
+# subject to static friction on the fault. Deformation propagates to
+# the edges of the bar where it is absorbed using absorbing dampers
+# boundary conditions. The steady state solution is a constant slip
+# rate on the fault with uniform strain in the bar.
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for an explicit
 # time-stepping problem using a dynamic fault interface condition with
@@ -12,21 +22,26 @@
 #
 # To run the simulation:
 # pylith dynamicfault.cfg shearwave_staticfriction.cfg
-#
-# Output will be directed to the directory output.
 
 # ----------------------------------------------------------------------
 # faults
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.interfaces.fault]
 
+# Specify the initial tractions on the fault using a uniform DB.
+#  shear: 6.1 MPa (right-lateral)
+#  normal 10 MPa (compressive)
 db_initial_tractions = spatialdata.spatialdb.UniformDB
 db_initial_tractions.label = Initial fault tractions
 db_initial_tractions.values = [traction-shear,traction-normal]
 db_initial_tractions.data = [-6.1*MPa, -10.0*MPa]
 
+# Use static friction
 friction = pylith.friction.StaticFriction
 
+# Set the static friction model parameters.
+#  static coefficient of friction: 0.6
+#  cohesion: 0 Pa
 friction.db_properties = spatialdata.spatialdb.UniformDB
 friction.db_properties.label = Static friction
 friction.db_properties.values = [friction-coefficient,cohesion]

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_sliding.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_sliding.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_sliding.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,21 +2,37 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Impose Dirichlet BC on the lateral ends of the bar to create uniform
+# shear. Friction on the fault controlled by a static friction fault
+# constitutive model is insufficient to keep the falt locked, so slip
+# occurs.
+
+# This problem differs significantly from most real applications
+# involving fault slip, because the deformation is uniformly
+# distributed. As a result, when computing the fault slip associated
+# with the fault constitutive model imposed limits on fault shear
+# tractions, a few hundred iterations are needed in the nonlinear
+# solver. In most real applications only about 10 iterations are
+# needed for convergence.
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for a static problem
 # with fault slip controlled by a fault constitutive model.
 #
 # To run the simulation:
 # pylith static_sliding.cfg
-#
-# Output will be directed to the directory output.
 
 # ----------------------------------------------------------------------
 # journal
 # ----------------------------------------------------------------------
+# Turn on progress for the dynamic fault.
 [pylithapp.journal.info]
 faultcohesivedyn = 1
 
@@ -30,10 +46,12 @@
 formulation = pylith.problems.Implicit
 formulation.solver = pylith.problems.SolverNonlinear
 
-# Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', and 'y_pos'.
+# Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', and
+# 'all_nofault'.
 bc = [x_pos,x_neg,all_nofault]
 
 [pylithapp.timedependent.formulation.time_step]
+# Switch to a static simulation.
 total_time = 0.0*s
 
 # ----------------------------------------------------------------------
@@ -47,44 +65,62 @@
 [pylithapp.timedependent.bc.x_pos]
 # Dirichlet BC on +x face of bar
 
+# Name of nodeset in CUBIT.
 label = face_xpos
+
+# Pin the y-dof.
 bc_dof = [1]
 
+# Use a uniform DB to impose the Dirichlet BC. Impose 320 m of
+# displacement in the y direction.
 db_initial = spatialdata.spatialdb.UniformDB
 db_initial.label = Dirichlet BC +x edge
 db_initial.values = [displacement-x,displacement-y]
 db_initial.data = [0.0*m,320.0*m]
 
 [pylithapp.timedependent.bc.x_neg]
-# Dirichlet BC on -x face of bar
+# Dirichlet BC on -x face of bar. Use the default (zero displacement) values.
 
+# Name of nodeset in CUBIT
 label = face_xneg
+
+# Pin the y-dof.
 bc_dof = [1]
 
 # ----------------------------------------------------------------------
 # faults
 # ----------------------------------------------------------------------x
-# Provide information on the fault (interface).
+[pylithapp.timedependent.interfaces]
+# Change fault to dynamic fault interface.
+fault = pylith.faults.FaultCohesiveDyn
+
 [pylithapp.timedependent.interfaces.fault]
 
+# Impose initial compressive normal tractions of -100 MPa. The initial
+# shear traction is zero.
 db_initial_tractions = spatialdata.spatialdb.UniformDB
 db_initial_tractions.label = Initial fault tractions
 db_initial_tractions.values = [traction-shear,traction-normal]
 db_initial_tractions.data = [0.0*MPa, -100.0*MPa]
 
+# Use the static friction model.
 friction = pylith.friction.StaticFriction
 
+# Set static friction model parameters using a uniform DB. Set the
+# static coefficient of friction to 0.6 and cohesion to 0.0 Pa.
 friction.db_properties = spatialdata.spatialdb.UniformDB
 friction.db_properties.label = Static friction
 friction.db_properties.values = [friction-coefficient,cohesion]
-friction.db_properties.data = [0.6*m,0.0*Pa]
+friction.db_properties.data = [0.6,0.0*Pa]
 
 # ----------------------------------------------------------------------
 # PETSc
 # ----------------------------------------------------------------------
 [pylithapp.petsc]
 
-# Friction sensitivity solve
+# Friction sensitivity solve used to compute the increment in slip
+# associated with changes in the Lagrange multiplier imposed by the
+# fault constitutive model.
 friction_pc_type = asm
 friction_sub_pc_factor_shift_type = nonzero
 friction_ksp_max_it = 25

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_stick.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_stick.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/static_stick.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -2,21 +2,28 @@
 [pylithapp]
 
 # ----------------------------------------------------------------------
-# RUNNING THE SIMULATON
+# PROBLEM DESCRIPTION
 # ----------------------------------------------------------------------
 
+# Impose Dirichlet BC on the lateral ends of the bar to create uniform
+# shear. Friction on the fault controlled by a static friction fault
+# constitutive model is sufficient to keep the falt locked (no slip).
+
+# ----------------------------------------------------------------------
+# RUNNING THE SIMULATION
+# ----------------------------------------------------------------------
+
 # This is not a self-contained simulation configuration file. This
 # file only specifies the specific parameters for a static problem
 # with a locked fault controlled by a fault constitutive model.
 #
 # To run the simulation:
-# pylith static-stick.cfg
-#
-# Output will be directed to the directory output.
+# pylith static_stick.cfg
 
 # ----------------------------------------------------------------------
 # journal
 # ----------------------------------------------------------------------
+# Turn on progress for the dynamic fault.
 [pylithapp.journal.info]
 faultcohesivedyn = 1
 
@@ -30,10 +37,12 @@
 formulation = pylith.problems.Implicit
 formulation.solver = pylith.problems.SolverNonlinear
 
-# Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', and 'y_pos'.
+# Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', and
+# 'all_nofault'.
 bc = [x_pos,x_neg,all_nofault]
 
 [pylithapp.timedependent.formulation.time_step]
+# Switch to a static simulation.
 total_time = 0.0*s
 
 # ----------------------------------------------------------------------
@@ -47,18 +56,26 @@
 [pylithapp.timedependent.bc.x_pos]
 # Dirichlet BC on +x face of bar
 
+# Name of nodeset in CUBIT.
 label = face_xpos
+
+# Pin the y-dof.
 bc_dof = [1]
 
+# Use a uniform DB to impose the Dirichlet BC. Impose 100 m of
+# displacement in the y direction.
 db_initial = spatialdata.spatialdb.UniformDB
 db_initial.label = Dirichlet BC +x edge
-db_initial.values = [displacement-x,displacement-y]
-db_initial.data = [0.0*m,100.0*m]
+db_initial.values = [displacement-y]
+db_initial.data = [100.0*m]
 
 [pylithapp.timedependent.bc.x_neg]
-# Dirichlet BC on -x face of bar
+# Dirichlet BC on -x face of bar. Use the default (zero displacement) values.
 
+# Name of nodeset in CUBIT.
 label = face_xneg
+
+# Pin the y-dof.
 bc_dof = [1]
 
 # ----------------------------------------------------------------------
@@ -70,24 +87,34 @@
 
 [pylithapp.timedependent.interfaces.fault]
 
+# Impose initial compressive normal tractions of -100 MPa. The initial
+# shear traction is zero.
 db_initial_tractions = spatialdata.spatialdb.UniformDB
 db_initial_tractions.label = Initial fault tractions
 db_initial_tractions.values = [traction-shear,traction-normal]
 db_initial_tractions.data = [0.0*MPa, -100.0*MPa]
 
+# Use the static friction model.
 friction = pylith.friction.StaticFriction
 
+# Set static friction model parameters using a uniform DB. Set the
+# static coefficient of friction to 0.6 and cohesion to 0.0 Pa.
 friction.db_properties = spatialdata.spatialdb.UniformDB
 friction.db_properties.label = Static friction
 friction.db_properties.values = [friction-coefficient,cohesion]
-friction.db_properties.data = [0.6*m,0.0*Pa]
+friction.db_properties.data = [0.6,0.0*Pa]
 
 # ----------------------------------------------------------------------
 # PETSc
 # ----------------------------------------------------------------------
 [pylithapp.petsc]
 
-# Friction sensitivity solve
+# Friction sensitivity solve used to compute the increment in slip
+# associated with changes in the Lagrange multiplier imposed by the
+# fault constitutive model. In this problem the fault remains locked,
+# so the fault constitutive model does not impose any changes in the
+# Lagrange multipliers, so the friction sensitivity solve will
+# converge in the first iteration.
 friction_pc_type = asm
 friction_sub_pc_factor_shift_type = nonzero
 friction_ksp_max_it = 25

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tet4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tet4/pylithapp.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tet4/pylithapp.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -42,7 +42,12 @@
 
 # Change to an explicit time stepping formulation
 formulation = pylith.problems.Explicit
+
+# Uncomment next line to use lumped formulation.
 #formulation = pylith.problems.ExplicitLumped
+
+# Uncomment next line to use optimized lumped formulation and change
+# the quadrature order of the bulk material to 1.
 #formulation = pylith.problems.ExplicitLumpedTet4
 
 # Nondimensionalize problem using wave propagation parameters.

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tri3/bar_tri3_200m.exo
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tri3/geometry.jou
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tri3/geometry.jou	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tri3/geometry.jou	2010-05-23 22:01:58 UTC (rev 16768)
@@ -26,11 +26,12 @@
 # ----------------------------------------------------------------------
 
 # Create fault (yz plane) at x = 0.0
-split surface 8 across location position 0 -200 0 location position 0 200 0
-curve 21 name "fault_surface"
+split surface 7 across location position 0 -200 0 location position 0 200 0
+curve 17 name "fault_surface"
 
 # ----------------------------------------------------------------------
 # Imprint all volumes, merging surfaces
 # ----------------------------------------------------------------------
 imprint all
 merge all
+

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tri3/mesh_tri3_200m.jou
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tri3/mesh_tri3_200m.jou	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tri3/mesh_tri3_200m.jou	2010-05-23 22:01:58 UTC (rev 16768)
@@ -20,7 +20,7 @@
 # ----------------------------------------------------------------------
 # Set the meshing scheme
 # ----------------------------------------------------------------------
-surface 9 10 scheme trimesh
+surface 8 9 scheme trimesh
 
 # ----------------------------------------------------------------------
 # Generate the mesh
@@ -30,7 +30,7 @@
 # ----------------------------------------------------------------------
 # Create blocks for materials
 # ----------------------------------------------------------------------
-block 1 surface 9 10
+block 1 surface 8 9
 block 1 name "elastic"
 
 # ----------------------------------------------------------------------
@@ -43,14 +43,14 @@
 # ----------------------------------------------------------------------
 # Create nodeset for +x face
 # ----------------------------------------------------------------------
-group "face_xpos" add node in curve 18
+group "face_xpos" add node in curve 14
 nodeset 11 group face_xpos
 nodeset 11 name "face xpos"
 
 # ----------------------------------------------------------------------
 # Create nodeset for -x face
 # ----------------------------------------------------------------------
-group "face_xneg" add node in curve 20
+group "face_xneg" add node in curve 16
 nodeset 12 group face_xneg
 nodeset 12 name "face xneg"
 
@@ -66,3 +66,4 @@
 # Export exodus file
 # ----------------------------------------------------------------------
 export mesh "bar_tri3_200m.exo" dimension 2 overwrite
+

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tri3/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tri3/pylithapp.cfg	2010-05-23 16:34:51 UTC (rev 16767)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tri3/pylithapp.cfg	2010-05-23 22:01:58 UTC (rev 16768)
@@ -75,7 +75,7 @@
 # Label for material
 label = Elastic material
 
-# Nodeset id from CUBIT
+# Block id from CUBIT
 id = 1
 
 # Spatial database with physical properties for elastic material
@@ -93,8 +93,8 @@
 [pylithapp.timedependent.bc.x_pos]
 # Absorbing boundary condition on +x face of bar
 
-# Nodeset id from CUBIT
-label = 11
+# Nodeset name from CUBIT
+label = face_xpos
 
 # Specify label and filename for spatial database with physical properties
 db.label = Absorbing BC +x
@@ -109,8 +109,8 @@
 [pylithapp.timedependent.bc.x_neg]
 # Absorbing boundary condition on -x face of bar
 
-# Nodeset id from CUBIT
-label = 12
+# Nodeset name from CUBIT
+label = face_xneg
 
 # Specify label and filename for spatial database with physical properties
 db.label = Absorbing BC -x
@@ -128,8 +128,8 @@
 # Pin x and z degrees of freedom
 bc_dof = [0]
 
-# Nodeset id from CUBIT
-label = 13
+# Nodeset name from CUBIT
+label = vertices_nofault
 
 # ----------------------------------------------------------------------
 # faults
@@ -150,8 +150,8 @@
 # Material id
 id = 100
 
-# Nodeset id from CUBIT
-label = 10
+# Nodeset name from CUBIT
+label = fault
 
 # Specify the basis functions and quadrature:
 # 1-D simplex cell in 2-D space with 2nd order quadrature



More information about the CIG-COMMITS mailing list