[cig-commits] r17159 - in short/3D/PyLith/branches/v1.5-stable/playpen: . quadratic quadratic/twohex27 quadratic/twoquad9

brad at geodynamics.org brad at geodynamics.org
Tue Aug 31 11:49:31 PDT 2010


Author: brad
Date: 2010-08-31 11:49:31 -0700 (Tue, 31 Aug 2010)
New Revision: 17159

Added:
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_slip.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_sliptime.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/matprops.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/pylithapp.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/twohex27.mesh
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip_zero.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_sliptime.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/matprops.spatialdb
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/pylithapp.cfg
   short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/twoquad9.mesh
Log:
Added plapen/quadratic.

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,91 @@
+# -*- Python -*-
+
+# The settings in this file (axialdisp.cfg) will be read if it is
+# specified on the command line:
+# 'pylith axialdisp.cfg'
+
+# If this file is given, the settings in this file will override all
+# others except for parameters specified directly on the command line.
+
+# These setting define an implicit problem with Dirichlet (displacement)
+# boundary conditions extending the rectangular mesh along the x-axis.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# problem
+# Specify the problem settings.
+# This is a time-dependent problem so we use that facility.
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+
+# We want an implicit formulation.
+formulation = pylith.problems.Implicit
+
+# Set bc to an array of 2 boundary conditions: 'x_neg' and 'x_pos'.
+bc = [x_neg,x_pos]
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+
+# Boundary conditions to be applied to the negative x-side of the mesh.
+[pylithapp.timedependent.bc.x_neg]
+
+# We are fixing all 3 degrees of freedom.
+bc_dof = [0, 1, 2]
+
+# The nodes associated with this boundary condition have the name
+# 'x_neg' in the mesh file.
+label = x_neg
+
+# Change spatial database for initial value from ZeroDispDB (which has
+# a uniform spatial distribution) to SimpleDB (which uses a data file
+# to specify a spatial variation).
+db_initial = spatialdata.spatialdb.SimpleDB
+
+# We are assigning the label 'Dirichlet BC -x face' to the database.
+db_initial.label = Dirichlet BC -x face
+
+# The name of the file containing the spatial database for the BC
+# specification.
+db_initial.iohandler.filename = axialdisp.spatialdb
+
+
+# Boundary conditions to be applied to the positive x-side of the mesh.
+[pylithapp.timedependent.bc.x_pos]
+
+# We are fixing all 3 degrees of freedom.
+bc_dof = [0, 1, 2]
+
+# The nodes associated with this boundary condition have the name
+# 'x_pos' in the mesh file.
+label = x_pos
+
+# Change spatial database for initial value from ZeroDispDB (which has
+# a uniform spatial distribution) to SimpleDB (which uses a data file
+# to specify a spatial variation).
+db_initial = spatialdata.spatialdb.SimpleDB
+
+# We are assigning the label 'Dirichlet BC +x face' to the database.
+db_initial.label = Dirichlet BC +x face
+
+# The name of the file containing the spatial database for the BC
+# specification.
+db_initial.iohandler.filename = axialdisp.spatialdb
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Give basename for VTK output of solution over domain.
+[pylithapp.problem.formulation.output.output.writer]
+filename = axialdisp.vtk
+time_format = %04.1f ; Time stamp will be xxx.x with the "." removed.
+time_constant = 1.0*year ; Normalize time stamp by years
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.material.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = axialdisp-statevars.vtk
+writer.time_format = %04.1f 
+writer.time_constant = 1.0*year

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/axialdisp.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,44 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the boundary conditions for the axial
+// displacement example.
+
+// This follows the format for a Simple DB.
+SimpleDB {
+
+  // There are 3 values specified in the database, corresponding to the
+  // constraint values for the x, y, and z degrees of freedom.
+  num-values = 3
+  value-names =  displacement-x  displacement-y  displacement-z
+
+  // The constraint values (displacements) have units of meters.
+  value-units =  m  m  m
+
+  // The values are specified at 2 spatial locations.
+  num-locs = 2
+
+  // The dimension of the spatial distribution is 1, since data is being
+  // specified at points.
+  data-dim = 1
+
+  // The spatial dimension of the database is 3.
+  space-dim = 3
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 3D Cartesian coordinate system.
+    space-dim = 3
+  }
+}
+
+// This is where the data is specified.
+// As described in axialdisp.cfg, this database will be used to specify
+// data along edges.
+// The entries are:
+// X-coord, Y-coord, Z-coord, disp-x  disp-y  disp-z
+-1.0  0.0  0.0  -0.01  0.0  0.0
+ 1.0  0.0  0.0   0.01  0.0  0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,129 @@
+# -*- Python -*-
+
+# The settings in this file (dislocation.cfg) will be read if it is
+# specified on the command line:
+# 'pylith dislocation.cfg'
+
+# If this file is given, the settings in this file will override all
+# others except for parameters specified directly on the command line.
+
+# These settings define an implicit problem using a fault with
+# kinematically-specified slip.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# Journal settings in addition to those given in 'pylithapp.cfg'
+# ----------------------------------------------------------------------
+[pylithapp.journal.info]
+quadrature2d = 1
+faultcohesivekin = 1
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+
+# We want an implicit formulation.
+formulation = pylith.problems.Implicit
+
+# Set bc to an array of 2 boundary conditions: 'x_neg' and 'x_pos'.
+bc = [x_neg,x_pos]
+
+# Set interfaces to an array of 1 fault: 'fault'.
+interfaces = [fault]
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# Provide information on the boundary conditions.
+# ----------------------------------------------------------------------
+
+# We use the default spatial database for the Dirichlet BC which sets
+# the displacements to zero for all time.
+
+# Boundary conditions to be applied to the negative x-side of the mesh.
+[pylithapp.timedependent.bc.x_neg]
+
+# We are fixing all 3 degrees of freedom.
+bc_dof = [0, 1, 2]
+
+# The nodes associated with this boundary condition have the name
+# 'x_neg' in the mesh file.
+label = x_neg
+
+# We are assigning the label 'Dirichlet BC -x face' to the database.
+db_initial.label = Dirichlet BC -x face
+
+
+# Boundary conditions to be applied to the positive x-side of the mesh.
+[pylithapp.timedependent.bc.x_pos]
+
+# We are fixing all 3 degrees of freedom.
+bc_dof = [0, 1, 2]
+
+# The nodes associated with this boundary condition have the name
+# 'x_pos' in the mesh file.
+label = x_pos
+
+# We are assigning the label 'Dirichlet BC +x face' to the database.
+db_initial.label = Dirichlet BC +x face
+
+# ----------------------------------------------------------------------
+# faults
+# Provide information on the fault (interface).
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces]
+
+# Define fault properties.
+[pylithapp.timedependent.interfaces.fault]
+
+# The nodes associated with this fault have the name 'fault' in the mesh file.
+label = fault
+
+# NOTE: It is possible to assign an ID number to a fault (e.g.,
+# 'id = 10').  Care must be taken when doing this, however, because the
+# assigned ID will become the material ID for the cohesive element.
+# This ID must not conflict with any of the material ID numbers for
+# volume elements.  The default ID for a fault is 100.  If you have a
+# fault in your mesh you must:
+# 1.  If you create your own fault ID, make sure it does not conflict
+#     with any of you material ID's.
+# 2.  If you use the default fault ID, make sure that none of your
+#     material ID's are equal to 100.
+
+# The quadrature for a 3D fault is 2D.
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+quadrature.cell.degree = 2
+
+# Give the spatial databases specifying the fault slip.
+[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+
+# Database specifying fault slip (0.01 m of left-lateral slip).
+slip.iohandler.filename = dislocation_slip.spatialdb
+
+# Database specifying time at which fault slips (0.0 s).
+slip_time.iohandler.filename = dislocation_sliptime.spatialdb
+
+# ----------------------------------------------------------------------
+# output
+# Give basename for vtk output.
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output.writer]
+filename = dislocation.vtk
+time_format = %04.1f
+time_constant = 1.0*year
+
+# Give basename for vtk fault output.
+[pylithapp.timedependent.interfaces.fault.output.writer]
+filename = dislocation-fault.vtk
+time_format = %04.1f
+time_constant = 1.0*year
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.material.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = dislocation-statevars.vtk
+writer.time_format = %04.1f
+writer.time_constant = 1.0*year

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_slip.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_slip.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_slip.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,42 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the fault slip for the
+// dislocation (kinematic fault) example.
+SimpleDB {
+
+  // There are 3 values specified in the database, corresponding to the
+  // slip values for the left-lateral, reverse-slip, and fault-opening
+  // components.
+  num-values = 3
+  value-names =  left-lateral-slip  reverse-slip  fault-opening
+
+  // The fault slip values have units of meters.
+  value-units =  m  m  m
+
+  // The values are specified at one spatial location.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since the same data
+  // is specified for all points in the set.
+  data-dim = 0
+
+  // The spatial dimension of the database is 3.
+  space-dim = 3
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 3D Cartesian coordinate system.
+    space-dim = 3
+  }
+}
+
+// This is where the data is specified.
+// As described in dislocation.cfg, this database will be used to specify
+// uniform data for a fault (pylith.faults.SingleFault).
+// The entries are:
+// X-Coord, Y-Coord, X-Coord, left-lateral slip, reverse slip, fault-opening slip
+0.0  0.0  0.0   0.01  0.0  0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_sliptime.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_sliptime.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/dislocation_sliptime.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,41 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the fault slip time for the
+// dislocation (kinematic fault) example.
+SimpleDB {
+
+  // There is one value specified in the database, corresponding to the
+  // time at which fault slip begins.
+  num-values = 1
+  value-names =  slip-time
+
+  // The fault slip time has units of meters.
+  value-units =  s
+
+  // The value is specified at one spatial location.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since the same data
+  // is specified for all points in the set.
+  data-dim = 0
+
+  // The spatial dimension of the database is 3.
+  space-dim = 3
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 3D Cartesian coordinate system.
+    space-dim = 3
+  }
+}
+
+// This is where the data is specified.
+// As described in dislocation.cfg, this database will be used to specify
+// uniform data for a fault (pylith.faults.SingleFault).
+// The entries are:
+// X-Coord, Y-Coord, Z-Coord, slip time
+0.0  0.0  0.0   0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/matprops.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/matprops.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/matprops.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,46 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the material properties for all of the
+// examples in this directory.
+
+// This follows the format for a Simple DB (the only type presently available).
+SimpleDB {
+
+  // There are 4 values specified in the database, corresponding to density,
+  // S-velocity, P-velocity, and viscosity (values for shear modulus and Lame's
+  // constant are computed from the density and seismic velocities).
+  num-values = 4
+  value-names =  density vs vp viscosity
+
+  // These are the units used to specify density, vs, and vp.
+  value-units =  kg/m**3  m/s  m/s  Pa*s
+
+  // Values are only specified at a single point since they are constant
+  // throughout the mesh.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since it is constant
+  // throughout the mesh.
+  data-dim = 0
+
+  // The spatial dimension of the database is 3.
+  space-dim = 3
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 3D Cartesian coordinate system.
+    space-dim = 3
+  }
+}
+// This is where the data is specified.
+// We only need to specify a single point, since the properties are uniform.
+// The values given here will give a shear modulus and Lame's constant both
+// equal to 30 GPa (Poisson's ratio = 0.25).
+// The entries are:
+// X-coord, Y-coord, Z-coord, density, Vs, Vp viscosity.
+
+0.0  0.0  0.0   2700.0  3333.333333333333  5773.502691896258  1.0e18

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/pylithapp.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/pylithapp.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/pylithapp.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,122 @@
+# -*- Python -*-
+
+# The settings in this file (pylithapp.cfg) will be read automatically
+# by pylith, as long as the file is placed in the run directory.
+
+# The settings in this file will override any settings in:
+# PREFIX/etc/pylithapp.cfg
+# $HOME/.pyre/pylithapp/pylithapp.cfg
+
+# The settings in this file will be overridden by any .cfg file given
+# on the command line or by any command line settings.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# The settings below turn on journal info for the specified components.
+# If you want less output to stdout, you can turn these off.
+# ----------------------------------------------------------------------
+[pylithapp.journal.info]
+timedependent = 1
+explicit = 1
+implicit = 1
+petsc = 1
+solverlinear = 1
+meshioascii = 1
+homogeneous = 1
+implicitelasticity = 1
+quadrature3d = 1
+fiatsimplex = 1
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# The settings below control the mesh generation (importing mesh info).
+# ----------------------------------------------------------------------
+# Turn on debugging output for mesh generation.
+[pylithapp.mesh_generator]
+debug = 1
+
+# This component specification means we are using PyLith ASCII format,
+# and we then specify the filename and number of space dimensions for
+# the mesh.
+[pylithapp.mesh_generator.reader]
+filename = twohex27.mesh
+coordsys.space_dim = 3
+
+# ----------------------------------------------------------------------
+# problem
+# Specify the problem settings.
+# This is a time-dependent problem, so we select this as our problem type.
+# We select a total time of 1 year, and a time step size of 0.1 year, so we
+# are performing 10 time steps plus the elastic solution.
+# The spatial dimension for this problem is 3.
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+dimension = 3
+normalizer.length_scale = 1.0*m
+
+[pylithapp.timedependent.formulation.time_step]
+total_time = 1.0*year
+dt = 0.1*year
+
+# ----------------------------------------------------------------------
+# materials
+# Specify the material information for the problem.
+# ----------------------------------------------------------------------
+# Change the material type to linear Maxwell viscoelastic.
+[pylithapp.timedependent.materials]
+material = pylith.materials.ElasticIsotropic3D
+
+[pylithapp.timedependent.materials.material]
+
+# We give a label of 'viscoelastic material' to this material.
+label = viscoelastic material
+
+# The cells associated with this material are given a material ID of 1
+# in the mesh file.
+id = 1
+
+# We define uniform material properties for this problem rather than
+# using a spatial database file.
+db_properties = spatialdata.spatialdb.UniformDB
+db_properties.values = [vp,vs,density]
+db_properties.data = [5291.502622129181*m/s,3000.0*m/s,2700.0*kg/m**3]
+
+# If we instead wanted to used the 'matprops.spatialdb' file to define
+# material properties we would comment out the three 'db' lines above
+# and uncomment the line below:
+# db.iohandler.filename = matprops.spatialdb
+
+# We are doing 2D quadrature for a quad.
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 3
+quadrature.cell.degree = 2
+
+# ----------------------------------------------------------------------
+# PETSc
+# We are using all of the default settings for PETSc except for
+# specifying the Jacobi preconditioner.  Additional PETSc command-line
+# arguments may be found in the PETSc documentation.
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+pc_type = asm
+
+# Change the preconditioner settings.
+sub_pc_factor_shift_type = none
+
+ksp_rtol = 1.0e-8
+ksp_max_it = 100
+ksp_gmres_restart = 50
+
+ksp_monitor = true
+ksp_view = true
+ksp_converged_reason = true
+
+snes_monitor = true
+snes_view = true
+snes_converged_reason = true
+
+log_summary = true
+# start_in_debugger = true
+

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/twohex27.mesh
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/twohex27.mesh	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twohex27/twohex27.mesh	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,179 @@
+// Global mesh object.
+// This defines a brick-shaped mesh composed of two cubic elements.
+mesh = {
+
+  // This is a 3D mesh.is is a 3D mesh.
+  dimension = 3
+
+  // We are using zero-indexing (default) rather than one-indexing.
+  use-index-zero = true
+
+  // Describe the vertices (nodes) defining the mesh.
+  vertices = {
+
+    // The vertices are defined in a 3D coordinate system.
+    dimension = 3
+
+    count = 45
+
+    // List the coordinates as:
+    // Vertex number (starting from zero), x-coord, y-coord, z-coord
+    // Use coordinate units that are consistent with the other units used.
+    coordinates = {
+             0     -1.0 -0.5 -0.5
+             1     -1.0  0.0 -0.5
+             2     -1.0  0.5 -0.5
+             3     -1.0 -0.5  0.0
+             4     -1.0  0.0  0.0
+             5     -1.0  0.5  0.0
+             6     -1.0 -0.5  0.5
+             7     -1.0  0.0  0.5
+             8     -1.0  0.5  0.5
+             9     -0.5 -0.5 -0.5
+            10     -0.5  0.0 -0.5
+            11     -0.5  0.5 -0.5
+            12     -0.5 -0.5  0.0
+            13     -0.5  0.0  0.0
+            14     -0.5  0.5  0.0
+            15     -0.5 -0.5  0.5
+            16     -0.5  0.0  0.5
+            17     -0.5  0.5  0.5
+            18      0.0 -0.5 -0.5
+            19      0.0  0.0 -0.5
+            20      0.0  0.5 -0.5
+            21      0.0 -0.5  0.0
+            22      0.0  0.0  0.0
+            23      0.0  0.5  0.0
+            24      0.0 -0.5  0.5
+            25      0.0  0.0  0.5
+            26      0.0  0.5  0.5
+            27      0.5 -0.5 -0.5
+            28      0.5  0.0 -0.5
+            29      0.5  0.5 -0.5
+            30      0.5 -0.5  0.0
+            31      0.5  0.0  0.0
+            32      0.5  0.5  0.0
+            33      0.5 -0.5  0.5
+            34      0.5  0.0  0.5
+            35      0.5  0.5  0.5
+            36      1.0 -0.5 -0.5
+            37      1.0  0.0 -0.5
+            38      1.0  0.5 -0.5
+            39      1.0 -0.5  0.0
+            40      1.0  0.0  0.0
+            41      1.0  0.5  0.0
+            42      1.0 -0.5  0.5
+            43      1.0  0.0  0.5
+            44      1.0  0.5  0.5
+    }
+  }
+
+  // Describe the cells (elements) composing the mesh.
+  cells = {
+
+    // There are 2 cells.
+    count = 2
+
+    // These are trilinear hexahedral cells, so there are 8 corners per cell.
+    num-corners = 27
+
+    // List the vertices composing each cell (see manual for ordering).
+    // List the information as:
+    // Cell number (starting from zero), vertex 0, vertex 1, etc.
+    simplices = {
+             0       0 18 20  2  6 24 26  8  9 19 11  1 15 25 17  7  3 21 23  5  4 22 12 14 10 16 13
+             1      18 36 38 20 24 42 44 26 27 37 29 19 33 43 35 25 21 39 41 23 22 40 30 32 28 34 31
+    }
+
+    // List the material ID's associated with each cell.
+    // Different ID's may be used to specify a different material type, or
+    // to use a different spatial database for each material ID.
+    // In this example, cells 0 and 1 both are associated with material ID 1.
+    material-ids = {
+             0   1
+             1   1
+    }
+  }
+
+  // Here we list different groups (cells or vertices) that we want to associate
+  // with a particular name (ID).
+
+  // This group of vertices may be used to define a fault.
+  group = {
+    name = fault
+    type = vertices
+    count = 9
+    indices = {
+      18 19 20
+      21 22 23
+      24 25 26
+    }
+  }
+
+  // This group of vertices may be used to specify boundary conditions.
+  group = {
+    name = x_neg
+    type = vertices
+    count = 9
+    indices = {
+      0  1  2
+      3  4  5
+      6  7  8
+    }
+  }
+
+  // This group of vertices may be used to specify boundary conditions.
+  group = {
+    name = x_pos
+    type = vertices
+    count = 9
+    indices = {
+      36 37 38
+      39 40 41
+      42 43 44
+    }
+  }
+
+  // This group of vertices may be used to specify boundary conditions.
+  group = {
+    name = y_neg
+    type = vertices
+    count = 15
+    indices = {
+      0  3  6
+      9 12 15
+     18 21 24
+     27 30 33
+     36 39 42
+    }
+  }
+
+  // This group of vertices may be used to specify boundary conditions.
+  group = {
+    name = y_pos
+    type = vertices
+    count = 15
+    indices = {
+      2  5  8
+     11 14 17
+     20 23 26
+     29 32 35
+     38 41 44    
+    }
+  }
+
+  // This group of vertices may be used to specify boundary conditions.
+  group = {
+    name = z_neg
+    type = vertices
+    count = 15
+    indices = {
+      0  1  2
+      9 10 11
+     18 19 20
+     27 28 29
+     36 37 38
+    }
+  }
+
+}

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,120 @@
+# -*- Python -*-
+
+# To run this problem, type "pylith axialdisp.cfg". The settings in
+# pylithapp.cfg will be read by default. See the README for how to run
+# other problems in this directory.
+#
+#
+#  <- ----------------------- ->
+#     |                     |
+#  <- |                     | ->
+#     |                     |
+#  <- |                     | ->
+#     |                     |
+#  <- ----------------------- ->
+#     ^          ^          ^
+#
+# Axial tension is applied by pulling on the left and right boundaries
+# in the horizontal direction.
+# Bottom boundary is pinned in the vertical direction.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+# Specify the problem settings.
+[pylithapp.timedependent]
+
+# We want an implicit formulation.
+formulation = pylith.problems.Implicit
+
+# Set bc to an array with 3 boundary conditions: 'x_neg', 'x_pos', 'y_neg'.
+bc = [x_neg,x_pos,y_neg]
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+
+# BC for the left (-x) side of the domain.
+[pylithapp.timedependent.bc.x_neg]
+
+# Fix the 0 (x) degree of freedom.
+bc_dof = [0]
+
+# The group of vertices in the mesh file associated with this boundary
+# condition have the name 'x_neg'.
+label = x_neg
+
+# Change the spatial database for the Dirichlet BC initial values from
+# ZeroDispDB (which has a uniform spatial distribution) to SimpleDB
+# (which uses a data file to specify a spatial variation).
+db_initial = spatialdata.spatialdb.SimpleDB
+
+# Assign the label 'Dirichlet BC -x edge' to the database.
+db_initial.label = Dirichlet BC -x edge
+
+# The name of the file containing the spatial database for the BC
+# specification.
+db_initial.iohandler.filename = axialdisp.spatialdb
+db_initial.query_type = linear
+
+
+# Boundary conditions to be applied to the positive x-side of the mesh.
+[pylithapp.timedependent.bc.x_pos]
+
+# Fix the 0 (x) degree of freedom.
+bc_dof = [0]
+
+# The group of vertices in the mesh file associated with this boundary
+# condition have the name 'x_pos'.
+label = x_pos
+
+# Change the spatial database for the Dirichlet BC initial values from
+# ZeroDispDB (which has a uniform spatial distribution) to SimpleDB
+# (which uses a data file to specify a spatial variation).
+db_initial = spatialdata.spatialdb.SimpleDB
+
+# Assign the label 'Dirichlet BC +x edge' to the database.
+db_initial.label = Dirichlet BC +x edge
+
+# The name of the file containing the spatial database for the BC
+# specification.
+db_initial.iohandler.filename = axialdisp.spatialdb
+db_initial.query_type = linear
+
+
+# Boundary conditions to be applied to the bottom boundary of the mesh.
+[pylithapp.timedependent.bc.y_neg]
+
+# We are fixing the 1 (y) degree of freedom.
+bc_dof = [1]
+
+# The group of vertices in the mesh file associated with this boundary
+# condition have the name 'y_neg'.
+label = y_neg
+
+# Change spatial database for initial value from ZeroDispDB (which has
+# a uniform spatial distribution) to SimpleDB (which uses a data file
+# to specify a spatial variation).
+db_initial = spatialdata.spatialdb.SimpleDB
+
+# Assign the label 'Dirichlet BC -y corners' to the database.
+db_initial.label = Dirichlet BC -y edge
+
+# The name of the file containing the spatial database for the BC
+# specification.
+db_initial.iohandler.filename = axialdisp.spatialdb
+db_initial.query_type = linear
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Give basename for VTK output of solution over domain.
+[pylithapp.problem.formulation.output.output.writer]
+filename = axialdisp.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.material.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = axialdisp-statevars.vtk

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/axialdisp.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,41 @@
+// This database is used to specify the boundary conditions for the axial
+// displacement example.
+#SPATIAL.ascii 1
+SimpleDB {
+
+  // There are two values specified in the database, corresponding to the
+  // constraint values for the x and y degrees of freedom.
+  num-values = 2
+  value-names =  displacement-x displacement-y
+
+  // The constraint values (displacements) have units of meters.
+  value-units =  m  m
+
+  // The values are specified at two spatial locations.
+  num-locs = 2
+
+  // The dimension of the spatial distribution is 1, since data is being
+  // specified at points.
+  data-dim = 1
+
+  // The spatial dimension of the database is 2.
+  space-dim = 2
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 2D Cartesian coordinate system.
+    space-dim = 2
+  }
+}
+
+// This is where the data is specified.
+// As described in axialdisp.cfg, this database will be used to specify
+// data along edges (pylith.bc.BCFourSides).
+// The entries are:
+// X-coord, Y-coord, displ-x, disp-y
+-2.0  0.0  -0.01  0.0
+ 2.0  0.0   0.01  0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,144 @@
+# -*- Python -*-
+
+# The settings in this file (dislocation.cfg) will be read if it is
+# specified on the command line:
+# 'pylith dislocation.cfg'
+
+# If this file is given, the settings in this file will override all
+# others except for parameters specified directly on the command line.
+
+# These settings define an implicit problem using a fault with
+# kinematically-specified slip.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# ----------------------------------------------------------------------
+# Journal settings in addition to those given in 'pylithapp.cfg'
+[pylithapp.journal.info]
+quadrature1d = 1
+faultcohesivekin = 1
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+# Specify the problem settings.
+# This is a time-dependent problem so we use that facility.
+[pylithapp.timedependent]
+
+# We want an implicit formulation.
+formulation = pylith.problems.Implicit
+
+# Set bc to an array with 2 boundary conditions: 'x_neg' and 'x_pos'.
+bc = [x_neg,x_pos]
+
+# Set interfaces to an array with 1 fault: 'fault'.
+interfaces = [fault]
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+# Provide information on the boundary conditions.
+
+# We use the default spatial database for the Dirichlet BC which sets
+# the displacements to zero for all time.
+
+# Boundary conditions to be applied to the negative x-side of the mesh.
+[pylithapp.timedependent.bc.x_neg]
+
+# We are fixing the 0 (x) and 1 (y) degrees of freedom.
+bc_dof = [0, 1]
+
+# The nodes associated with this boundary condition have the name
+# 'x_neg' in the mesh file.
+label = x_neg
+
+# We are assigning the label 'Dirichlet BC' to the database.
+db_initial.label = Dirichlet BC -x edge
+
+# Boundary conditions to be applied to the positive x-side of the mesh.
+[pylithapp.timedependent.bc.x_pos]
+
+# We are fixing the 0 (x) and 1 (y) degrees of freedom.
+bc_dof = [0, 1]
+
+# The nodes associated with this boundary condition have the name
+# 'x_pos' in the mesh file.
+label = x_pos
+
+# We are assigning the label 'Dirichlet BC' to the database.
+db_initial.label = Dirichlet BC +x edge
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+# Provide information on the fault (interface).
+[pylithapp.timedependent.interfaces]
+
+# Define fault properties.
+[pylithapp.timedependent.interfaces.fault]
+
+# The nodes associated with this fault have the name 'fault' in the mesh file.
+label = fault
+
+# NOTE: It is possible to assign an ID number to a fault (e.g.,
+# 'id = 10').  Care must be taken when doing this, however, because the
+# assigned ID will become the material ID for the cohesive element.
+# This ID must not conflict with any of the material ID numbers for
+# volume elements.  The default ID for a fault is 100.  If you have a
+# fault in your mesh you must:
+# 1.  If you create your own fault ID, make sure it does not conflict
+#     with any of you material ID's.
+# 2.  If you use the default fault ID, make sure that none of your
+#     material ID's are equal to 100.
+
+# The quadrature for a 2D fault is 1D with a linear shape.
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 1
+quadrature.cell.degree = 2
+
+# Give the spatial databases specifying the fault slip.
+[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+
+# Database specifying fault slip (0.01 m of left-lateral slip).
+slip.iohandler.filename = dislocation_slip.spatialdb
+
+# Database specifying time at which fault slips (0.0 s).
+slip_time.iohandler.filename = dislocation_sliptime.spatialdb
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Give basename for VTK domain output of solution over domain.
+[pylithapp.problem.formulation.output.output.writer]
+filename = dislocation.vtk
+
+# Give basename for VTK fault output.
+[pylithapp.timedependent.interfaces.fault.output.writer]
+filename = dislocation-fault.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.material.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = dislocation-statevars.vtk
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+# Set the solver options.
+
+[pylithapp.petsc]
+ksp_rtol = 1.0e-8
+pc_type = asm
+
+# Change the preconditioner settings.
+sub_pc_factor_shift_type = none
+
+ksp_max_it = 100
+ksp_gmres_restart = 50
+
+ksp_monitor = true
+ksp_view = true
+ksp_converged_reason = true
+

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,41 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the fault slip for the
+// dislocation (kinematic fault) example.
+SimpleDB {
+
+  // There are two values specified in the database, corresponding to the
+  // slip values for the left-lateral and fault-opening components.
+  num-values = 2
+  value-names =  left-lateral-slip fault-opening
+
+  // The fault slip values have units of meters.
+  value-units =  m  m
+
+  // The values are specified at one spatial location.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since the same data
+  // is specified for all points in the set.
+  data-dim = 0
+
+  // The spatial dimension of the database is 2.
+  space-dim = 2
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 2D Cartesian coordinate system.
+    space-dim = 2
+  }
+}
+
+// This is where the data is specified.
+// As described in dislocation.cfg, this database will be used to specify
+// uniform data for a fault (pylith.faults.SingleFault).
+// The entries are:
+// X-Coord, Y-Coord, left-lateral slip, fault-opening slip
+0.0  0.0   0.01  0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip_zero.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip_zero.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_slip_zero.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,41 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the fault slip for the
+// dislocation (kinematic fault) example.
+SimpleDB {
+
+  // There are two values specified in the database, corresponding to the
+  // slip values for the left-lateral and fault-opening components.
+  num-values = 2
+  value-names =  left-lateral-slip fault-opening
+
+  // The fault slip values have units of meters.
+  value-units =  m  m
+
+  // The values are specified at one spatial location.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since the same data
+  // is specified for all points in the set.
+  data-dim = 0
+
+  // The spatial dimension of the database is 2.
+  space-dim = 2
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 2D Cartesian coordinate system.
+    space-dim = 2
+  }
+}
+
+// This is where the data is specified.
+// As described in dislocation.cfg, this database will be used to specify
+// uniform data for a fault.
+// The entries are:
+// X-Coord, Y-Coord, left-lateral slip, fault-opening slip
+0.0  0.0   0.0  0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_sliptime.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_sliptime.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/dislocation_sliptime.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,41 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the fault slip time for the
+// dislocation (kinematic fault) example.
+SimpleDB {
+
+  // There is one value specified in the database, corresponding to the
+  // time at which fault slip begins.
+  num-values = 1
+  value-names =  slip-time
+
+  // The fault slip time has units of meters.
+  value-units =  s
+
+  // The value is specified at one spatial location.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since the same data
+  // is specified for all points in the set.
+  data-dim = 0
+
+  // The spatial dimension of the database is 2.
+  space-dim = 2
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 2D Cartesian coordinate system.
+    space-dim = 2
+  }
+}
+
+// This is where the data is specified.
+// As described in dislocation.cfg, this database will be used to specify
+// uniform data for a fault (pylith.faults.SingleFault).
+// The entries are:
+// X-Coord, Y-Coord, slip time
+0.0  0.0   0.0

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/matprops.spatialdb
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/matprops.spatialdb	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/matprops.spatialdb	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,46 @@
+#SPATIAL.ascii 1
+
+// This database is used to specify the material properties for all of the
+// examples in this directory.
+
+// This follows the format for a Simple DB (the only type presently available).
+SimpleDB {
+
+  // There are 3 values specified in the database, corresponding to density,
+  // S-velocity, and P-velocity (values for shear modulus and Lame's constant
+  // are computed from these values.
+  num-values = 3
+  value-names =  density vs vp
+
+  // These are the units used to specify density, vs, and vp.
+  value-units =  kg/m**3  m/s  m/s
+
+  // Values are only specified at a single point since they are constant
+  // throughout the mesh.
+  num-locs = 1
+
+  // The dimension of the spatial distribution is 0, since it is constant
+  // throughout the mesh.
+  data-dim = 0
+
+  // The spatial dimension of the database is 2.
+  space-dim = 2
+
+  // We are specifying the data in a Cartesian coordinate system.
+  cs-data = cartesian {
+
+    // Our units are already in meters, so we can just multiply by one.
+    to-meters = 1.0
+
+    // We are using a 2D Cartesian coordinate system.
+    space-dim = 2
+  }
+}
+// This is where the data is specified.
+// We only need to specify a single point, since the properties are uniform.
+// The values given here will give a shear modulus and Lame's constant both
+// equal to 30 GPa (Poisson's ratio = 0.25).
+// The entries are:
+// X-coord, Y-coord, density, Vs, Vp.
+
+0.0  0.0   2700.0  3333.333333333333  5773.502691896258

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/pylithapp.cfg
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/pylithapp.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/pylithapp.cfg	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,99 @@
+# -*- Python -*-
+
+# The settings in this file (pylithapp.cfg) will be read automatically
+# by pylith, as long as the file is placed in the run directory.
+
+# The settings in this file will override any settings in:
+# PREFIX/etc/pylithapp.cfg
+# $HOME/.pyre/pylithapp/pylithapp.cfg
+
+# The settings in this file will be overridden by any .cfg file given
+# on the command line or by any command line settings.
+
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# ----------------------------------------------------------------------
+# The settings below turn on journal info for the specified components.
+# If you want less output to stdout, you can turn these off.
+[pylithapp.journal.info]
+timedependent = 1
+implicit = 1
+petsc = 1
+solverlinear = 1
+meshioascii = 1
+homogeneous = 1
+elasticityimplicit = 1
+fiatlagrange = 1
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+# The settings below control the mesh generation (importing mesh info).
+# Turn on debugging output for mesh generation.
+[pylithapp.mesh_generator]
+debug = 1
+
+# This component specification means we are using PyLith ASCII format,
+# and we then specify the filename and number of space dimensions for
+# the mesh.
+[pylithapp.mesh_generator.reader]
+filename = twoquad9.mesh
+coordsys.space_dim = 2
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+# Specify the problem settings.
+# This is a time-dependent problem, so we select this as our problem type.
+# We select a total time of 0 sec, and a time step size of 1 sec, so we
+# are performing a single time step.
+# The spatial dimension for this problem is 2.
+# For an implicit formulation (using implicit.cfg), we will perform 1
+# implicit time step from t = -1.0 to t = 0.0 (elastic solution step).
+[pylithapp.timedependent]
+dimension = 2
+normalizer.length_scale = 1.0*m
+
+[pylithapp.timedependent.formulation.time_step]
+total_time = 0.0*s
+dt = 1.0*s
+
+# ----------------------------------------------------------------------
+# materials
+# ----------------------------------------------------------------------
+# Specify the material information for the problem.
+# The material type is isotropic elastic formulated for plane strain.
+[pylithapp.timedependent.materials]
+material = pylith.materials.ElasticPlaneStrain
+
+[pylithapp.timedependent.materials.material]
+
+# We give a label of 'elastic material' to this material.
+label = elastic material
+
+# The cells associated with this material are given a material ID of 0
+# in the mesh file.
+id = 0
+
+# The properties for this material are given in the spatial database file
+# 'matprops.spatialdb'.
+db_properties.iohandler.filename = matprops.spatialdb
+
+# Set cell type to quadrilateral (2-d Lagrange).
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+quadrature.cell.degree = 2
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+# We are using all of the default settings for PETSc except for
+# specifying the block Jacobi preconditioner.  Additional PETSc
+# command-line arguments may be found in the PETSc documentation.
+[pylithapp.petsc]
+pc_type = bjacobi
+
+# start_in_debugger = true
+# debugger_timeout = 100

Added: short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/twoquad9.mesh
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/twoquad9.mesh	                        (rev 0)
+++ short/3D/PyLith/branches/v1.5-stable/playpen/quadratic/twoquad9/twoquad9.mesh	2010-08-31 18:49:31 UTC (rev 17159)
@@ -0,0 +1,111 @@
+// Finite-element mesh with two quad4 cells.
+//
+//
+//  2 --5-- 8 -11-- 14
+//  |       |       |
+//  1   4   7  10   13
+//  |       |       |
+//  0 --3-- 6 --9-- 12
+//
+// Each edge has a length of 2.0.
+//
+mesh = {
+
+  // Dimenion associated with topology of mesh.
+  dimension = 2
+
+  // We are using zero-based indexing (default, C style) rather than 
+  // one-based (Fortran style) indexing.
+  use-index-zero = true
+
+  // Vertices in the mesh.
+  vertices = {
+
+    // Dimension of coordinate system for vertices.
+    dimension = 2
+
+    // Number of vertices in mesh.
+    count = 15
+
+    // Coordinates are listed as:
+    // Vertex number (starting from zero), x-coord, y-coord
+    // Use coordinate units that are consistent with the other units used.
+    coordinates = {
+             0     -2.0 -1.0
+             1     -2.0  0.0
+             2     -2.0  1.0
+             3     -1.0 -1.0
+             4     -1.0  0.0
+             5     -1.0  1.0
+             6      0.0 -1.0
+             7      0.0  0.0
+             8      0.0  1.0
+             9      1.0 -1.0
+            10      1.0  0.0
+            11      1.0  1.0
+            12      2.0 -1.0
+            13      2.0  0.0
+            14      2.0  1.0
+    }
+  }
+
+  // Finite-element cells in the mesh.
+  cells = {
+    count = 2
+    num-corners = 9
+    simplices = {
+             0       0  6  8  2  3  7  5  1  4
+             1       6 12 14  8  9 13 11  7 10
+    }
+    material-ids = {
+             0   0
+             1   0
+    }
+  }
+
+  group = {
+    name = fault
+    type = vertices
+    count = 3
+    indices = {
+      6  7  8
+    }
+  }
+
+  group = {
+    name = y_neg
+    type = vertices
+    count = 5
+    indices = {
+      0  3  6 9 12
+    }
+  }
+
+  group = {
+    name = y_neg_nofault
+    type = vertices
+    count = 4
+    indices = {
+      0  3  9 12
+    }
+  }
+
+  group = {
+    name = x_neg
+    type = vertices
+    count = 3
+    indices = {
+      0 1 2
+    }
+  }
+
+  group = {
+    name = x_pos
+    type = vertices
+    count = 3
+    indices = {
+      12 13 14
+    }
+  }
+
+}



More information about the CIG-COMMITS mailing list