[cig-commits] r18642 - in short/3D/PyLith/branches/multifields: . applications applications/utilities doc/developer doc/install doc/refguide doc/releasenotes doc/userguide doc/userguide/benchmarks doc/userguide/benchmarks/savageprescott doc/userguide/boundaryconditions doc/userguide/cover doc/userguide/governingeqns doc/userguide/install doc/userguide/intro doc/userguide/intro/figs doc/userguide/materials doc/userguide/runpylith doc/userguide/runpylith/figs doc/userguide/tutorials doc/userguide/tutorials/3dhex8 doc/userguide/tutorials/3dhex8/friction doc/userguide/tutorials/3dhex8/gravity doc/userguide/tutorials/3dhex8/quasistatic doc/userguide/tutorials/3dhex8/static doc/userguide/tutorials/3dtet4 doc/userguide/tutorials/twohex8/figs doc/userguide/tutorials/twoquad4/figs doc/userguide/tutorials/twotet4/figs doc/userguide/tutorials/twotet4-geoproj/figs examples examples/2d examples/2d/subduction examples/2d/subduction/output examples/3d examples/3d/hex8 examples/3d/hex8/mesh examples/3d/hex8/output examples/3d/tet4 examples/bar_shearwave examples/bar_shearwave/hex8 examples/bar_shearwave/hex8/output examples/bar_shearwave/quad4 examples/bar_shearwave/quad4/output examples/bar_shearwave/tet4 examples/bar_shearwave/tet4/output examples/bar_shearwave/tri3 examples/bar_shearwave/tri3/output examples/greensfns examples/greensfns/hex8 examples/greensfns/hex8/gfimpulses examples/greensfns/hex8/gfresponses examples/greensfns/hex8/gfspatialdb examples/meshing examples/meshing/surface_nurbs examples/meshing/surface_nurbs/contours examples/meshing/surface_nurbs/contours/journal examples/meshing/surface_nurbs/dem examples/meshing/surface_nurbs/dem/ulines examples/meshing/surface_nurbs/dem/vlines examples/meshing/surface_nurbs/triangles examples/twocells examples/twocells/twohex27-cubit examples/twocells/twohex8 examples/twocells/twoquad4 examples/twocells/twotet4 examples/twocells/twotet4-geoproj examples/twocells/twotri3 libsrc libsrc/pylith libsrc/pylith/bc libsrc/pylith/faults libsrc/pylith/feassemble libsrc/pylith/friction libsrc/pylith/materials libsrc/pylith/meshio libsrc/pylith/problems libsrc/pylith/topology libsrc/pylith/utils modulesrc modulesrc/bc modulesrc/faults modulesrc/feassemble modulesrc/friction modulesrc/include modulesrc/materials modulesrc/meshio modulesrc/mpi modulesrc/problems modulesrc/topology modulesrc/utils playpen/closure playpen/euler playpen/memcheck playpen/postproc playpen/postproc/fault playpen/powerlaw playpen/savpres_ss playpen/tsurf playpen/verification pylith pylith/apps pylith/bc pylith/faults pylith/feassemble pylith/friction pylith/materials pylith/meshio pylith/mpi pylith/perf pylith/problems pylith/tests pylith/topology pylith/utils share templates templates/friction templates/friction/tests templates/materials templates/materials/tests tests tests/2d tests/2d/frictionslide tests/2d/maxwell tests/2d/slipdir tests/3d tests/3d/matprops tests/3d/plasticity tests/3d/plasticity/threehex27 tests/3d/plasticity/threehex27/config tests/3d/plasticity/threehex27/mesh tests/3d/plasticity/threehex27/results tests/3d/plasticity/threehex27/spatialdb tests/3d/plasticity/threehex8 tests/3d/plasticity/threehex8/config tests/3d/plasticity/threehex8/mesh tests/3d/plasticity/threehex8/results tests/3d/plasticity/threehex8/spatialdb tests/3d/slipdir tests/distribute tests/topology tests_auto tests_auto/1d tests_auto/1d/line2 tests_auto/1d/line3 tests_auto/2d tests_auto/2d/quad4 tests_auto/2d/quad9 tests_auto/2d/tri3 tests_auto/2d/tri6 tests_auto/3d tests_auto/3d/hex8 tests_auto/3d/tet4 tests_auto/3dnew/hex27 tests_auto/3dnew/hex8 tests_auto/3dnew/tet10 tests_auto/3dnew/tet4 tests_auto/petsc unittests unittests/libtests unittests/libtests/bc unittests/libtests/bc/data unittests/libtests/faults unittests/libtests/faults/data unittests/libtests/feassemble unittests/libtests/feassemble/data unittests/libtests/friction unittests/libtests/friction/data unittests/libtests/materials unittests/libtests/materials/data unittests/libtests/meshio unittests/libtests/meshio/data unittests/libtests/topology unittests/libtests/topology/data unittests/libtests/utils unittests/pytests unittests/pytests/bc unittests/pytests/bc/data unittests/pytests/faults unittests/pytests/faults/data unittests/pytests/feassemble unittests/pytests/feassemble/data unittests/pytests/friction unittests/pytests/friction/data unittests/pytests/materials unittests/pytests/materials/data unittests/pytests/meshio unittests/pytests/meshio/data unittests/pytests/mpi unittests/pytests/problems unittests/pytests/problems/data unittests/pytests/topology unittests/pytests/topology/data unittests/pytests/utils

brad at geodynamics.org brad at geodynamics.org
Thu Jun 16 09:32:19 PDT 2011


Author: brad
Date: 2011-06-16 09:32:15 -0700 (Thu, 16 Jun 2011)
New Revision: 18642

Added:
   short/3D/PyLith/branches/multifields/applications/utilities/pylith_genxdmf
   short/3D/PyLith/branches/multifields/doc/releasenotes/announce_v1.6.0.txt
   short/3D/PyLith/branches/multifields/doc/userguide/alternativeformul/
   short/3D/PyLith/branches/multifields/doc/userguide/makepdf.sh
   short/3D/PyLith/branches/multifields/doc/userguide/materials/altformulations.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.eps
   short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.svg
   short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.eps
   short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.svg
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/subduction/
   short/3D/PyLith/branches/multifields/examples/3d/tet4/figures/
   short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh/
   short/3D/PyLith/branches/multifields/examples/3d/tet4/output/
   short/3D/PyLith/branches/multifields/examples/3d/tet4/spatialdb/
   short/3D/PyLith/branches/multifields/examples/3d/tet4/step01.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/step02.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/step03.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/step04.cfg
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellPlaneStrain.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellPlaneStrain.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellPlaneStrain.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/ExodusII.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/ExodusII.hh
   short/3D/PyLith/branches/multifields/modulesrc/materials/GenMaxwellPlaneStrain.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/Xdmf.i
   short/3D/PyLith/branches/multifields/pylith/materials/GenMaxwellPlaneStrain.py
   short/3D/PyLith/branches/multifields/pylith/meshio/Xdmf.py
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/Makefile.am
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/plot_friction.py
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/velocitysteps.timedb
   short/3D/PyLith/branches/multifields/tests/refinefaulttip/
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellPlaneStrain.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellPlaneStrain.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellPlaneStrainTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestExodusII.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestExodusII.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/gentwocell.jou
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_cell.xmf
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_vertex.xmf
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_cell.xmf
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_vertex.xmf
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twohex8.jou
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twohex8_12.2.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twohex8_13.0.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twoquad4.jou
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twoquad4_12.2.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twoquad4_13.0.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotet4.jou
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotet4_12.2.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotet4_13.0.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotri3.jou
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotri3_12.2.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotri3_13.0.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldBase.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldBase.hh
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestGenMaxwellPlaneStrain.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestXdmf.py
Removed:
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/axialdisp.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/dislocation.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/sheardisp.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/axialdisp.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/axialtract.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/dislocation.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/sheardispl.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4-geoproj/figs/dislocation.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4/figs/axialdisp.eps
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4/figs/dislocation.eps
   short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.jpg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/finalslip.spatialdb
   short/3D/PyLith/branches/multifields/examples/3d/tet4/fixeddisp_shear.spatialdb
   short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_elastic.spatialdb
   short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_viscoelastic.spatialdb
   short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh_tet4_1000m.lagrit
   short/3D/PyLith/branches/multifields/examples/3d/tet4/shear.jpg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/shearxy.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/sliptime.spatialdb
   short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4-mesh.jpg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.gmv
   short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.pset
   short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_binary.gmv
   short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_binary.pset
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twohex8.cub
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twohex8.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twoquad4.cub
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twoquad4.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotet4.cub
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotet4.exo
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotri3.cub
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/twotri3.exo
Modified:
   short/3D/PyLith/branches/multifields/
   short/3D/PyLith/branches/multifields/COPYING
   short/3D/PyLith/branches/multifields/Makefile.am
   short/3D/PyLith/branches/multifields/README
   short/3D/PyLith/branches/multifields/TODO
   short/3D/PyLith/branches/multifields/applications/Makefile.am
   short/3D/PyLith/branches/multifields/applications/pylith.in
   short/3D/PyLith/branches/multifields/applications/pylith_prepmesh.in
   short/3D/PyLith/branches/multifields/applications/utilities/Makefile.am
   short/3D/PyLith/branches/multifields/applications/utilities/powerlaw_gendb.py
   short/3D/PyLith/branches/multifields/applications/utilities/pylithinfo
   short/3D/PyLith/branches/multifields/configure.ac
   short/3D/PyLith/branches/multifields/doc/developer/Makefile.am
   short/3D/PyLith/branches/multifields/doc/install/Makefile.am
   short/3D/PyLith/branches/multifields/doc/refguide/Makefile.am
   short/3D/PyLith/branches/multifields/doc/releasenotes/Makefile.am
   short/3D/PyLith/branches/multifields/doc/userguide/Makefile.am
   short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/benchmarks.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/savageprescott/savageprescott.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/boundaryconditions/boundaryconditions.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/components.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/cover/cover.pdf
   short/3D/PyLith/branches/multifields/doc/userguide/cover/cover.svg.gz
   short/3D/PyLith/branches/multifields/doc/userguide/cover/cover_small.jpg
   short/3D/PyLith/branches/multifields/doc/userguide/governingeqns/governingeqns.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/install/install.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.eps
   short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.svg
   short/3D/PyLith/branches/multifields/doc/userguide/intro/intro.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/license.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/materials/materials.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/preface.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/runpylith/runpylith.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/3dhex8.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/friction/friction.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/static/static.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dtet4/3dtet4.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/tutorials/tutorials.lyx
   short/3D/PyLith/branches/multifields/doc/userguide/userguide.lyx
   short/3D/PyLith/branches/multifields/examples/2d/Makefile.am
   short/3D/PyLith/branches/multifields/examples/2d/subduction/Makefile.am
   short/3D/PyLith/branches/multifields/examples/2d/subduction/createbc.jou
   short/3D/PyLith/branches/multifields/examples/2d/subduction/geometry.jou
   short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.exo
   short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.jou
   short/3D/PyLith/branches/multifields/examples/2d/subduction/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/2d/subduction/pylithapp.cfg
   short/3D/PyLith/branches/multifields/examples/2d/subduction/step01.cfg
   short/3D/PyLith/branches/multifields/examples/2d/subduction/step02.cfg
   short/3D/PyLith/branches/multifields/examples/2d/subduction/step03.cfg
   short/3D/PyLith/branches/multifields/examples/3d/Makefile.am
   short/3D/PyLith/branches/multifields/examples/3d/hex8/Makefile.am
   short/3D/PyLith/branches/multifields/examples/3d/hex8/README
   short/3D/PyLith/branches/multifields/examples/3d/hex8/mesh/geometry.jou
   short/3D/PyLith/branches/multifields/examples/3d/hex8/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/3d/hex8/step06.cfg
   short/3D/PyLith/branches/multifields/examples/3d/hex8/step07.cfg
   short/3D/PyLith/branches/multifields/examples/3d/hex8/step08.cfg
   short/3D/PyLith/branches/multifields/examples/3d/hex8/step09.cfg
   short/3D/PyLith/branches/multifields/examples/3d/tet4/Makefile.am
   short/3D/PyLith/branches/multifields/examples/3d/tet4/README
   short/3D/PyLith/branches/multifields/examples/3d/tet4/pylithapp.cfg
   short/3D/PyLith/branches/multifields/examples/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/Makefile.am
   short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/output/Makefile.am
   short/3D/PyLith/branches/multifields/examples/greensfns/Makefile.am
   short/3D/PyLith/branches/multifields/examples/greensfns/hex8/Makefile.am
   short/3D/PyLith/branches/multifields/examples/greensfns/hex8/designdata.py
   short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfimpulses/Makefile.am
   short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfresponses/Makefile.am
   short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfspatialdb/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/journal/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.cfg
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.py
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/ulines/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/vlines/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/Makefile.am
   short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/mksurface.jou
   short/3D/PyLith/branches/multifields/examples/run_examples.sh
   short/3D/PyLith/branches/multifields/examples/twocells/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twohex27-cubit/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twohex8/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twoquad4/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twotet4-geoproj/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twotet4/Makefile.am
   short/3D/PyLith/branches/multifields/examples/twocells/twotri3/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependent.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependent.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependent.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependentPoints.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependentPoints.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/TimeDependentPoints.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/bc/bcfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/BruneSlipFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/BruneSlipFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/BruneSlipFn.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/CohesiveTopology.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/CohesiveTopology.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/ConstRateSlipFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/ConstRateSlipFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/ConstRateSlipFn.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/EqKinSrc.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/EqKinSrc.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/Fault.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/Fault.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/Fault.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesive.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesive.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesive.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveDyn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveDyn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveKin.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveKin.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveLagrange.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveLagrange.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveTract.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/FaultCohesiveTract.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/LiuCosSlipFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/LiuCosSlipFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/LiuCosSlipFn.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/SlipTimeFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/SlipTimeFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/StepSlipFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/StepSlipFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/StepSlipFn.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TimeHistorySlipFn.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TimeHistorySlipFn.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TimeHistorySlipFn.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TopologyOps.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TopologyOps.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TopologyVisitors.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/TopologyVisitors.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/faults/faultsfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/CellGeometry.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/CellGeometry.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/CellGeometry.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Constraint.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Constraint.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Constraint.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitLgDeform.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitLgDeform.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitTet4.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitTet4.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitTri3.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityExplicitTri3.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicitCUDA.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicitCUDA.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicitLgDeform.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/ElasticityImplicitLgDeform.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryHex3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryHex3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine1D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine1D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryLine3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint1D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint1D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryPoint3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryQuad2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryQuad2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryQuad3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryQuad3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTet3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTet3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTri2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTri2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTri3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/GeometryTri3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Integrator.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Integrator.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Integrator.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/IntegratorElasticity.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/IntegratorElasticity.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/IntegratorElasticityLgDeform.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/IntegratorElasticityLgDeform.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature0D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature0D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature0D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din2D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature1Din3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2Din3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2Din3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature2Din3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/Quadrature3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureEngine.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureEngine.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureEngine.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureRefCell.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureRefCell.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/QuadratureRefCell.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/feassemble/feassemblefwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/FrictionModel.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/FrictionModel.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/FrictionModel.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/RateStateAgeing.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/RateStateAgeing.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/SlipWeakening.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/SlipWeakening.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/StaticFriction.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/StaticFriction.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/TimeWeakening.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/TimeWeakening.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/friction/frictionfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/DruckerPrager3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/DruckerPrager3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/DruckerPrager3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/EffectiveStress.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/EffectiveStress.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticIsotropic3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticIsotropic3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticIsotropic3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticMaterial.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticMaterial.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticMaterial.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticPlaneStrain.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticPlaneStrain.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticPlaneStress.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticPlaneStress.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticStrain1D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticStrain1D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticStress1D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ElasticStress1D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellIsotropic3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellIsotropic3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellIsotropic3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellQpQsIsotropic3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellQpQsIsotropic3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/GenMaxwellQpQsIsotropic3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Material.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Material.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Material.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellIsotropic3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellIsotropic3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellIsotropic3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellPlaneStrain.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellPlaneStrain.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/MaxwellPlaneStrain.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Metadata.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Metadata.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/Metadata.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/PowerLaw3D.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/PowerLaw3D.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/PowerLaw3D.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ViscoelasticMaxwell.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/ViscoelasticMaxwell.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/materials/materialsfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/BinaryIO.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/BinaryIO.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/CellFilter.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/CellFilter.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/CellFilterAvg.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/CellFilterAvg.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriter.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriter.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5Ext.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5Ext.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterHDF5Ext.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterVTK.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterVTK.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/DataWriterVTK.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFile.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFile.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFileAscii.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFileAscii.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFileAscii.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFileBinary.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/GMVFileBinary.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/HDF5.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/HDF5.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshBuilder.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshBuilder.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIO.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIO.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIO.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOAscii.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOAscii.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOAscii.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOCubit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOCubit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOCubit.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOHDF5.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOHDF5.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOHDF5.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOLagrit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOLagrit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOLagrit.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOSieve.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOSieve.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/MeshIOSieve.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/OutputManager.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/OutputManager.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/OutputSolnSubset.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/OutputSolnSubset.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFile.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFile.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFileAscii.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFileAscii.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFileAscii.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFileBinary.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/PsetFileBinary.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/UCDFaultFile.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/UCDFaultFile.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/VertexFilter.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/VertexFilter.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/VertexFilterVecNorm.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/VertexFilterVecNorm.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/Xdmf.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/Xdmf.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/meshio/meshiofwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Explicit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Explicit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Formulation.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Formulation.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Implicit.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Implicit.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Solver.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/Solver.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverLinear.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverLinear.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverLumped.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverLumped.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverNonlinear.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/SolverNonlinear.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/problems/problemsfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerHex8.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerHex8.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerQuad4.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerQuad4.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerTet4.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerTet4.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerTri3.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/CellRefinerTri3.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Distributor.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Distributor.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Field.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Field.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Field.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/FieldBase.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/FieldBase.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Fields.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Fields.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/ISectionSpaces.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/ISectionSpaces.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Jacobian.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Jacobian.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Mesh.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Mesh.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/Mesh.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshOps.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshOps.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshOrder.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshOrder.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshOrder.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshRefiner.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/MeshRefiner.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineEdges2.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineEdges2.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineFace4Edges2.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineFace4Edges2.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineUniform.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineUniform.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineVol8Face4Edges2.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/RefineVol8Face4Edges2.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/ReverseCuthillMcKee.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/ReverseCuthillMcKee.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/SolutionFields.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/SolutionFields.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/SubMesh.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/SubMesh.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/SubMesh.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/topology/topologyfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/EventLogger.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/EventLogger.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/EventLogger.icc
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/Makefile.am
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/TestArray.cc
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/TestArray.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/array.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/arrayfwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/constdefs.h
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/lapack.h
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/macrodefs.h
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/petscerror.h
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/petscfwd.h
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/sievefwd.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/sievetypes.hh
   short/3D/PyLith/branches/multifields/libsrc/pylith/utils/utilsfwd.hh
   short/3D/PyLith/branches/multifields/modulesrc/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/bc/AbsorbingDampers.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/BCIntegratorSubMesh.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/BoundaryCondition.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/BoundaryConditionPoints.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/DirichletBC.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/DirichletBoundary.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/bc/Neumann.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/PointForce.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/TimeDependent.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/TimeDependentPoints.i
   short/3D/PyLith/branches/multifields/modulesrc/bc/bc.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/BruneSlipFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/ConstRateSlipFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/EqKinSrc.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/Fault.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/FaultCohesive.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/FaultCohesiveDyn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/FaultCohesiveKin.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/FaultCohesiveLagrange.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/FaultCohesiveTract.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/LiuCosSlipFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/faults/SlipTimeFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/StepSlipFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/TimeHistorySlipFn.i
   short/3D/PyLith/branches/multifields/modulesrc/faults/faults.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/CellGeometry.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/Constraint.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityExplicit.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityExplicitLgDeform.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityExplicitTet4.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityExplicitTri3.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityImplicit.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityImplicitCUDA.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/ElasticityImplicitLgDeform.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryHex3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryLine1D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryLine2D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryLine3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryPoint1D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryPoint2D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryPoint3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryQuad2D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryQuad3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryTet3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryTri2D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/GeometryTri3D.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/Integrator.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/IntegratorElasticity.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/IntegratorElasticityLgDeform.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/Quadrature.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/QuadratureRefCell.i
   short/3D/PyLith/branches/multifields/modulesrc/feassemble/feassemble.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/FrictionModel.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/friction/RateStateAgeing.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/SlipWeakening.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/StaticFriction.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/TimeWeakening.i
   short/3D/PyLith/branches/multifields/modulesrc/friction/friction.i
   short/3D/PyLith/branches/multifields/modulesrc/include/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/include/chararray.i
   short/3D/PyLith/branches/multifields/modulesrc/include/doublearray.i
   short/3D/PyLith/branches/multifields/modulesrc/include/eqkinsrcarray.i
   short/3D/PyLith/branches/multifields/modulesrc/include/integratorarray.i
   short/3D/PyLith/branches/multifields/modulesrc/include/submeshfield.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/DruckerPrager3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticIsotropic3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticMaterial.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticPlaneStrain.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticPlaneStress.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticStrain1D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/ElasticStress1D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/GenMaxwellIsotropic3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/GenMaxwellQpQsIsotropic3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/materials/Material.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/MaxwellIsotropic3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/MaxwellPlaneStrain.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/PowerLaw3D.i
   short/3D/PyLith/branches/multifields/modulesrc/materials/materials.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/CellFilter.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/CellFilterAvg.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/DataWriter.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/DataWriterHDF5.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/DataWriterHDF5Ext.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/DataWriterVTK.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/meshio/MeshIOAscii.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/MeshIOCubit.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/MeshIOLagrit.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/MeshIOObj.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/MeshIOSieve.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/OutputManager.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/OutputSolnSubset.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/VertexFilter.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/VertexFilterVecNorm.i
   short/3D/PyLith/branches/multifields/modulesrc/meshio/meshio.i
   short/3D/PyLith/branches/multifields/modulesrc/mpi/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/mpi/mpi.i
   short/3D/PyLith/branches/multifields/modulesrc/mpi/mpi_comm.i
   short/3D/PyLith/branches/multifields/modulesrc/mpi/mpi_error.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/Explicit.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/Formulation.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/Implicit.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/problems/Solver.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/SolverLinear.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/SolverLumped.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/SolverNonlinear.i
   short/3D/PyLith/branches/multifields/modulesrc/problems/problems.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/Distributor.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/Field.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/FieldBase.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/Fields.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/Jacobian.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/topology/Mesh.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/MeshOps.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/RefineUniform.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/ReverseCuthillMcKee.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/SolutionFields.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/SubMesh.i
   short/3D/PyLith/branches/multifields/modulesrc/topology/topology.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/EventLogger.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/Makefile.am
   short/3D/PyLith/branches/multifields/modulesrc/utils/TestArray.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/petsc.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/petsc_general.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/petsc_mat.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/petsc_memory.i
   short/3D/PyLith/branches/multifields/modulesrc/utils/utils.i
   short/3D/PyLith/branches/multifields/playpen/closure/Makefile.am
   short/3D/PyLith/branches/multifields/playpen/closure/TestClosure.cc
   short/3D/PyLith/branches/multifields/playpen/closure/TestClosure.hh
   short/3D/PyLith/branches/multifields/playpen/closure/test_cubit.cc
   short/3D/PyLith/branches/multifields/playpen/closure/test_lagrit.cc
   short/3D/PyLith/branches/multifields/playpen/euler/euler.py
   short/3D/PyLith/branches/multifields/playpen/euler/grabfaces.py
   short/3D/PyLith/branches/multifields/playpen/euler/grabpoints.py
   short/3D/PyLith/branches/multifields/playpen/euler/poleconvert.py
   short/3D/PyLith/branches/multifields/playpen/euler/transform.py
   short/3D/PyLith/branches/multifields/playpen/memcheck/Makefile.am
   short/3D/PyLith/branches/multifields/playpen/memcheck/configure.ac
   short/3D/PyLith/branches/multifields/playpen/memcheck/memory_usage.py
   short/3D/PyLith/branches/multifields/playpen/memcheck/runtet4.cc
   short/3D/PyLith/branches/multifields/playpen/memcheck/tidy.sh
   short/3D/PyLith/branches/multifields/playpen/postproc/fault/faultinfo.py
   short/3D/PyLith/branches/multifields/playpen/postproc/stressinfo.py
   short/3D/PyLith/branches/multifields/playpen/postproc/vtkcff.py
   short/3D/PyLith/branches/multifields/playpen/postproc/vtkdiff.py
   short/3D/PyLith/branches/multifields/playpen/powerlaw/powerlaw_gendb.py
   short/3D/PyLith/branches/multifields/playpen/savpres_ss/savpres_ss.py
   short/3D/PyLith/branches/multifields/playpen/tsurf/tsurftooff
   short/3D/PyLith/branches/multifields/playpen/verification/verify.py
   short/3D/PyLith/branches/multifields/pylith/Makefile.am
   short/3D/PyLith/branches/multifields/pylith/__init__.py
   short/3D/PyLith/branches/multifields/pylith/apps/PetscApplication.py
   short/3D/PyLith/branches/multifields/pylith/apps/PrepMeshApp.py
   short/3D/PyLith/branches/multifields/pylith/apps/PyLithApp.py
   short/3D/PyLith/branches/multifields/pylith/apps/__init__.py
   short/3D/PyLith/branches/multifields/pylith/bc/AbsorbingDampers.py
   short/3D/PyLith/branches/multifields/pylith/bc/BoundaryCondition.py
   short/3D/PyLith/branches/multifields/pylith/bc/DirichletBC.py
   short/3D/PyLith/branches/multifields/pylith/bc/DirichletBoundary.py
   short/3D/PyLith/branches/multifields/pylith/bc/Neumann.py
   short/3D/PyLith/branches/multifields/pylith/bc/PointForce.py
   short/3D/PyLith/branches/multifields/pylith/bc/TimeDependent.py
   short/3D/PyLith/branches/multifields/pylith/bc/TimeDependentPoints.py
   short/3D/PyLith/branches/multifields/pylith/bc/ZeroDispDB.py
   short/3D/PyLith/branches/multifields/pylith/bc/__init__.py
   short/3D/PyLith/branches/multifields/pylith/faults/BruneSlipFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/ConstRateSlipFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/EqKinSrc.py
   short/3D/PyLith/branches/multifields/pylith/faults/Fault.py
   short/3D/PyLith/branches/multifields/pylith/faults/FaultCohesive.py
   short/3D/PyLith/branches/multifields/pylith/faults/FaultCohesiveDyn.py
   short/3D/PyLith/branches/multifields/pylith/faults/FaultCohesiveKin.py
   short/3D/PyLith/branches/multifields/pylith/faults/FaultCohesiveTract.py
   short/3D/PyLith/branches/multifields/pylith/faults/LiuCosSlipFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/SingleRupture.py
   short/3D/PyLith/branches/multifields/pylith/faults/SlipTimeFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/StepSlipFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/TimeHistorySlipFn.py
   short/3D/PyLith/branches/multifields/pylith/faults/__init__.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/CellGeometry.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/Constraint.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityExplicit.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityExplicitLgDeform.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityExplicitTet4.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityExplicitTri3.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityImplicit.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityImplicitCUDA.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ElasticityImplicitLgDeform.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/FIATLagrange.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/FIATSimplex.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/Integrator.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/IntegratorElasticity.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/IntegratorElasticityLgDeform.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/Quadrature.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/ReferenceCell.py
   short/3D/PyLith/branches/multifields/pylith/feassemble/__init__.py
   short/3D/PyLith/branches/multifields/pylith/friction/FrictionModel.py
   short/3D/PyLith/branches/multifields/pylith/friction/RateStateAgeing.py
   short/3D/PyLith/branches/multifields/pylith/friction/SlipWeakening.py
   short/3D/PyLith/branches/multifields/pylith/friction/StaticFriction.py
   short/3D/PyLith/branches/multifields/pylith/friction/TimeWeakening.py
   short/3D/PyLith/branches/multifields/pylith/friction/__init__.py
   short/3D/PyLith/branches/multifields/pylith/materials/DruckerPrager3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticIsotropic3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticMaterial.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticPlaneStrain.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticPlaneStress.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticStrain1D.py
   short/3D/PyLith/branches/multifields/pylith/materials/ElasticStress1D.py
   short/3D/PyLith/branches/multifields/pylith/materials/GenMaxwellIsotropic3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/GenMaxwellQpQsIsotropic3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/Homogeneous.py
   short/3D/PyLith/branches/multifields/pylith/materials/Material.py
   short/3D/PyLith/branches/multifields/pylith/materials/MaxwellIsotropic3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/MaxwellPlaneStrain.py
   short/3D/PyLith/branches/multifields/pylith/materials/PowerLaw3D.py
   short/3D/PyLith/branches/multifields/pylith/materials/__init__.py
   short/3D/PyLith/branches/multifields/pylith/meshio/CellFilter.py
   short/3D/PyLith/branches/multifields/pylith/meshio/CellFilterAvgMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/CellFilterAvgSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriter.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5Ext.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5ExtMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5ExtSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5ExtSubSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5Mesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5SubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterHDF5SubSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterVTK.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterVTKMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterVTKSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/DataWriterVTKSubSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/MeshIOAscii.py
   short/3D/PyLith/branches/multifields/pylith/meshio/MeshIOCubit.py
   short/3D/PyLith/branches/multifields/pylith/meshio/MeshIOLagrit.py
   short/3D/PyLith/branches/multifields/pylith/meshio/MeshIOObj.py
   short/3D/PyLith/branches/multifields/pylith/meshio/MeshIOSieve.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputDirichlet.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputFaultDyn.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputFaultKin.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputManager.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputManagerMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputManagerSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputMatElastic.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputNeumann.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputSoln.py
   short/3D/PyLith/branches/multifields/pylith/meshio/OutputSolnSubset.py
   short/3D/PyLith/branches/multifields/pylith/meshio/SingleOutput.py
   short/3D/PyLith/branches/multifields/pylith/meshio/VertexFilter.py
   short/3D/PyLith/branches/multifields/pylith/meshio/VertexFilterVecNormMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/VertexFilterVecNormSubMesh.py
   short/3D/PyLith/branches/multifields/pylith/meshio/__init__.py
   short/3D/PyLith/branches/multifields/pylith/mpi/Communicator.py
   short/3D/PyLith/branches/multifields/pylith/mpi/__init__.py
   short/3D/PyLith/branches/multifields/pylith/perf/Fault.py
   short/3D/PyLith/branches/multifields/pylith/perf/Field.py
   short/3D/PyLith/branches/multifields/pylith/perf/GlobalOrder.py
   short/3D/PyLith/branches/multifields/pylith/perf/Jacobian.py
   short/3D/PyLith/branches/multifields/pylith/perf/Logger.py
   short/3D/PyLith/branches/multifields/pylith/perf/Material.py
   short/3D/PyLith/branches/multifields/pylith/perf/Memory.py
   short/3D/PyLith/branches/multifields/pylith/perf/MemoryLogger.py
   short/3D/PyLith/branches/multifields/pylith/perf/Mesh.py
   short/3D/PyLith/branches/multifields/pylith/perf/VertexGroup.py
   short/3D/PyLith/branches/multifields/pylith/perf/__init__.py
   short/3D/PyLith/branches/multifields/pylith/problems/Explicit.py
   short/3D/PyLith/branches/multifields/pylith/problems/ExplicitLgDeform.py
   short/3D/PyLith/branches/multifields/pylith/problems/ExplicitLumped.py
   short/3D/PyLith/branches/multifields/pylith/problems/ExplicitLumpedTet4.py
   short/3D/PyLith/branches/multifields/pylith/problems/ExplicitLumpedTri3.py
   short/3D/PyLith/branches/multifields/pylith/problems/Formulation.py
   short/3D/PyLith/branches/multifields/pylith/problems/Implicit.py
   short/3D/PyLith/branches/multifields/pylith/problems/ImplicitCUDA.py
   short/3D/PyLith/branches/multifields/pylith/problems/ImplicitLgDeform.py
   short/3D/PyLith/branches/multifields/pylith/problems/Problem.py
   short/3D/PyLith/branches/multifields/pylith/problems/Solver.py
   short/3D/PyLith/branches/multifields/pylith/problems/SolverLinear.py
   short/3D/PyLith/branches/multifields/pylith/problems/SolverLumped.py
   short/3D/PyLith/branches/multifields/pylith/problems/SolverNonlinear.py
   short/3D/PyLith/branches/multifields/pylith/problems/TimeDependent.py
   short/3D/PyLith/branches/multifields/pylith/problems/TimeStep.py
   short/3D/PyLith/branches/multifields/pylith/problems/TimeStepAdapt.py
   short/3D/PyLith/branches/multifields/pylith/problems/TimeStepUniform.py
   short/3D/PyLith/branches/multifields/pylith/problems/TimeStepUser.py
   short/3D/PyLith/branches/multifields/pylith/problems/__init__.py
   short/3D/PyLith/branches/multifields/pylith/tests/Fault.py
   short/3D/PyLith/branches/multifields/pylith/tests/PhysicalProperties.py
   short/3D/PyLith/branches/multifields/pylith/tests/Solution.py
   short/3D/PyLith/branches/multifields/pylith/tests/StateVariables.py
   short/3D/PyLith/branches/multifields/pylith/tests/__init__.py
   short/3D/PyLith/branches/multifields/pylith/topology/Distributor.py
   short/3D/PyLith/branches/multifields/pylith/topology/Field.py
   short/3D/PyLith/branches/multifields/pylith/topology/Fields.py
   short/3D/PyLith/branches/multifields/pylith/topology/Jacobian.py
   short/3D/PyLith/branches/multifields/pylith/topology/JacobianViewer.py
   short/3D/PyLith/branches/multifields/pylith/topology/Mesh.py
   short/3D/PyLith/branches/multifields/pylith/topology/MeshGenSimple.py
   short/3D/PyLith/branches/multifields/pylith/topology/MeshGenerator.py
   short/3D/PyLith/branches/multifields/pylith/topology/MeshImporter.py
   short/3D/PyLith/branches/multifields/pylith/topology/MeshImporterDist.py
   short/3D/PyLith/branches/multifields/pylith/topology/MeshRefiner.py
   short/3D/PyLith/branches/multifields/pylith/topology/RefineUniform.py
   short/3D/PyLith/branches/multifields/pylith/topology/ReverseCuthillMcKee.py
   short/3D/PyLith/branches/multifields/pylith/topology/SolutionFields.py
   short/3D/PyLith/branches/multifields/pylith/topology/SubMesh.py
   short/3D/PyLith/branches/multifields/pylith/topology/__init__.py
   short/3D/PyLith/branches/multifields/pylith/utils/CheckpointTimer.py
   short/3D/PyLith/branches/multifields/pylith/utils/CppData.py
   short/3D/PyLith/branches/multifields/pylith/utils/EmptyBin.py
   short/3D/PyLith/branches/multifields/pylith/utils/EventLogger.py
   short/3D/PyLith/branches/multifields/pylith/utils/NullComponent.py
   short/3D/PyLith/branches/multifields/pylith/utils/PetscComponent.py
   short/3D/PyLith/branches/multifields/pylith/utils/PetscManager.py
   short/3D/PyLith/branches/multifields/pylith/utils/VTKDataReader.py
   short/3D/PyLith/branches/multifields/pylith/utils/__init__.py
   short/3D/PyLith/branches/multifields/pylith/utils/importing.py
   short/3D/PyLith/branches/multifields/pylith/utils/profiling.py
   short/3D/PyLith/branches/multifields/pylith/utils/testarray.py
   short/3D/PyLith/branches/multifields/setup.py
   short/3D/PyLith/branches/multifields/share/Makefile.am
   short/3D/PyLith/branches/multifields/subpackage.am
   short/3D/PyLith/branches/multifields/templates/Makefile.am
   short/3D/PyLith/branches/multifields/templates/friction/Makefile.am
   short/3D/PyLith/branches/multifields/templates/friction/ViscousFriction.cc
   short/3D/PyLith/branches/multifields/templates/friction/ViscousFriction.hh
   short/3D/PyLith/branches/multifields/templates/friction/ViscousFriction.i
   short/3D/PyLith/branches/multifields/templates/friction/ViscousFriction.py
   short/3D/PyLith/branches/multifields/templates/friction/__init__.py
   short/3D/PyLith/branches/multifields/templates/friction/configure.ac
   short/3D/PyLith/branches/multifields/templates/friction/frictioncontrib.i
   short/3D/PyLith/branches/multifields/templates/friction/tests/Makefile.am
   short/3D/PyLith/branches/multifields/templates/friction/tests/TestViscousFriction.py
   short/3D/PyLith/branches/multifields/templates/friction/tests/testcontrib.py
   short/3D/PyLith/branches/multifields/templates/materials/Makefile.am
   short/3D/PyLith/branches/multifields/templates/materials/PlaneStrainState.cc
   short/3D/PyLith/branches/multifields/templates/materials/PlaneStrainState.hh
   short/3D/PyLith/branches/multifields/templates/materials/PlaneStrainState.i
   short/3D/PyLith/branches/multifields/templates/materials/PlaneStrainState.py
   short/3D/PyLith/branches/multifields/templates/materials/__init__.py
   short/3D/PyLith/branches/multifields/templates/materials/configure.ac
   short/3D/PyLith/branches/multifields/templates/materials/materialscontrib.i
   short/3D/PyLith/branches/multifields/templates/materials/tests/Makefile.am
   short/3D/PyLith/branches/multifields/templates/materials/tests/TestPlaneStrainState.py
   short/3D/PyLith/branches/multifields/templates/materials/tests/testcontrib.py
   short/3D/PyLith/branches/multifields/tests/2d/Makefile.am
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/pylithapp.cfg
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/ratestate_stable.cfg
   short/3D/PyLith/branches/multifields/tests/2d/frictionslide/ratestate_weak.cfg
   short/3D/PyLith/branches/multifields/tests/2d/maxwell/Makefile.am
   short/3D/PyLith/branches/multifields/tests/2d/slipdir/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/matprops/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex27/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex27/config/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex27/mesh/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex27/results/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex27/spatialdb/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex8/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex8/config/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex8/mesh/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex8/results/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/plasticity/threehex8/spatialdb/Makefile.am
   short/3D/PyLith/branches/multifields/tests/3d/slipdir/Makefile.am
   short/3D/PyLith/branches/multifields/tests/Makefile.am
   short/3D/PyLith/branches/multifields/tests/distribute/MesherApp.py
   short/3D/PyLith/branches/multifields/tests/distribute/testdistribute.py
   short/3D/PyLith/branches/multifields/tests/topology/Makefile.am
   short/3D/PyLith/branches/multifields/tests/topology/test_meshmem.py
   short/3D/PyLith/branches/multifields/tests/topology/test_topology.cc
   short/3D/PyLith/branches/multifields/tests_auto/1d/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/TestExtensionDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/TestExtensionForce.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/TestLine2.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line2/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line3/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/1d/line3/TestAxial.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line3/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line3/TestLine3.py
   short/3D/PyLith/branches/multifields/tests_auto/1d/line3/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestAxialDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestDislocation2.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestFrictionCompression.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestFrictionOpening.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestFrictionShearSliding.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestFrictionShearStick.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestLgDeformRigidBody.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestLgDeformTraction.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestQuad4.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestShearDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestSlipWeakeningCompression.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestSlipWeakeningOpening.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestSlipWeakeningShearSliding.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/TestSlipWeakeningShearStick.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/dislocation2_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/dislocation_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/friction_compression_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/friction_opening_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/friction_shear_sliding_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/friction_shear_stick_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/lgdeformtraction_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/rigidbody_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/rigidbody_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/sheardisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/sheardisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/slipweakening_compression_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/slipweakening_opening_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/slipweakening_shear_sliding_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/slipweakening_shear_stick_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad4/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/TestAxialDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/dislocation_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/quad9/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/TestAxialDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/TestDislocation2.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/TestShearDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/TestTri3.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/sheardisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/sheardisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri3/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/TestAxialDisp.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/2d/tri6/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3d/hex8/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3d/hex8/TestAxialElasticIsotropic.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/hex8/TestShearElasticIsotropic.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/hex8/TestShearPlaneStrain.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/hex8/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/tet4/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3d/tet4/TestAxialElasticIsotropic.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/tet4/TestDislocation.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/tet4/TestShearElasticIsotropic.py
   short/3D/PyLith/branches/multifields/tests_auto/3d/tet4/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex27/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex27/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex27/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/TestHex8.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/TestLgDeformRigidBody.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/TestLgDeformTraction.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/lgdeformtraction_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/rigidbody_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/rigidbody_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/hex8/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet10/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet10/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet10/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet10/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet4/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet4/axialdisp_gendb.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet4/axialdisp_soln.py
   short/3D/PyLith/branches/multifields/tests_auto/3dnew/tet4/testpylith.py
   short/3D/PyLith/branches/multifields/tests_auto/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/petsc/Makefile.am
   short/3D/PyLith/branches/multifields/tests_auto/petsc/TestPetscApp.py
   short/3D/PyLith/branches/multifields/tests_auto/petsc/testpetsc.py
   short/3D/PyLith/branches/multifields/tidy.sh
   short/3D/PyLith/branches/multifields/unittests/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampers.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampers.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestAbsorbingDampersTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryCondition.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryCondition.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryConditionPoints.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryConditionPoints.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestBoundaryMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBC.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBC.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCLine2b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCLine2b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMulti.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMulti.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMultiTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMultiTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMultiTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCMultiTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBCTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundary.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundary.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestDirichletBoundaryTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumann.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumann.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestNeumannTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForce.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForce.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestPointForceTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestTimeDependent.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestTimeDependent.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestTimeDependentPoints.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/TestTimeDependentPoints.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/AbsorbingDampersDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/BoundaryMeshDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataLine2b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataLine2b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMulti.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMulti.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMultiTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMultiTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMultiTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataMultiTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/DirichletDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/NeumannDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/PointForceDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/data/absorbingdampers.py
   short/3D/PyLith/branches/multifields/unittests/libtests/bc/test_bc.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestBruneSlipFn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestBruneSlipFn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestConstRateSlipFn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestConstRateSlipFn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestEqKinSrc.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestEqKinSrc.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFault.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFault.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesive.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesive.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDyn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDyn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTri3d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveDynTri3d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKin.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKin.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinQuad4e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinQuad4e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcs.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcs.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinSrcsTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTet4f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTri3d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestFaultCohesiveKinTri3d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestLiuCosSlipFn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestLiuCosSlipFn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestStepSlipFn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestStepSlipFn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestTimeHistorySlipFn.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/TestTimeHistorySlipFn.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8Lagrange.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8Lagrange.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8c.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8c.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8g.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8g.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8h.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8h.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8i.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataHex8i.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataLine2Lagrange.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataLine2Lagrange.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4Lagrange.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4Lagrange.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4c.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4c.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4g.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4g.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4h.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataQuad4h.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4Lagrange.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4Lagrange.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4c.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4c.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4g.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4g.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4h.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4h.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4i.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4i.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4j.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTet4j.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3Lagrange.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3Lagrange.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3b.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3b.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3c.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3c.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDataTri3f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTri3d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveDynDataTri3d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataQuad4e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataQuad4e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4e.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4e.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4f.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTet4f.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTri3d.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinDataTri3d.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/faults/test_faults.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestCellGeometry.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestCellGeometry.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitGrav3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeform3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitLgDeformGrav3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityExplicitTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitGrav3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryHex3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryHex3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryLine3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryPoint3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryQuad2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryQuad2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryQuad3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryQuad3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTet3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTet3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTri2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTri2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTri3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestGeometryTri3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegrator.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegrator.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegratorElasticity.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegratorElasticity.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegratorElasticityLgDeform.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestIntegratorElasticityLgDeform.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature0D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature0D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1Din2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1Din2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1Din3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature1Din3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature2Din3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature2Din3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadrature3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadratureEngine.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadratureEngine.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadratureRefCell.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/TestQuadratureRefCell.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/CellGeomData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/CellGeomData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticPlaneStrain.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicit.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitGravData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeform.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityExplicitLgDeformGravData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicit.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitGravData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityLgDeformApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/ElasticityLgDeformExplicitApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataHex3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataHex3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataLine3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataPoint3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataQuad2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataQuad2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataQuad3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataQuad3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTet3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTet3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTri2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTri2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTri3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/GeomDataTri3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorInertia1DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorInertia3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/IntegratorInertia3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/MaterialElasticStrain1D.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1Din2DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1Din2DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1Din3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh1Din3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2Din3DLinearXY.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2Din3DLinearXYZ.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2Din3DLinearXZ.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2Din3DLinearYZ.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh2Din3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Mesh3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1Din2DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1Din2DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1Din3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature1Din3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature2DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature2DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature2Din3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature2Din3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Quadrature3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData1Din3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXY.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXY.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXYZ.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXYZ.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXZ.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearXZ.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearYZ.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DLinearYZ.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData2Din3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData3DLinear.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData3DLinear.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData3DQuadratic.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/QuadratureData3DQuadratic.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution1DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution1DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution2DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution2DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution3DLinear.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/Solution3DQuadratic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/feutils.py
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/generate.sh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/data/header.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/feassemble/test_feassemble.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestFrictionModel.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestFrictionModel.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestRateStateAgeing.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestRateStateAgeing.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestSlipWeakening.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestSlipWeakening.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestStaticFriction.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/TestStaticFriction.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/FrictionModelData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/FrictionModelData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/RateStateAgeingData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/RateStateAgeingData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/SlipWeakeningData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/SlipWeakeningData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/StaticFrictionData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/StaticFrictionData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/TimeWeakeningData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/data/TimeWeakeningData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/friction/test_friction.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestDruckerPrager3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestDruckerPrager3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestEffectiveStress.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestEffectiveStress.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticIsotropic3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticIsotropic3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticMaterial.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticMaterial.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticPlaneStrain.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticPlaneStrain.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticPlaneStress.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticPlaneStress.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticStrain1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticStrain1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticStress1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestElasticStress1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellIsotropic3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellIsotropic3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellQpQsIsotropic3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestGenMaxwellQpQsIsotropic3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaterial.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaterial.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaxwellIsotropic3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaxwellIsotropic3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaxwellPlaneStrain.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMaxwellPlaneStrain.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMetadata.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestMetadata.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestPowerLaw3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/TestPowerLaw3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/DruckerPrager3DTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticIsotropic3DData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticIsotropic3DData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticMaterialApp.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticMaterialData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticMaterialData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStrain.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStrainData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStrainData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStress.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStressData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticPlaneStressData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStrain1D.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStrain1DData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStrain1DData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStress1D.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStress1DData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/ElasticStress1DData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellIsotropic3DTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/GenMaxwellQpQsIsotropic3DTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaterialData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaterialData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellIsotropic3DTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/MaxwellPlaneStrainTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DElastic.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DElasticData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DElasticData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DTimeDep.py
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DTimeDepData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/PowerLaw3DTimeDepData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/generate.sh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/data/header.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/materials/test_materials.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestCellFilterAvg.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestCellFilterAvg.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterBCMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterBCMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterFaultMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterFaultMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5BCMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5BCMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5BCMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5BCMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtBCMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtBCMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtBCMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtBCMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtFaultMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtFaultMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtFaultMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtFaultMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMatMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMatMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtSubMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5ExtSubMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5FaultMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5FaultMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5FaultMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5FaultMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5MatMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5MatMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5Mesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5Mesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5MeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5MeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5SubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5SubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5SubMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterHDF5SubMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTK.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTK.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKBCMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKBCMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKBCMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKBCMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKFaultMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKFaultMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKFaultMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKFaultMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMatMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMatMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKSubMeshCases.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestDataWriterVTKSubMeshCases.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestHDF5.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestHDF5.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIO.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIO.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOAscii.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOAscii.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOCubit.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOCubit.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOLagrit.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestMeshIOLagrit.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestOutputManager.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestOutputManager.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestOutputSolnSubset.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestOutputSolnSubset.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestVertexFilterVecNorm.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestVertexFilterVecNorm.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestXdmf.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/TestXdmf.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataBCMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataFaultMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMatMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterHDF5DataSubMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataBCMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataFaultMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMatMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshHex8.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshHex8.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshLine2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshLine2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshQuad4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshQuad4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshTet4.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshTet4.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshTri3.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/DataWriterVTKDataSubMeshTri3.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1Din2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1Din2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1Din3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData1Din3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData2D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData2D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData2Din3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData2Din3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData3D.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData3D.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData3DIndexOne.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshData3DIndexOne.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitHex.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitHex.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitQuad.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitQuad.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitTet.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitTet.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitTri.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataCubitTri.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataLagritTet.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/MeshDataLagritTet.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/cube2.lagrit
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_bc.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_bc_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_bc_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_fault.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_fault_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_fault_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_mat.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_mat_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_mat_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_surf.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_surf_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_surf_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/hex8_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_mat.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_mat_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_mat_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_surf.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_surf_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_surf_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/line2_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_bc.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_bc_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_bc_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_fault.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_fault_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_fault_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_mat.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_mat_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_mat_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_surf.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_surf_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_surf_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/quad4_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_bc.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_bc_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_bc_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_fault.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_fault_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_fault_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_mat.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_mat_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_mat_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_surf.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_surf_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_surf_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tet4_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_bc.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_bc_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_bc_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_fault.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_fault_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_fault_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_mat.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_mat_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_mat_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_surf.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_surf_cell.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_surf_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/data/tri3_vertex.h5
   short/3D/PyLith/branches/multifields/unittests/libtests/meshio/test_meshio.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldsMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldsMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldsSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestFieldsSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestJacobian.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestJacobian.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestMeshOps.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestMeshOps.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestRefineUniform.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestRefineUniform.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestSolutionFields.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestSolutionFields.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestSubMesh.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/TestSubMesh.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesive.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesive.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveHex8Level2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveHex8Level2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveHex8Level2Fault1.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveHex8Level2Fault1.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveQuad4Level2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveQuad4Level2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveQuad4Level2Fault1.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveQuad4Level2Fault1.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTet4Level2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTet4Level2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTet4Level2Fault1.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTet4Level2Fault1.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTri3Level2.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTri3Level2.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTri3Level2Fault1.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/data/MeshDataCohesiveTri3Level2Fault1.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/topology/test_topology.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/utils/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/libtests/utils/TestEventLogger.cc
   short/3D/PyLith/branches/multifields/unittests/libtests/utils/TestEventLogger.hh
   short/3D/PyLith/branches/multifields/unittests/libtests/utils/test_utils.cc
   short/3D/PyLith/branches/multifields/unittests/pytests/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/TestAbsorbingDampers.py
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/TestDirichletBC.py
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/TestDirichletBoundary.py
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/TestNeumann.py
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/bc/testbc.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestBruneSlipFn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestConstRateSlipFn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestEqKinSrc.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestFaultCohesiveDyn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestFaultCohesiveKin.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestLiuCosSlipFn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestSingleRupture.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestStepSlipFn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/TestTimeHistorySlipFn.py
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/faults/testfaults.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestCellGeometry.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestElasticityExplicit.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestElasticityExplicitLgDeform.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestElasticityImplicit.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestElasticityImplicitLgDeform.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestFIATLagrange.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestFIATSimplex.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestMeshQuadrature.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/TestSubMeshQuadrature.py
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/feassemble/testfeassemble.py
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/TestFrictionModel.py
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/TestRateStateAgeing.py
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/TestSlipWeakening.py
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/TestStaticFriction.py
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/friction/testfriction.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestDruckerPrager3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticMaterial.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticPlaneStrain.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticPlaneStress.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticStrain1D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestElasticStress1D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestGenMaxwellIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestGenMaxwellQpQsIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestHomogeneous.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestMaterial.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestMaxwellIsotropic3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestMaxwellPlaneStrain.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/TestPowerLaw3D.py
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/materials/testmaterials.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestCellFilterAvg.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestDataWriterHDF5.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestDataWriterVTK.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestMeshIOAscii.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestMeshIOCubit.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestMeshIOLagrit.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestOutputManagerMesh.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestOutputManagerSubMesh.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestOutputSolnSubset.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestSingleOutput.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/TestVertexFilterVecNorm.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/testcubit.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/testhdf5.py
   short/3D/PyLith/branches/multifields/unittests/pytests/meshio/testmeshio.py
   short/3D/PyLith/branches/multifields/unittests/pytests/mpi/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/mpi/TestCommunicator.py
   short/3D/PyLith/branches/multifields/unittests/pytests/mpi/testmpi.py
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/TestTimeStep.py
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/TestTimeStepAdapt.py
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/TestTimeStepUniform.py
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/TestTimeStepUser.py
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/problems/testproblems.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestFieldBase.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestJacobian.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMesh.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMeshField.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMeshFields.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMeshGenSimple.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMeshGenerator.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestMeshImporter.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestRefineUniform.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestSolutionFields.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/TestSubMesh.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/data/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/testgensimple.py
   short/3D/PyLith/branches/multifields/unittests/pytests/topology/testtopology.py
   short/3D/PyLith/branches/multifields/unittests/pytests/utils/Makefile.am
   short/3D/PyLith/branches/multifields/unittests/pytests/utils/TestEventLogger.py
   short/3D/PyLith/branches/multifields/unittests/pytests/utils/TestPetscManager.py
   short/3D/PyLith/branches/multifields/unittests/pytests/utils/testmanager.py
   short/3D/PyLith/branches/multifields/unittests/pytests/utils/testutils.py
Log:
Merge from trunk.


Property changes on: short/3D/PyLith/branches/multifields
___________________________________________________________________
Name: buildbot:config
   - # -*- cfg -*-
# vim:set ft=cfg:

[packaging]

bin_dirs =
    bin

lib_dirs =
    lib

misc_dirs =
    etc
    include
    share

files =
    setup.sh


strip_list =
    lib/libpylith
    lib/libspatialdata

exclude =
    bin/gcc
    bin/gccbug
    bin/g++
    bin/gfortran
    bin/cpp
    bin/bfort
    bin/f2py
    bin/x86_64-unknown-linux-gnu-c++*
    bin/x86_64-unknown-linux-gnu-g++*
    bin/x86_64-unknown-linux-gnu-gcc*
    bin/x86_64-unknown-linux-gnu-gcc-4.5.2*
    bin/x86_64-unknown-linux-gnu-gfortran*
    share/man/man1/cpp.1
    share/man/man1/g++.1
    share/man/man1/gcc.1
    share/man/man1/gfotran.1
    share/man/man3/*
    
    lib/*.a

scripts =
    pylith
    pylithinfo
    pyconvert.py
    gensimpledb.py


   + # -*- cfg -*-

[packaging]

bin_dirs =
    bin

lib_dirs =
    lib

misc_dirs =
    etc
    share

files =
    ./setup.sh


strip_list =
    lib/libpylith
    lib/libspatialdata

exclude =
    bin/cpp$
    bin/c\+\+$
    bin/gcc$
    bin/gccbug
    bin/g\+\+$
    bin/gcov
    bin/gfortran$
    bin/.*-.*-c\+\+.*
    bin/.*-.*-g\+\+.*
    bin/.*-.*-gcc.*
    bin/.*-.*-gfortran.*
    bin/mpicc
    bin/mpicxx
    bin/mpic\+\+
    bin/mpif77
    bin/mpif90
    bin/TOPSGenerator\.py
    bin/TOPSInstaller\.py
    bin/adiforfix\.py
    bin/adprocess\.py
    bin/2to3
    bin/bfort
    bin/bib2html
    bin/bsp_virtual
    bin/configVars\.py
    bin/doc2lt
    bin/doctext
    bin/f2py
    bin/maint/.*
    bin/matio\.py
    bin/matlab/.*
    bin/parseargs\.py
    bin/petsc_libtool
    bin/petscmpiexec
    bin/petscrun
    bin/popup
    bin/portabilitycheck\.py
    bin/processSummary\.py
    bin/pstogif
    bin/pstoxbm
    bin/task_manager
    bin/taucc\.py
    bin/tohtml
    bin/update\.py
    bin/urlget
    bin/urlget\.py
    bin/win32fe/.*
    share/man/man1/cpp\.1
    share/man/man1/g\+\+\.1
    share/man/man1/gcc\.1
    share/man/man1/gfortran\.1
    share/man/man3/.*
    share/info/.*
    share/doc/.*
    lib/.*\.a
    lib/gcc/.*-.*/.*

scripts =
    pylith
    pylithinfo
    pylith_genxdmf
    pyconvert.py
    gensimpledb.py
    powerlaw_gendb.py






Modified: short/3D/PyLith/branches/multifields/COPYING
===================================================================
--- short/3D/PyLith/branches/multifields/COPYING	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/COPYING	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,4 +1,4 @@
-Copyright (c) 2010 University of California, Davis
+Copyright (c) 2010-2011 University of California, Davis
 
 Permission is hereby granted, free of charge, to any person obtaining
 a copy of this software and associated documentation files (the

Modified: short/3D/PyLith/branches/multifields/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/README
===================================================================
--- short/3D/PyLith/branches/multifields/README	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/README	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,4 +1,4 @@
-We are pleased to announce release of PyLith version 1.5.2
+We are pleased to announce release of PyLith version 1.6.0
 
 Please submit bug reports via the World Wide Web at:
     http://geodynamics.org/roundup    
@@ -62,6 +62,76 @@
 
 
 ======================================================================
+MIGRATING FROM VERSION 1.5 TO 1.6
+======================================================================
+
+No changes in parameters are required.
+
+----------------------------------------------------------------------
+Version 1.6.0
+----------------------------------------------------------------------
+
+* New features
+
+  * Parallel binary output via HDF5
+
+    Provides much faster output by writing HDF5 files in parallel,
+    which can be accessed directly from Matlab or indirectly from
+    ParaView or Visit via automatically created Xdmf files. Temporal
+    data is stored in 3-D arrays, permitting slicing in time and/or
+    space. See examples/3d/hex8 Steps 6-9 and examples/2d/subduction
+    in the tutorials for examples.
+
+ * 2-D generalized Maxwell viscoelastic bulk rheology
+
+    Added a 2-D generalized Maxwell viscoelastic bulk rheology
+    corresponding to the plane strain version of the 3-D generalized
+    Maxwell viscoelastic model.
+
+ * Time-weakening fault constitutive model
+
+    Added a linear time-weakening fault constitutive model. Some
+    spontaneous rupture modelers prefer this model over linear
+    slip-weakening because it is easier to maintain resolution of the
+    cohesive zone.
+
+ * Global uniform parallel mesh refinement
+
+    Permits running larger problems through uniform global refinement
+    of the mesh by a factor of 2 (reduces the node spacing by a factor
+    of 2) after the mesh is distributed among processors. This allows
+    running problems that are 4x larger in 2-D and 8x larger in
+    3-D. See examples/3d/tet4 Steps 2 and 4 for examples.
+  
+ * Custom algebraic multigrid preconditioner
+
+    Adds a custom preconditioner for Lagrange multiplier degrees of
+    freedom associated with fault slip via prescribed slip or
+    spontaneous ruptures with algebraic multigrid preconditioning for
+    quasi-static solutions. In most cases, this results in fewer
+    iterations in the linear solve and the number of iterations
+    increases much less with problem size. See examples/3d/tet4 Steps
+    2 and 4 for examples.
+
+  * PyLith installer utility
+
+    This utility provides a much more robust method for building
+    PyLith and all of its dependencies from source, including
+    dependency checking, installation to a central location, and
+    creation of a shell script to set environment variables. 
+
+* Bug fixes
+
+    - Fixed the fault friction implementation to correctly update Lagrange
+      multiplier values when the slip is overestimated in an
+      iteration. This primary fixes problems encountered with the use
+      of the Dieterich-Ruina rate and state fault constitutive model.
+
+    - Corrected viscoelastic rheologies to properly account for a
+      nonzero initial strain tensor.
+
+
+======================================================================
 MIGRATING FROM VERSION 1.4 TO 1.5
 ======================================================================
 

Modified: short/3D/PyLith/branches/multifields/TODO
===================================================================
--- short/3D/PyLith/branches/multifields/TODO	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/TODO	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,33 +1,24 @@
 ======================================================================
-CURRENT ISSUES/PRIORITIES (1.6.0)
+CURRENT ISSUES/PRIORITIES (1.7.0)
 ======================================================================
 
 * AUSTIN MEETING
 
- MONDAY
-
-  * Discuss buildbot packaging (use Python rather than svn properties??)
-
-  * Nonlinear solver for friction (slip rate) 
-
-
  (1) DONE Fix GPU build
     - Need the CUDA includes and libraries (get from PyCUDA)
     - Some files need to be compiled using nvcc (*.cu)
 
- (2) Add FieldSplit null space (translations+rotations)
+ (2) General integrator - Add general surface and volume integrators
 
- (3) General integrator - Add general surface and volume integrators
-
     + General integrator does setup, gets basis stuff at quadrature
       points, and calls function(s) to perform integrations for
       governing eqns.
 
- (4) Generalize Quadrature object to take multiple finite element dscretizations (need for multifield)
+ (3) Generalize Quadrature object to take multiple finite element dscretizations (need for multifield)
 
     (a) Add separate objects for each field element
 
- (5) Field split
+ (4) Field split
  
    + Need to tell solver to split vector fields into pieces.
 
@@ -35,48 +26,60 @@
   MultiField
     unit tests
 
-----------------------------------------------------------------------
-* [STABLE]
-  rate and state friction - sliding test
-  predictor/corrector scheme?
+* GenMaxwellQpQs [BRAD]
 
-  [SPATIALDATA]
-  SimpleIOAscii - check that we read all the points expected
+  2-D and 3-D versions
+  Need to redo Maxwell time calculation. Use ratio.
+  Create benchmark for test (compare against fk)
 
-* BUILDBOT
+* Make nucleation for spontaneous rupture modular [BRAD]
 
-  (1) cygwin
-      + packaging
+  spatial and temporal variation in shear/normal stress for nucleation
 
-  (2) linux/darwin
-      + ignore all the extra junk in bin and lib
+* Reimplement parameters to use PackedFields. [BRAD]
 
-* Unform global refinement
+    Fields
+    FieldsNew -> PackedFields
+    SolutionFields [do this in multifields]
+      Use PackedFields for acc, vel, disp(t+dt), disp(t), etc?
+      Use Field for dispIncr(t->t+dt), residual(t)
 
-  (1) The overlap is not updated properly for hex8 refinement. Run
-  examples/3d/hex8/step03.cfg.
+* Field split.
 
-  cd examples/3d/hex8
-  pylith step03.cfg --mesh_generator.refiner=pylith.topology.RefineUniform --nodes=3
+    Add flag to material [default is false] for creating null vector
+    When setting up solver, create null vector, and pass it to KSP
 
-    Runs but mesh connectivity/coordinates are wrong.
+  Need to check performance of custom fault preconditioner.
 
-* Output to HDF5 files. [BRAD and MATT]
+* Cleanup
 
-  (2) Add time dataset to vertex_fields and cell_fields. [BRAD]
+    Add elasticPrestep() to Formulation
+    Remove solnIncr, keep setField()
 
-  (3) Add creation of .xmf metadata file for ParaView/Visit.  [BRAD]
+* 2-D materials
 
-* Field split.
+  + DruckerPragerPlaneStrain (Drucker-Prager plane strain ) [Charles]
+  + PowerLawPlaneStrain (power law plane strain ) [Charles]
 
-  Need to add the ability to add null space (subduction/step03).
+* Scalable distribution [MATT]
 
-    Add flag to material [default is false] for creating null vector
-    When setting up solver, create null vector, and pass it to KSP
+  + It appears that topology adjustment is not currently limiting the runs
+  + Need a more memory scalable Distribution
+    + Consider simple distribution, followed by cleanup
+  + I think the Overlap structure is probably taking up all the memory
+    + send/recvMeshOverlap is only used in completeConesV() to call SimpleCopy::copy()
+      + Can we use a lighter-weight structure to sit in copy()?
 
-  Need to check performance of custom fault preconditioner.
+  + Need ribbon around fault in order to develop algorithm
 
+* Line search [MATT]
 
+  Line search should be improved to include the inequality constraints.
+
+----------------------------------------
+MISCELLANEOUS
+----------------------------------------
+
 * Memory model [MATT and BRAD]
 
   (1) The memory logging for distribution logs Creation and Stratification
@@ -102,17 +105,6 @@
 
   Need to check sum, because we may not be tracking deallocation.
 
-* Cleanup of materials [stable]
-
-  + Account for initial strain in viscoelastic models
-
-  + Cleanup documentation
-    + Move formulations not used to Appendix
-    + Cleanup notation
-    + Add more information on derivation (especially Generalize Maxwell)
-      Use impedance approach
-    + Are material models consistent with governing equations discussion?
-
 * Fault preconditioner [BRAD]
 
   FaultCohesiveLagrange::calcPreconditioner() [need unit test]
@@ -122,52 +114,32 @@
   + full-scale testing
   + Code cleanup
 
-======================================================================
-CURRENT ISSUES/PRIORITIES (1.7.0)
-======================================================================
-
-* GenMaxwellQpQs [BRAD]
-
-  2-D and 3-D versions
-  Need to redo Maxwell time calculation. Use ratio.
-  Create benchmark for test (compare against fk)
-
-* Make nucleation for spontaneous rupture modular [BRAD]
-
-  spatial and temporal variation in shear/normal stress for nucleation
-
-* Reimplement Fields to use a single section. [BRAD]
-
-    Fields
-    FieldsNew -> PackedFields
-    SolutionFields
-      Use Field for acc, vel, disp(t+dt), disp(t), etc?
-      Use Field for dispIncr(t->t+dt)
-      Use Field for residual(t)
-
-* Cleanup
-
-    Add elasticPrestep() to Formulation
-    Remove solnIncr, keep setField()
-
-* 2-D materials
-
-  + GenMaxwellPlaneStrain (plane strain Generalize Maxwell model) [Charles]
-  + DruckerPragerPlaneStrain (Drucker-Prager plane strain ) [Charles]
-  + PowerLawPlaneStrain (power law plane strain ) [Charles]
-
-* Scalable distribution [MATT]
-
 ----------------------------------------------------------------------
 SECONDARY PRIORITIES
 ----------------------------------------------------------------------
 
 * Paper
 
+  
+  geometry processing (adjusting topology)
+  discretization (cohesive cells)
+  model (Lagrange multipliers)
+    Slip functions
+    Fault constitutive models
+  solver
+  benchmarks
+    Savage and Prescott
+    Dynamic
+  real problem  
+
   General paper - focus on fault implementation
 
   Custom preconditioner
 
+* Fault preconditioner [BRAD]
+
+  FaultCohesiveLagrange::calcPreconditioner() [need unit test]
+
 * Cleanup
 
     Consistent use of Schur complement
@@ -458,24 +430,20 @@
 ======================================================================
 
 ----------------------------------------------------------------------
-Release 1.6
+Release 1.7
 ----------------------------------------------------------------------
 
-  1. HDF5 output
+  1. Damping for Q
+    Generalized Maxwell approach for attenuation
 
-     Write data into raw binary data file, compress each time chunk
+  2. 2-D materials
+    + DruckerPragerPlaneStrain (Drucker-Prager plane strain)
+    + PowerLawPlaneStrain (power law plane strain )
 
-  2. Output data at arbitrary point locations
+  3. Scalable mesh distribution
 
-     Interpolate solution to desired location
-     Solution field (time history)
-
-  4. Uniform global refinement
-
-  6. FaultCohesiveTract (dikes)
-
 ----------------------------------------------------------------------
-Release 1.7
+Release 2.0
 ----------------------------------------------------------------------
 
   1. Restart / checkpointing
@@ -487,15 +455,6 @@
 
   3. Coupling of quasi-static and dynamic simulations
 
-  4. Damping for Q
-    Mass/stiffness proportional damping for attenuation
-
-  4. Improved support for spherical geometry in user-interface
-
-----------------------------------------------------------------------
-Release 2.0
-----------------------------------------------------------------------
-
   1. Higher order cells
 
      Nonisoparametric cells
@@ -504,9 +463,20 @@
        Update quadrature to use CellGeometry refPtsToGlobal() and
        jacobian() Remove CellGeometry jacobian(double_array)
 
-  2. XFEM fault implementation
+  2. Output data at arbitrary point locations
 
+     Interpolate solution to desired location
+     Solution field (time history)
+
 ----------------------------------------------------------------------
+Low-priority items (release unknown)
+----------------------------------------------------------------------
+
+  6. FaultCohesiveTract (dikes)
+
+  4. Improved support for spherical geometry in user-interface
+
+----------------------------------------------------------------------
 LONG TERM WISH LIST
 ----------------------------------------------------------------------
 

Modified: short/3D/PyLith/branches/multifields/applications/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/applications/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/applications/pylith.in
===================================================================
--- short/3D/PyLith/branches/multifields/applications/pylith.in	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/pylith.in	2011-06-16 16:32:15 UTC (rev 18642)
@@ -10,7 +10,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/applications/pylith_prepmesh.in
===================================================================
--- short/3D/PyLith/branches/multifields/applications/pylith_prepmesh.in	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/pylith_prepmesh.in	2011-06-16 16:32:15 UTC (rev 18642)
@@ -10,7 +10,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/applications/utilities/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/applications/utilities/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/utilities/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,15 +9,17 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
 # ----------------------------------------------------------------------
 #
 
-dist_bin_SCRIPTS = pylithinfo \
-		   powerlaw_gendb.py
+dist_bin_SCRIPTS = \
+	pylithinfo \
+	pylith_genxdmf \
+	powerlaw_gendb.py
 
 
 # End of file 

Modified: short/3D/PyLith/branches/multifields/applications/utilities/powerlaw_gendb.py
===================================================================
--- short/3D/PyLith/branches/multifields/applications/utilities/powerlaw_gendb.py	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/utilities/powerlaw_gendb.py	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Copied: short/3D/PyLith/branches/multifields/applications/utilities/pylith_genxdmf (from rev 18641, short/3D/PyLith/trunk/applications/utilities/pylith_genxdmf)
===================================================================
--- short/3D/PyLith/branches/multifields/applications/utilities/pylith_genxdmf	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/applications/utilities/pylith_genxdmf	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,74 @@
+#!/usr/bin/env nemesis
+#
+# ======================================================================
+#
+# Brad T. Aagaard, U.S. Geological Survey
+# Charles A. Williams, GNS Science
+# Matthew G. Knepley, University of Chicago
+#
+# This code was developed as part of the Computational Infrastructure
+# for Geodynamics (http://geodynamics.org).
+#
+# Copyright (c) 2010-2011 University of California, Davis
+#
+# See COPYING for license information.
+#
+# ======================================================================
+#
+
+# This script creates a metadata file (.xmf) from an HDF5 file written
+# by PyLith permitting the data to be viewed in VTK visualization
+# software, such as ParaView and Visit.
+#
+# Usage: pylith_genxdmf --file=FILE
+
+__requires__ = "PyLith"
+
+
+# ======================================================================
+class GenXdmfApp(object):
+  """
+  Application for generating an Xdmf file for an HDF5 file.
+  """
+
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+
+  def __init__(self, name="pylith_genxdmf"):
+    """
+    Constructor.
+    """
+    self.filename = "output.h5"
+    return
+
+
+  def main(self, *args, **kwds):
+    """
+    Main entry point for application.
+    """
+    from pylith.meshio.Xdmf import Xdmf
+    writer = Xdmf()
+    filenameHDF5 = self.filename
+    filenameXdmf = filenameHDF5.replace(".h5", ".xmf")
+    writer.write(filenameXdmf, filenameHDF5)
+    return
+
+
+# ----------------------------------------------------------------------
+if __name__ == "__main__":
+
+  usage = "%prog --file=FILE"
+  from optparse import OptionParser
+  parser = OptionParser(usage=usage)
+  parser.add_option("-f", "--file", 
+                    dest="filename",
+                    type="string", metavar="FILE",
+                    help="Create Xdmf file for HDF5 file FILE. [output.h5]",
+                    default="output.h5")
+  (options, args) = parser.parse_args()
+
+  app = GenXdmfApp()
+  app.filename = options.filename
+  app.main()
+
+
+# End of file 

Modified: short/3D/PyLith/branches/multifields/applications/utilities/pylithinfo
===================================================================
--- short/3D/PyLith/branches/multifields/applications/utilities/pylithinfo	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/applications/utilities/pylithinfo	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/configure.ac
===================================================================
--- short/3D/PyLith/branches/multifields/configure.ac	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/configure.ac	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
@@ -46,6 +46,7 @@
 # Enable full-scale testing except on cygwin (need to rebase)
 if test "$enable_testing" = yes ; then
   enable_full_testing=yes
+  AC_CANONICAL_HOST
   case $host_os in
     cygwin*)
       enable_full_testing=no ;;
@@ -81,19 +82,23 @@
 AC_ARG_ENABLE([hdf5],
     [AC_HELP_STRING([--enable-hdf5],
         [enable output to HDF5 files via PETSc @<:@default=no@:>@])],
-	[enable_hdf5=yes
-	CPPFLAGS="-DENABLE_HDF5 $CPPFLAGS"; export CPPFLAGS
-	PYLITH_SWIG_CPPFLAGS="-DENABLE_HDF5 $PYLITH_SWIG_CPPFLAGS"; export PYLITH_SWIG_CPPFLAGS],
-	[enable_hdf5=no])
+	[if test "$enableval" = yes; then
+          enable_hdf5=yes
+	  CPPFLAGS="-DENABLE_HDF5 $CPPFLAGS"; export CPPFLAGS
+	  PYLITH_SWIG_CPPFLAGS="-DENABLE_HDF5 $PYLITH_SWIG_CPPFLAGS"; export PYLITH_SWIG_CPPFLAGS
+          else enable_hdf5=no; fi],
+	[enable_hdf5=yes])
 AM_CONDITIONAL([ENABLE_HDF5], [test "$enable_hdf5" = yes])
 
 # CUDA
 AC_ARG_ENABLE([cuda],
     [AC_HELP_STRING([--enable-cuda],
         [enable use of CUDA @<:@default=no@:>@])],
-	[enable_cuda=yes
-	CPPFLAGS="-DENABLE_CUDA $CPPFLAGS"; export CPPFLAGS
-	PYLITH_SWIG_CPPFLAGS="-DENABLE_CUDA $PYLITH_SWIG_CPPFLAGS"; export PYLITH_SWIG_CPPFLAGS],
+	[if test "$enable_cuda" = yes; then
+          enable_cuda=yes
+          CPPFLAGS="-DENABLE_CUDA $CPPFLAGS"; export CPPFLAGS
+	  PYLITH_SWIG_CPPFLAGS="-DENABLE_CUDA $PYLITH_SWIG_CPPFLAGS"; export PYLITH_SWIG_CPPFLAGS
+          else enable_cuda=no; fi],
 	[enable_cuda=no])
 AM_CONDITIONAL([ENABLE_CUDA], [test "$enable_cuda" = yes])
 
@@ -152,6 +157,9 @@
 # Check for Python modules and packages.
 CIT_PYTHON_EGG_SETUP
 
+# Large file support
+AC_SYS_LARGEFILE
+
 # NUMPY
 CIT_NUMPY_PYTHON_MODULE
 CIT_NUMPY_INCDIR
@@ -198,42 +206,17 @@
 
 # HDF5
 if test "$enable_hdf5" = "yes" ; then
-  AC_REQUIRE_CPP
-  AC_LANG(C++)
-  hdf5_save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$PETSC_CC_INCLUDES $PETSC_CXX_INCLUDE $CPPFLAGS"  
-  AC_CHECK_HEADER([hdf5.h], [], [
-    AC_MSG_ERROR([HDF5 header not found.])
-  ])
-  AC_MSG_CHECKING([for H5Fopen in -lhdf5])
-  AC_COMPILE_IFELSE(
-    [AC_LANG_PROGRAM([[#include <hdf5.h>]],
-	             [[H5Fopen("test.h5", H5F_ACC_TRUNC, H5P_DEFAULT);]])],
-    [AC_MSG_RESULT(yes)],
-    [AC_MSG_RESULT(no)
-     AC_MSG_ERROR([hdf5 library not found.])
-  ])
-  CPPFLAGS=$hdf5_save_CPPFLAGS
+  CIT_HDF5_HEADER
+  CIT_HDF5_LIB
+  CIT_HDF5_LIB_PARALLEL
 fi
 
 # CUDA
 if test "$enable_cuda" = "yes" ; then
-  AC_REQUIRE_CPP
-  AC_LANG(C++)
-  cuda_save_CPPFLAGS="$CPPFLAGS"
-  CPPFLAGS="$PETSC_CC_INCLUDES $PETSC_CXX_INCLUDE $CPPFLAGS"
-  AC_CHECK_HEADER([cuda_runtime.h], [], [
-    AC_MSG_ERROR([CUDA runtime header not found.])
-  ])
-  #AC_MSG_CHECKING([for ?? in -lcuda])
-  #AC_COMPILE_IFELSE(
-  #  [AC_LANG_PROGRAM([[#include <cuda_runtime.h>]],
-  #	             [[H5Fopen("test.h5", H5F_ACC_TRUNC, H5P_DEFAULT);]])],
-  #  [AC_MSG_RESULT(yes)],
-  #  [AC_MSG_RESULT(no)
-  #   AC_MSG_ERROR([cuda library not found.])
-  #])
-  CPPFLAGS=$cuda_save_CPPFLAGS
+  CIT_PYTHON_MODULE([pycuda])
+  CIT_CUDA_INCDIR
+  CIT_CUDA_LIB
+  CIT_CUDA_COMPILER
 fi
 
 # PROJ4
@@ -337,6 +320,7 @@
 		tests/2d/Makefile
 		tests/2d/maxwell/Makefile
 		tests/2d/slipdir/Makefile
+		tests/2d/frictionslide/Makefile
 		tests/3d/Makefile
 		tests/3d/matprops/Makefile
 		tests/3d/slipdir/Makefile
@@ -352,6 +336,7 @@
 		tests/3d/plasticity/threehex8/results/Makefile
 		tests/3d/plasticity/threehex8/spatialdb/Makefile
 		tests/topology/Makefile
+		tests/refinefaulttip/Makefile
                 doc/Makefile
 		doc/developer/Makefile
 		doc/install/Makefile
@@ -362,6 +347,7 @@
 		examples/Makefile
 		examples/3d/Makefile
 		examples/3d/tet4/Makefile
+		examples/3d/tet4/output/Makefile
 		examples/3d/hex8/Makefile
 		examples/3d/hex8/output/Makefile
 		examples/2d/Makefile

Modified: short/3D/PyLith/branches/multifields/doc/developer/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/doc/developer/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/developer/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/doc/install/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/doc/install/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/install/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/doc/refguide/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/doc/refguide/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/refguide/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/doc/releasenotes/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/doc/releasenotes/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/releasenotes/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
@@ -25,7 +25,10 @@
 	announce_v1.3.1.txt \
 	announce_v1.4.0.txt \
 	announce_v1.4.2.txt \
-	announce_v1.5.0.txt
+	announce_v1.5.0.txt \
+	announce_v1.5.1.txt \
+	announce_v1.5.2.txt \
+	announce_v1.6.0.txt
 
 
 # End of file 

Copied: short/3D/PyLith/branches/multifields/doc/releasenotes/announce_v1.6.0.txt (from rev 18641, short/3D/PyLith/trunk/doc/releasenotes/announce_v1.6.0.txt)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/releasenotes/announce_v1.6.0.txt	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/releasenotes/announce_v1.6.0.txt	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,90 @@
+Greetings,
+
+I am pleased to announce the release of PyLith 1.6.0, a finite-element
+code designed to solve dynamic elastic problems and quasi-static
+viscoelastic problems in tectonic deformation.
+
+This release adds several new features to PyLith, including (1)
+parallel binary output via HDF5 files, (2) a 2-D generalized Maxwell
+viscoelastic bulk constitutive model, (3) a time-weakening fault
+constitutive model, (4) global uniform parallel mesh refinement, (5) a
+custom algebraic multigrid preconditioner to improve the efficiency of
+the solver for quasi-static problems, and (6) a new installation
+utility for building from source.
+
+We strongly recommend all users of previous PyLith releases switch
+to this latest release. In addition to adding features this release
+also fixes a number of bugs related to fault friction and initial
+strains for viscoelastic models. We have added a few more consistency
+checks and optimized some data structures. Parameter files used with v1.5
+are fully compatible with this release (no changes are necessary).
+
+You can download the source code and binaries from
+
+    http://geodynamics.org/cig/software/packages/short/pylith
+
+Detailed installation instructions for the binary packages are in the
+User Manual with detailed building instructions for a few platforms
+in the INSTALL file bundled with the PyLith Installer utility.
+
+
+RELEASE NOTES
+
+* New features
+
+  * Parallel binary output via HDF5
+
+    Provides much faster output by writing HDF5 files in parallel,
+    which can be accessed directly from Matlab or indirectly from
+    ParaView or Visit via automatically created Xdmf files. Temporal
+    data is stored in 3-D arrays, permitting slicing in time and/or
+    space. See examples/3d/hex8 Steps 6-9 and examples/2d/subduction
+    in the tutorials for examples.
+
+ * 2-D generalized Maxwell viscoelastic bulk rheology
+
+    Added a 2-D generalized Maxwell viscoelastic bulk rheology
+    corresponding to the plane strain version of the 3-D generalized
+    Maxwell viscoelastic model.
+
+ * Time-weakening fault constitutive model
+
+    Added a linear time-weakening fault constitutive model. Some
+    spontaneous rupture modelers prefer this model over linear
+    slip-weakening because it is easier to maintain resolution of the
+    cohesive zone.
+
+ * Global uniform parallel mesh refinement
+
+    Permits running larger problems through uniform global refinement
+    of the mesh by a factor of 2 (reduces the node spacing by a factor
+    of 2) after the mesh is distributed among processors. This allows
+    running problems that are 4x larger in 2-D and 8x larger in
+    3-D. See examples/3d/tet4 Steps 2 and 4 for examples.
+  
+ * Custom algebraic multigrid preconditioner
+
+    Adds a custom preconditioner for Lagrange multiplier degrees of
+    freedom associated with fault slip via prescribed slip or
+    spontaneous ruptures with algebraic multigrid preconditioning for
+    quasi-static solutions. In most cases, this results in fewer
+    iterations in the linear solve and the number of iterations
+    increases much less with problem size. See examples/3d/tet4 Steps
+    2 and 4 for examples.
+
+  * PyLith installer utility
+
+    This utility provides a much more robust method for building
+    PyLith and all of its dependencies from source, including
+    dependency checking, installation to a central location, and
+    creation of a shell script to set environment variables. 
+
+* Bug fixes
+
+    - Fixed the fault friction implementation to correctly update Lagrange
+      multiplier values when the slip is overestimated in an
+      iteration. This primary fixes problems encountered with the use
+      of the Dieterich-Ruina rate and state fault constitutive model.
+
+    - Corrected viscoelastic rheologies to properly account for a
+      nonzero initial strain tensor.

Modified: short/3D/PyLith/branches/multifields/doc/userguide/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -16,11 +16,6 @@
 # ----------------------------------------------------------------------
 #
 
-dist_noinst_DATA =
+dist_noinst_DATA = makepdf.sh
 
-default: userguide.pdf
-
-userguide.pdf:
-	lyx -e pdf userguide.lyx
-
 # End of file 

Copied: short/3D/PyLith/branches/multifields/doc/userguide/alternativeformul (from rev 18641, short/3D/PyLith/trunk/doc/userguide/alternativeformul)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/benchmarks.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/benchmarks.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/benchmarks.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -154,20 +172,23 @@
 \end_inset
 
  includes a graphical user interface for examining the benchmark results.
- Benchmark results for PyLith are available for tpv205-2d (horizontal slice
- through a vertical strike-slip fault), tpv205 (vertical strike-slip fault
- with high and low stress asperities), tpv210-2d (vertical slice through
- a 60 degree dipping normal fault), and tpv210 (60 degree dipping normal
- fault).
+ Benchmark results for PyLith are available for TPV205-2D (horizontal slice
+ through a vertical strike-slip fault), TPV205 (vertical strike-slip fault
+ with high and low stress asperities), TPV210-2D (vertical slice through
+ a 60 degree dipping normal fault), TPV210 (60 degree dipping normal fault),
+ TPV14-2D and TPV15-2D (horizontal slice through a verticel strike-slip
+ fault with a branch) and TPV14 and TPV15 (vertical strike-slip fault with
+ a branch).
 \end_layout
 
 \begin_layout Standard
 The benchmark results indicate that triangular and tetrahedral cells generate
  less numerical noise than quadrilateral or hexahedral cells.
- We plan to add appropriate bulk constitutive models for damping high frequency
- oscillations in order to reduce the numerical noise.
+ TPV14-2D, TPV15-2D, TPV14, and TPV15 use the numerical damping via an artificia
+l viscosity available in PyLith v1.6.0 to these high-frequency oscillations.
  All of the other results without high frequency oscillations posted on
- the SCEC benchmarks web page employ damping to reduce numerical artifacts.
+ the SCEC benchmarks web page employ damping via similar methods to reduce
+ numerical artifacts.
 \end_layout
 
 \end_body

Modified: short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/savageprescott/savageprescott.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/savageprescott/savageprescott.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/benchmarks/savageprescott/savageprescott.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -273,7 +273,7 @@
 ), the resolution at the outer boundaries is 20 km.
  An inner region is then put through one level of refinement, so that near
  the center of the mesh the resolution is 10 km.
- All meshes were generated with Cubit.
+ All meshes were generated with CUBIT.
 \end_layout
 
 \begin_layout Description

Modified: short/3D/PyLith/branches/multifields/doc/userguide/boundaryconditions/boundaryconditions.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/boundaryconditions/boundaryconditions.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/boundaryconditions/boundaryconditions.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,21 +1,29 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding auto
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -23,9 +31,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -33,15 +50,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -188,8 +206,10 @@
 \begin_layout Standard
 Several boundary conditions use a common formulation for the spatial and
  temporal variation of the boundary condition parameters,
-\begin_inset Formula \[
-f(\vec{x})=f_{0}(\vec{x})+\dot{f}_{0}(\vec{x})(t-t_{0}(\vec{x}))+f_{1}(\vec{x})a(t-t_{1}(\vec{x})),\]
+\begin_inset Formula 
+\begin{equation}
+f(\vec{x})=f_{0}(\vec{x})+\dot{f}_{0}(\vec{x})(t-t_{0}(\vec{x}))+f_{1}(\vec{x})a(t-t_{1}(\vec{x})),
+\end{equation}
 
 \end_inset
 
@@ -415,7 +435,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="6" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="3in">
@@ -673,7 +693,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="4" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="4in">
 <row>
@@ -972,7 +992,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="2" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
@@ -1153,7 +1173,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="4" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="4in">
 <row>
@@ -1423,7 +1443,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="4" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="4in">
 <row>
@@ -1602,8 +1622,10 @@
 
 .
  We can write the displacement field as
-\begin_inset Formula \begin{equation}
-\vec{u}(\vec{x},t)=\vec{u^{t}}(t-\frac{\vec{x}}{c}),\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\vec{u}(\vec{x},t)=\vec{u^{t}}(t-\frac{\vec{x}}{c}),
+\end{equation}
 
 \end_inset
 
@@ -1644,10 +1666,12 @@
 
  is the vertical direction tangent to the boundary, the tractions on the
  boundary are
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 T_{s_{h}}=\sigma_{s_{h}n}\\
 T_{s_{v}}=\sigma_{s_{v}n}\\
-T_{n}=\sigma_{nn}.\end{gather}
+T_{n}=\sigma_{nn}.
+\end{gather}
 
 \end_inset
 
@@ -1658,10 +1682,12 @@
 \end_inset
 
  and we can write the tractions as 
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 T_{s_{h}}=2\mu\epsilon_{s_{h}n}\\
 T_{s_{v}}=2\epsilon_{s_{v}n}\\
-T_{n}=(\lambda+2\mu)\epsilon_{nn}+\lambda(\epsilon_{s_{h}s_{h}}+\epsilon_{s_{v}s_{v}}).\end{gather}
+T_{n}=(\lambda+2\mu)\epsilon_{nn}+\lambda(\epsilon_{s_{h}s_{h}}+\epsilon_{s_{v}s_{v}}).
+\end{gather}
 
 \end_inset
 
@@ -1670,23 +1696,29 @@
 \end_inset
 
  and we have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \epsilon_{s_{h}n}=\frac{1}{2}(u_{s_{h},n}+u_{n,s_{h}})\\
 \epsilon_{s_{v}n}=\frac{1}{2}(u_{s_{v},n}+u_{n,s_{v}})\\
-\epsilon_{nn}=u_{n,n}.\end{gather}
+\epsilon_{nn}=u_{n,n}.
+\end{gather}
 
 \end_inset
 
 For our propagating plane wave, we recognize that
-\begin_inset Formula \begin{equation}
-\frac{\partial\vec{u^{t}}(t-\frac{\vec{x}}{c})}{\partial x_{i}}=-\frac{1}{c}\frac{\partial\vec{u^{t}}(t-\frac{\vec{x}}{c})}{\partial t},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\vec{u^{t}}(t-\frac{\vec{x}}{c})}{\partial x_{i}}=-\frac{1}{c}\frac{\partial\vec{u^{t}}(t-\frac{\vec{x}}{c})}{\partial t},
+\end{equation}
 
 \end_inset
 
 so that our expressions for the tractions become
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 T_{s_{h}}=-\frac{\mu}{c}\left(\frac{\partial u_{s_{h}}^{t}(t-\frac{\vec{x}}{c})}{\partial t}+\frac{\partial u_{n}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\right),\\
-T_{s_{v}}=-\frac{\mu}{c}\left(\frac{\partial u_{s_{v}}^{t}(t-\frac{\vec{x}}{c})}{\partial t}+\frac{\partial u_{n}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\right).\end{gather}
+T_{s_{v}}=-\frac{\mu}{c}\left(\frac{\partial u_{s_{v}}^{t}(t-\frac{\vec{x}}{c})}{\partial t}+\frac{\partial u_{n}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\right).
+\end{gather}
 
 \end_inset
 
@@ -1732,16 +1764,20 @@
 
 .
  This leads to the following expressions for the tractions:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 T_{s_{h}}=-\rho v_{s}\frac{\partial u_{s_{h}}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\\
 T_{s_{v}}=-\rho v_{s}\frac{\partial u_{v}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\\
-T_{n}=-\rho v_{p}\frac{\partial u_{n}^{t}(t-\frac{\vec{x}}{c})}{\partial t}\end{gather}
+T_{n}=-\rho v_{p}\frac{\partial u_{n}^{t}(t-\frac{\vec{x}}{c})}{\partial t}
+\end{gather}
 
 \end_inset
 
 We write the weak form of the boundary condition as
-\begin_inset Formula \[
-\int_{S_{T}}T_{i}\phi_{i}\, dS=\int_{S_{T}}-\rho c_{i}\frac{\partial u_{i}}{\partial t}\phi_{i}\, dS,\]
+\begin_inset Formula 
+\[
+\int_{S_{T}}T_{i}\phi_{i}\, dS=\int_{S_{T}}-\rho c_{i}\frac{\partial u_{i}}{\partial t}\phi_{i}\, dS,
+\]
 
 \end_inset
 
@@ -1764,9 +1800,11 @@
  is our weighting function.
  We express the trial solution and weighting function as linear combinations
  of basis functions,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 u_{i}=\sum_{m}a_{i}^{m}N^{m},\\
-\phi_{i}=\sum_{n}c_{i}^{n}N^{n}.\end{gather}
+\phi_{i}=\sum_{n}c_{i}^{n}N^{n}.
+\end{gather}
 
 \end_inset
 
@@ -1774,8 +1812,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \[
-\int_{S_{T}}T_{i}\phi_{i}\, dS=\int_{S_{T}}-\rho c_{i}\sum_{m}\dot{a}_{i}^{m}N^{m}\sum_{n}c_{i}^{n}N^{n}\, dS.\]
+\begin_inset Formula 
+\begin{equation}
+\int_{S_{T}}T_{i}\phi_{i}\, dS=\int_{S_{T}}-\rho c_{i}\sum_{m}\dot{a}_{i}^{m}N^{m}\sum_{n}c_{i}^{n}N^{n}\, dS.
+\end{equation}
 
 \end_inset
 
@@ -1789,8 +1829,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \[
-r_{i}^{n}=\sum_{\text{tract cells}}\sum_{\text{quad pts}}-\rho(x_{q})c_{i}(x_{q})\sum_{m}\dot{a}_{i}^{m}N^{m}(x_{q})N^{n}(x_{q})w_{q}|J_{cell}(x_{q})|,\]
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}=\sum_{\text{tract cells}}\sum_{\text{quad pts}}-\rho(x_{q})c_{i}(x_{q})\sum_{m}\dot{a}_{i}^{m}N^{m}(x_{q})N^{n}(x_{q})w_{q}|J_{cell}(x_{q})|,
+\end{equation}
 
 \end_inset
 
@@ -1818,8 +1860,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \[
-\dot{u}_{i}(t)=\frac{1}{2\Delta t}(u_{i}(t+\Delta t)-u_{i}(t-\Delta t)).\]
+\begin_inset Formula 
+\begin{equation}
+\dot{u}_{i}(t)=\frac{1}{2\Delta t}(u_{i}(t+\Delta t)-u_{i}(t-\Delta t)).
+\end{equation}
 
 \end_inset
 
@@ -1847,8 +1891,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \[
-\dot{u}_{i}(t)=\frac{1}{2\Delta t}(du_{i}(t)+u_{i}(t)-u_{i}(t-\Delta t))\]
+\begin_inset Formula 
+\begin{equation}
+\dot{u}_{i}(t)=\frac{1}{2\Delta t}(du_{i}(t)+u_{i}(t)-u_{i}(t-\Delta t))
+\end{equation}
 
 \end_inset
 
@@ -1859,8 +1905,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \[
-A_{ij}^{nm}=\sum_{\text{tract cells}}\sum_{\text{quad pts}}\delta_{ij}\frac{1}{2\Delta t}\rho(x_{q})v_{i}(x_{q})N^{m}(x_{q})N^{n}(x_{q})w_{q}|J_{cells}(x_{q})|,\]
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\sum_{\text{tract cells}}\sum_{\text{quad pts}}\delta_{ij}\frac{1}{2\Delta t}\rho(x_{q})v_{i}(x_{q})N^{m}(x_{q})N^{n}(x_{q})w_{q}|J_{cells}(x_{q})|,
+\end{equation}
 
 \end_inset
 
@@ -2296,20 +2344,27 @@
  to impose the relative motions, so they are related to the change in stress
  on the fault surface associated with fault slip.
  If we write the algebraic system of equations we are solving in the form
-\begin_inset Formula \begin{equation}
-\underline{A}\overrightarrow{u}=\overrightarrow{b}\,,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{A}\overrightarrow{u}=\overrightarrow{b}\,,
+\end{equation}
 
 \end_inset
 
 then including the Lagrange multiplier constraints results in
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \left[\begin{array}{cc}
 \underline{A} & \underline{C}^{T}\\
-\underline{C} & 0\end{array}\right]\left[\begin{array}{c}
+\underline{C} & 0
+\end{array}\right]\left[\begin{array}{c}
 \overrightarrow{u}\\
-\overrightarrow{l}\end{array}\right]=\left[\begin{array}{c}
+\overrightarrow{l}
+\end{array}\right]=\left[\begin{array}{c}
 \overrightarrow{b}\\
-\overrightarrow{d}\end{array}\right]\,,\label{eq:fault:cohesive:lagrange}\end{equation}
+\overrightarrow{d}
+\end{array}\right]\,,\label{eq:fault:cohesive:lagrange}
+\end{equation}
 
 \end_inset
 
@@ -2348,9 +2403,11 @@
  Because we enforce the constraints in a strong sense, the terms do not
  involve integrals over the fault surface.
  The additional terms in the residual are
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 r_{i}^{n}=-C_{ji}^{pn}l_{j}^{p},\\
-r_{i}^{p}=d_{i}^{p}-C_{ij}^{pn}u_{j}^{n},\end{gather}
+r_{i}^{p}=d_{i}^{p}-C_{ij}^{pn}u_{j}^{n},
+\end{gather}
 
 \end_inset
 
@@ -2359,15 +2416,17 @@
 \end_inset
 
  denotes a conventional degree of freedom and 
-\begin_inset Formula $k$
+\begin_inset Formula $p$
 \end_inset
 
  denotes a degree of freedom associated with a Lagrange multiplier.
  The additional terms in the system Jacobian matrix are simply the direction
  cosines,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 J_{ij}^{np}=C_{ji}^{pn},\\
-J_{ij}^{pn}=C_{ij}^{pn}.\end{gather}
+J_{ij}^{pn}=C_{ij}^{pn}.
+\end{gather}
 
 \end_inset
 
@@ -2390,8 +2449,10 @@
 \end_inset
 
 , we have
-\begin_inset Formula \begin{equation}
-r_{i}^{n}(t+\Delta t)=A_{ij}^{nm}(u_{j}^{m}(t)+du_{j}^{m}(t))+C_{ki}^{pn}(l_{k}^{p}(t)+dl_{k}^{p}(t)),\end{equation}
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}(t+\Delta t)=A_{ij}^{nm}(u_{j}^{m}(t)+du_{j}^{m}(t))+C_{ki}^{pn}(l_{k}^{p}(t)+dl_{k}^{p}(t)),
+\end{equation}
 
 \end_inset
 
@@ -2433,9 +2494,11 @@
 
 , and by setting the residual with all terms included to zero; thus, we
  have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 A_{ij}^{nm}(u_{j}^{m}(t)+du_{j}^{m}(t))+C_{ki}^{pn}(l_{k}^{p}(t)+dl_{k}^{p}(t))=0\text{ subject to}\\
-C_{ij}^{pn}(u_{j}^{n}(t)+du_{j}^{n}(t))=d_{i}^{p}.\end{gather}
+C_{ij}^{pn}(u_{j}^{n}(t)+du_{j}^{n}(t))=d_{i}^{p}.
+\end{gather}
 
 \end_inset
 
@@ -2448,18 +2511,22 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 r_{i}^{n}+A_{ij}^{nm}du_{j}^{m}+C_{ki}^{pn}dl_{k}^{p}=0\text{ subject to}\\
-C_{ij}^{pn}(u_{j}^{n}(t)+du_{j}^{n}(t))=d_{i}^{p}.\end{gather}
+C_{ij}^{pn}(u_{j}^{n}(t)+du_{j}^{n}(t))=d_{i}^{p}.
+\end{gather}
 
 \end_inset
 
 Explicitly writing the equations for the vertices on the negative and positive
  sides of the fault yields
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 r_{i}^{n-}+A_{ij}^{nm-}du_{j}^{m-}+R_{ki}^{pn}dl_{k}^{p}=0,\\
 r_{i}^{n+}+A_{ij}^{nm+}du_{j}^{m+}+R_{ki}^{pn}dl_{k}^{p}=0,\\
-R_{ij}^{pn}(u_{j}^{n+}+du_{j}^{n+}-u_{j}^{n-}-du_{j}^{n-})=d_{i}^{p}.\end{gather}
+R_{ij}^{pn}(u_{j}^{n+}+du_{j}^{n+}-u_{j}^{n-}-du_{j}^{n-})=d_{i}^{p}.
+\end{gather}
 
 \end_inset
 
@@ -2472,9 +2539,11 @@
 \end_inset
 
  and combining them using the third equation leads to
-\begin_inset Formula \begin{multline}
+\begin_inset Formula 
+\begin{multline}
 R_{ij}^{pn}\left((A_{ij}^{nm+})^{-1}+(A_{ij}^{nm+})^{-1}\right)R_{ki}^{pn}dl_{k}^{p}=d_{i}^{p}-R_{ij}^{pn}(u_{j}^{n+}-u_{j}^{n-})\\
-+R_{ij}^{pn}\left((A_{ij}^{nm+})^{-1}r_{i}^{n+}-(A_{ij}^{nm-})^{-1}r_{i}^{n-}\right).\end{multline}
++R_{ij}^{pn}\left((A_{ij}^{nm+})^{-1}r_{i}^{n+}-(A_{ij}^{nm-})^{-1}r_{i}^{n-}\right).
+\end{multline}
 
 \end_inset
 
@@ -2485,14 +2554,18 @@
 
  is the same for all components at a vertex.
  As a result the matrix on the left hand side simplifies to
-\begin_inset Formula \[
-S_{ik}^{pn}=\delta_{ik}\left(\frac{1}{A^{nm+}}+\frac{1}{A^{nm-}}\right),\]
+\begin_inset Formula 
+\begin{equation}
+S_{ik}^{pn}=\delta_{ik}\left(\frac{1}{A^{nm+}}+\frac{1}{A^{nm-}}\right),
+\end{equation}
 
 \end_inset
 
 and
-\begin_inset Formula \[
-dl_{k}^{p}=(S_{ik}^{pn})^{-1}\left(d_{i}^{p}-R_{ij}^{pn}(u_{j}^{n+}-u_{j}^{n-})+R_{ij}^{pn}\left((A_{ij}^{nm+})^{-1}r_{i}^{n+}-(A_{ij}^{nm-})^{-1}r_{i}^{n-}\right)\right).\]
+\begin_inset Formula 
+\begin{equation}
+dl_{k}^{p}=(S_{ik}^{pn})^{-1}\left(d_{i}^{p}-R_{ij}^{pn}(u_{j}^{n+}-u_{j}^{n-})+R_{ij}^{pn}\left((A_{ij}^{nm+})^{-1}r_{i}^{n+}-(A_{ij}^{nm-})^{-1}r_{i}^{n-}\right)\right).
+\end{equation}
 
 \end_inset
 
@@ -2514,9 +2587,11 @@
 \end_inset
 
  using
-\begin_inset Formula \begin{gather*}
+\begin_inset Formula 
+\begin{gather}
 \Delta du_{j}^{n-}=(A_{ij}^{nm-})^{-1}C_{ki}^{pn}dl_{k}^{p}\text{ and}\\
-\Delta du_{j}^{n+}=-(A_{ij}^{nm+})^{-1}C_{ki}^{pn}dl_{k}^{p}.\end{gather*}
+\Delta du_{j}^{n+}=-(A_{ij}^{nm+})^{-1}C_{ki}^{pn}dl_{k}^{p}.
+\end{gather}
 
 \end_inset
 
@@ -2616,7 +2691,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="8" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="3.5in">
@@ -2979,10 +3054,13 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 D(t)=\left\{ \begin{array}{cc}
 0 & 0\leq t<t_{r}\\
-D_{final} & t\ge t_{r}\end{array}\right.\,,\end{gather}
+D_{final} & t\ge t_{r}
+\end{array}\right.\,,
+\end{gather}
 
 \end_inset
 
@@ -3098,7 +3176,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="5" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -3296,10 +3374,13 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 D(t)=\left\{ \begin{array}{cc}
 0 & 0\leq t<t_{r}\\
-V(t-t_{r}) & t\ge t_{r}\end{array}\right.\,,\end{gather}
+V(t-t_{r}) & t\ge t_{r}
+\end{array}\right.\,,
+\end{gather}
 
 \end_inset
 
@@ -3416,7 +3497,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="5" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -3620,11 +3701,14 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 D(t)=\left\{ \begin{array}{cc}
 0 & 0\leq t<t_{r}\\
-D_{final}\left(1-exp\left(-\frac{t-t_{r}}{t_{0}}\right)\left(1+\frac{t-t_{r}}{t_{0}}\right)\right) & t\ge t_{r}\end{array}\right.\,,\\
-t_{0}=0.6195t_{\mathit{rise}}\,,\end{gather}
+D_{final}\left(1-exp\left(-\frac{t-t_{r}}{t_{0}}\right)\left(1+\frac{t-t_{r}}{t_{0}}\right)\right) & t\ge t_{r}
+\end{array}\right.\,,\\
+t_{0}=0.6195t_{\mathit{rise}}\,,
+\end{gather}
 
 \end_inset
 
@@ -3754,7 +3838,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="6" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -4003,15 +4087,18 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 D(t)=\left\{ \begin{array}{cc}
 D_{\mathit{final}}C_{n}\left(0.7t-0.7\frac{t_{1}}{\pi}\sin\frac{\pi t}{t_{1}}-1.2\frac{t_{1}}{\pi}\left(\cos\frac{\pi t}{2t_{1}}-1\right)\right) & 0\leq t<t_{1}\\
 D_{\mathit{final}}C_{n}\left(1.0t-0.7\frac{t1}{\pi}\sin\frac{\pi t}{t_{1}}+0.3\frac{t2}{\pi}\sin\frac{\pi(t-t1)}{t_{2}}+\frac{1.2}{\pi}t_{1}-0.3t_{1}\right) & t_{1}\leq t<2t_{1}\\
-D_{\mathit{final}}C_{n}\left(0.7-0.7\cos\frac{\pi t}{t_{1}}+0.6\sin\frac{\pi t}{2t_{1}}\right) & 2t_{1}\leq t\leq t_{0}\end{array}\right.\,,\\
+D_{\mathit{final}}C_{n}\left(0.7-0.7\cos\frac{\pi t}{t_{1}}+0.6\sin\frac{\pi t}{2t_{1}}\right) & 2t_{1}\leq t\leq t_{0}
+\end{array}\right.\,,\\
 C_{n}=\frac{\pi}{1.4\pi t_{1}+1.2t_{1}+0.3\pi t_{2}},\\
 t_{0}=1.525t_{\mathit{rise}},\\
 t_{1}=0.13t_{0},\\
-t_{2}=t_{0}-t_{1},\end{gather}
+t_{2}=t_{0}-t_{1},
+\end{gather}
 
 \end_inset
 
@@ -4185,7 +4272,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="6" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -4441,14 +4528,19 @@
 \begin_layout Standard
 The algebraic systems of equations for dynamic earthquake rupture are the
  same as those for kinematic rupture
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \left[\begin{array}{cc}
 \underline{A} & \underline{C}^{T}\\
-\underline{C} & 0\end{array}\right]\left[\begin{array}{c}
+\underline{C} & 0
+\end{array}\right]\left[\begin{array}{c}
 \overrightarrow{u}\\
-\overrightarrow{l}\end{array}\right]=\left[\begin{array}{c}
+\overrightarrow{l}
+\end{array}\right]=\left[\begin{array}{c}
 \overrightarrow{b}\\
-\overrightarrow{d}\end{array}\right].\end{equation}
+\overrightarrow{d}
+\end{array}\right].
+\end{equation}
 
 \end_inset
 
@@ -4459,14 +4551,18 @@
  value computed for the current slip (either zero or the slip at the previous
  time step) and the value computed from the fault constitutive model.
  Starting from our system of algebraic equations,
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}u_{j}^{m}+C_{ji}^{pn}l_{j}^{p}=b_{i}^{n},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}u_{j}^{m}+C_{ji}^{pn}l_{j}^{p}=b_{i}^{n},
+\end{equation}
 
 \end_inset
 
 we compute the sensitivity for the given loading and boundary conditions,
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}\partial u_{j}^{m}=-C_{ji}^{pn}\partial l_{j}^{p}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}\partial u_{j}^{m}=-C_{ji}^{pn}\partial l_{j}^{p}.
+\end{equation}
 
 \end_inset
 
@@ -4484,11 +4580,14 @@
 
 \begin_layout Standard
 In general A is a sparse matrix with off-diagonal terms of the form
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 A=\left(\begin{array}{ccc}
 A_{0} & A_{1} & A_{2}\\
 A_{3} & A_{n-} & 0\\
-A_{4} & 0 & A_{n+}\end{array}\right),\end{equation}
+A_{4} & 0 & A_{n+}
+\end{array}\right),
+\end{equation}
 
 \end_inset
 
@@ -4496,9 +4595,11 @@
  We formulate two small linear systems involving just the degrees of freedom
  associated with vertices on either the positive or negative sides of the
  fault,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 A_{ij}^{nm-}\partial u_{j}^{m-}=-R_{ij}^{pn}\partial l_{j}^{p},\\
-A_{ij}^{nm+}\partial u_{j}^{m+}=R_{ij}^{pn}\partial l_{j}^{p},\end{gather}
+A_{ij}^{nm+}\partial u_{j}^{m+}=R_{ij}^{pn}\partial l_{j}^{p},
+\end{gather}
 
 \end_inset
 
@@ -4525,8 +4626,10 @@
 ) sides of the fault.
  After solving these two linear systems of equations, we compute the increment
  in slip using
-\begin_inset Formula \begin{equation}
-\partial d_{i}^{p}=R_{ij}^{pn}(\partial u_{j}^{n+}-\partial u_{j}^{n-}).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\partial d_{i}^{p}=R_{ij}^{pn}(\partial u_{j}^{n+}-\partial u_{j}^{n-}).
+\end{equation}
 
 \end_inset
 
@@ -4584,8 +4687,10 @@
 
 \begin_layout Standard
 With a lumped Jacobian matrix, we can solve for the increment in slip directly,
-\begin_inset Formula \begin{equation}
-\partial d_{i}^{p}=-C_{ij}^{pn}(A_{jk}^{nm})^{-1}C_{lk}^{pm}\partial l_{l}^{p}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\partial d_{i}^{p}=-C_{ij}^{pn}(A_{jk}^{nm})^{-1}C_{lk}^{pm}\partial l_{l}^{p}.
+\end{equation}
 
 \end_inset
 
@@ -4596,8 +4701,10 @@
 
  for a given vertex are identical and the expression on the right-hand side
  reduces to
-\begin_inset Formula \begin{equation}
-\partial d_{i}^{p}=-\left(\frac{1}{A^{n+}}+\frac{1}{A^{n-}}\right)\partial l_{i}^{p}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\partial d_{i}^{p}=-\left(\frac{1}{A^{n+}}+\frac{1}{A^{n-}}\right)\partial l_{i}^{p}.
+\end{equation}
 
 \end_inset
 
@@ -4700,7 +4807,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="7" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -4949,9 +5056,9 @@
 \end_layout
 
 \begin_layout Standard
-PyLith provides three fault constitutive models.
+PyLith provides four fault constitutive models.
  Future releases may contain additional models and a template is provided
- for you to construct your own fault constitutive models (see Section 
+ for you to construct your own (see Section 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "sec:Extending:FaultConstitutiveModels"
@@ -4989,10 +5096,13 @@
 \begin_layout Standard
 The static friction model produces shear tractions proportional to the fault
  normal traction plus a cohesive stress,
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 T_{f}=\begin{cases}
 T_{c}-\mu_{f}T_{n} & T_{n}\leq0\\
-0 & T_{n}>0\end{cases}.\end{equation}
+0 & T_{n}>0
+\end{cases}.
+\end{equation}
 
 \end_inset
 
@@ -5040,7 +5150,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="3" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
 <row>
@@ -5140,11 +5250,14 @@
  to the cohesive stress plus a contribution proportional to the fault normal
  traction that decreases from a static value to a dynamic value as slip
  progresses,
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 T_{f}=\begin{cases}
 T_{c}-(\mu_{s}-(\mu_{s}-\mu_{d})\frac{d}{d_{0}})T_{n} & d\leq d_{0}\text{ and }T_{n}\leq0\\
 T_{c}-\mu_{d}T_{n} & d>d_{0}\text{ and }T_{n}\leq0\\
-0 & T_{n}>0\end{cases}\end{equation}
+0 & T_{n}>0
+\end{cases}
+\end{equation}
 
 \end_inset
 
@@ -5159,7 +5272,7 @@
 
 .
  As long as the fault is locked, the initial state variables are zero, so
- specifying the initial state variables for slip-weakening friction is rate.
+ specifying the initial state variables for slip-weakening friction is rare.
 \end_layout
 
 \begin_layout Standard
@@ -5195,7 +5308,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="7" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -5457,6 +5570,300 @@
 \end_layout
 
 \begin_layout Paragraph
+Time-Weakening Friction
+\end_layout
+
+\begin_layout Standard
+The linear time-weakening friction model is analogous to the linear slip-weakeni
+ng friction model with time replacing slip.
+ It produces shear tractions equal to the cohesive stress plus a contribution
+ proportional to the fault normal traction that decreases from a static
+ value to a dynamic value as time progresses,
+\begin_inset Formula 
+\begin{equation}
+T_{f}=\begin{cases}
+T_{c}-(\mu_{s}-(\mu_{s}-\mu_{d})\frac{t}{t_{0}})T_{n} & t\leq t_{0}\text{ and }T_{n}\leq0\\
+T_{c}-\mu_{d}T_{n} & t>t_{0}\text{ and }T_{n}\leq0\\
+0 & T_{n}>0
+\end{cases}
+\end{equation}
+
+\end_inset
+
+The spatial database files for the time-weakening friction model properties
+ and state variables specify the spatial variation of the fault constitutive
+ model parameters given in Table 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tab:time:weakening:properties:statevars"
+
+\end_inset
+
+.
+ As long as the fault is locked, the initial state variable is zero, so
+ specifying the initial state variable for time-weakening friction is rare.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float table
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Caption
+
+\begin_layout Plain Layout
+\begin_inset CommandInset label
+LatexCommand label
+name "tab:time:weakening:properties:statevars"
+
+\end_inset
+
+Values in spatial databases for time-weakening friction.
+\end_layout
+
+\end_inset
+
+
+\begin_inset VSpace defskip
+\end_inset
+
+
+\begin_inset Tabular
+<lyxtabular version="3" rows="6" columns="3">
+<features tabularvalignment="middle">
+<column alignment="left" valignment="top" width="0">
+<column alignment="left" valignment="top" width="0">
+<column alignment="left" valignment="top" width="2.5in">
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Database
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Value
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Description
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+db_properties
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+static-coefficient
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Static coefficient of friction, 
+\begin_inset Formula $\mu_{s}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+dynamic-coefficient
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Dynamic coefficient of friction, 
+\begin_inset Formula $\mu_{d}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+time-weakening-parameter
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Time-weakening parameter, 
+\begin_inset Formula $t_{0}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+cohesion
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Cohesive stress, 
+\begin_inset Formula $T_{c}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+db_initial_state
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+elapsed-time
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Elasped time of slip, 
+\begin_inset Formula $t$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Paragraph
 Rate- and State-Friction with Ageing Law
 \end_layout
 
@@ -5464,12 +5871,15 @@
 The Dietrich-Ruina rate and state friction model produces shear tractions
  equal to the cohesive stress plus a contribution proportional to the fault
  normal traction that depends on a state variable,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 T_{f}=\begin{cases}
 T_{c}-\mu_{f}T_{n} & T_{n}\leq0\\
-0 & T_{n}>0\end{cases}\\
+0 & T_{n}>0
+\end{cases}\\
 \mu_{f}=a\sinh^{-1}\left(\frac{1}{2}\frac{V}{V_{0}}\exp\left(\frac{1}{a}\left(\mu_{0}+b\ln\left(\frac{V_{0}\theta}{L}\right)\right)\right)\right)\\
-\frac{d\theta}{dt}=1-\frac{V\theta}{L}\end{gather}
+\frac{d\theta}{dt}=1-\frac{V\theta}{L}
+\end{gather}
 
 \end_inset
 
@@ -5517,8 +5927,10 @@
 
 , we integrate the evolution equation for the state variable keeping slip
  rate constant to get
-\begin_inset Formula \begin{equation}
-\theta(t+\Delta t)=\theta(t)\exp\left(\frac{-V(t)\Delta t}{L}\right)+\frac{L}{V(t)}\left(1-\exp\left(-\frac{V(t)\Delta t}{L}\right)\right).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\theta(t+\Delta t)=\theta(t)\exp\left(\frac{-V(t)\Delta t}{L}\right)+\frac{L}{V(t)}\left(1-\exp\left(-\frac{V(t)\Delta t}{L}\right)\right).
+\end{equation}
 
 \end_inset
 
@@ -5526,10 +5938,13 @@
  1.
  Using the first three terms of the Taylor series expansion of the second
  exponential yields
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \theta(t+\Delta t)=\begin{cases}
 \theta(t)\exp\left(-\frac{V(t)\Delta t}{L}\right)+\Delta t-\frac{1}{2}\frac{V(t)\Delta t^{2}}{L} & \frac{V(t)\Delta t}{L}<0.00001\\
-\theta(t)\exp\left(-\frac{V(t)\Delta t}{L}\right)+\frac{L}{V(t)}\left(1-\exp\left(-\frac{V(t)\Delta t}{L}\right)\right) & \frac{V(t)\Delta t}{L}\ge0.00001\end{cases}.\end{equation}
+\theta(t)\exp\left(-\frac{V(t)\Delta t}{L}\right)+\frac{L}{V(t)}\left(1-\exp\left(-\frac{V(t)\Delta t}{L}\right)\right) & \frac{V(t)\Delta t}{L}\ge0.00001
+\end{cases}.
+\end{equation}
 
 \end_inset
 
@@ -5582,7 +5997,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="8" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="0">
 <column alignment="left" valignment="top" width="2.5in">
@@ -5910,8 +6325,10 @@
 \end_inset
 
 , the body forces contribute to the residual,
-\begin_inset Formula \begin{equation}
-r_{i}^{n}=\int_{V}f_{i}N^{n}\: dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}=\int_{V}f_{i}N^{n}\: dV.
+\end{equation}
 
 \end_inset
 
@@ -5932,8 +6349,10 @@
 \end_inset
 
 :
-\begin_inset Formula \begin{equation}
-f_{i}=\rho ga_{i}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+f_{i}=\rho ga_{i}.
+\end{equation}
 
 \end_inset
 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/components.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/components.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/components.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -304,6 +322,21 @@
 Memory model logger for reporting memory use by Sieve.
 \end_layout
 
+\begin_layout Description
+
+\family typewriter
+VTKDataReader pylith.utils.
+\family default
+VTKDataReader
+\begin_inset Newline newline
+\end_inset
+
+Data reader for VTK files, requires TVTK Enthought package available from
+ 
+\family typewriter
+https://github.com/enthought/mayavi.
+\end_layout
+
 \begin_layout Subsection
 Topology components
 \end_layout
@@ -356,6 +389,43 @@
 Mesh importer/reader.
 \end_layout
 
+\begin_layout Description
+
+\family typewriter
+MeshRefiner pylith.topology.Mesh
+\family default
+Refiner
+\begin_inset Newline newline
+\end_inset
+
+Default (null) mesh refinement object that does not refine the mesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+RefineUniform pylith.topology.
+\family default
+RefineUniform
+\begin_inset Newline newline
+\end_inset
+
+Uniform global mesh refinement.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+ReverseCuthillMcKee pylith.topology.
+\family default
+ReverseCuthillMcKee
+\begin_inset Newline newline
+\end_inset
+
+Object used to manage reordering cells and vertices using the reverse Cuthill-Mc
+Kee algorithm.
+\end_layout
+
 \begin_layout Subsection
 Material components
 \end_layout
@@ -427,42 +497,55 @@
 \begin_layout Description
 
 \family typewriter
-ElasticIsotropic3D pylith.materials.ElasticIsotropic3D
+MaxwellPlaneStrain pylith.materials.MaxwellPlaneStrain
 \family default
 
 \begin_inset Newline newline
 \end_inset
 
-Linearly elastic 3-D bulk constitutive model.
+Linear Maxwell viscoelastic bulk constitutive model for plane strain problems.
 \end_layout
 
 \begin_layout Description
 
 \family typewriter
-MaxwellIsotropic3D pylith.materials.MaxwellIsotropic3D
+GenMaxwellPlaneStrain pylith.materials.GenMaxwellPlaneStrain
 \family default
 
 \begin_inset Newline newline
 \end_inset
 
-Linear Maxwell viscoelastic bulk constitutive model.
+Generalized Maxwell viscoelastic bulk constitutive model for plane strain
+ problems.
 \end_layout
 
 \begin_layout Description
 
 \family typewriter
-MaxwellPlaneStrain pylith.materials.MaxwellPlaneStrain
+ElasticIsotropic3D pylith.materials.ElasticIsotropic3D
 \family default
 
 \begin_inset Newline newline
 \end_inset
 
-Linear Maxwell viscoelastic bulk constitutive model for plane strain problems.
+Linearly elastic 3-D bulk constitutive model.
 \end_layout
 
 \begin_layout Description
 
 \family typewriter
+MaxwellIsotropic3D pylith.materials.MaxwellIsotropic3D
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear Maxwell viscoelastic bulk constitutive model.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
 GenMaxwellIsotropic3D pylith.materials.GenMaxwellIsotropic3D
 \family default
 
@@ -687,9 +770,20 @@
 Slip-time function composed of three sine/cosine functions.
  Similar to Brune's far-field time function but with more abrupt termination
  of slip.
- 
 \end_layout
 
+\begin_layout Description
+
+\family typewriter
+TimeHistorySlipFn pylith.faults.TimeHistorySlipFn
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Slip-time function with a user-defined slip time function.
+\end_layout
+
 \begin_layout Subsection
 Friction components
 \end_layout
@@ -730,6 +824,18 @@
 Dieterich-Ruina rate and state friction with ageing law state variable evolution.
 \end_layout
 
+\begin_layout Description
+
+\family typewriter
+TimeWeakening pylith.friction.TimeWeakening
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Linear time-weakening friction fault constitutive model.
+\end_layout
+
 \begin_layout Subsection
 Discretization components
 \end_layout
@@ -961,6 +1067,81 @@
 \begin_layout Description
 
 \family typewriter
+DataWriterHDF5Mesh pylith.meshio.DataWriterHDF5Mesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5SubMesh pylith.meshio.DataWriterHDF5SubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtSubSubMesh pylith.meshio.DataWriterHDF5ExtSubSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with submesh information over a submesh
+ with datasets written to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtMesh pylith.meshio.DataWriterHDF5ExtMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information with datasets written
+ to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5ExtSubMesh pylith.meshio.DataWriterHDF5ExtSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with mesh information over a submesh with
+ datasets written to external raw binary files.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
+DataWriterHDF5SubSubMesh pylith.meshio.DataWriterHDF5SubSubMesh
+\family default
+
+\begin_inset Newline newline
+\end_inset
+
+Writer for output to HDF5 files with submesh information over a submesh.
+\end_layout
+
+\begin_layout Description
+
+\family typewriter
 CellFilterAvgMesh pylith.meshio.CellFilterAvgMesh
 \family default
 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/cover/cover.pdf
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/cover/cover.svg.gz
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/cover/cover_small.jpg
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/governingeqns/governingeqns.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/governingeqns/governingeqns.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/governingeqns/governingeqns.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,21 +1,29 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding auto
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -23,9 +31,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -33,15 +50,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -110,7 +128,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="11" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
@@ -521,14 +539,18 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{S}T_{i}\, dS.\label{eqn:momentum:index}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{S}T_{i}\, dS.\label{eqn:momentum:index}
+\end{equation}
 
 \end_inset
 
 The traction vector field is related to the stress tensor through
-\begin_inset Formula \begin{equation}
-T_{i}=\sigma_{ij}n_{j},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+T_{i}=\sigma_{ij}n_{j},
+\end{equation}
 
 \end_inset
 
@@ -549,26 +571,34 @@
 \end_inset
 
  yields
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{S}\sigma_{ij}n_{j}\, dS.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{S}\sigma_{ij}n_{j}\, dS.
+\end{equation}
 
 \end_inset
 
 Applying the divergence theorem,
-\begin_inset Formula \begin{equation}
-\int_{V}a_{i,j}\: dV=\int_{S}a_{j}n_{j}\: dS,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}a_{i,j}\: dV=\int_{S}a_{j}n_{j}\: dS,
+\end{equation}
 
 \end_inset
 
 to the surface integral results in
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{V}\sigma_{ij,j}\, dV,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial u_{i}}{\partial t}\, dV=\int_{V}f_{i}\, dV+\int_{V}\sigma_{ij,j}\, dV,
+\end{equation}
 
 \end_inset
 
 which we can rewrite as
-\begin_inset Formula \begin{equation}
-\int_{V}\left(\rho\frac{\partial^{2}u_{i}}{\partial t^{2}}-f_{i}-\sigma_{ij,j}\right)\, dV=0.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}\left(\rho\frac{\partial^{2}u_{i}}{\partial t^{2}}-f_{i}-\sigma_{ij,j}\right)\, dV=0.
+\end{equation}
 
 \end_inset
 
@@ -578,11 +608,13 @@
 
  is arbitrary, the integrand must be zero at every location in the volume,
  so that we end up with
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \rho\frac{\partial^{2}u_{i}}{\partial t^{2}}-f_{i}-\sigma_{ij,j}=0\text{ in }V,\\
 \sigma_{ij}n_{j}=T_{i}\text{ on }S_{T}\text{,}\\
 u_{i}=u_{i}^{o}\text{ on }S_{u}\text{, and}\\
-R_{ki}(u_{i}^{+}-u_{i}^{-})=d_{k}\text{ on }S_{f}.\end{gather}
+R_{ki}(u_{i}^{+}-u_{i}^{-})=d_{k}\text{ on }S_{f}.
+\end{gather}
 
 \end_inset
 
@@ -663,14 +695,18 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\vec{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{S}\overrightarrow{T}\, dS.\label{eqn:momentum:vec}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\vec{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{S}\overrightarrow{T}\, dS.\label{eqn:momentum:vec}
+\end{equation}
 
 \end_inset
 
 The traction vector field is related to the stress tensor through
-\begin_inset Formula \begin{equation}
-\overrightarrow{T}=\underline{\sigma}\cdot\overrightarrow{n},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\overrightarrow{T}=\underline{\sigma}\cdot\overrightarrow{n},
+\end{equation}
 
 \end_inset
 
@@ -691,26 +727,34 @@
 \end_inset
 
  yields
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\overrightarrow{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\, dS.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\overrightarrow{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\, dS.
+\end{equation}
 
 \end_inset
 
 Applying the divergence theorem,
-\begin_inset Formula \begin{equation}
-\int_{V}\nabla\cdot\overrightarrow{a}\: dV=\int_{S}\overrightarrow{a}\cdot\overrightarrow{n}\: dS,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}\nabla\cdot\overrightarrow{a}\: dV=\int_{S}\overrightarrow{a}\cdot\overrightarrow{n}\: dS,
+\end{equation}
 
 \end_inset
 
 to the surface integral results in
-\begin_inset Formula \begin{equation}
-\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\overrightarrow{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{V}\nabla\cdot\underline{\sigma}\, dV,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial}{\partial t}\int_{V}\rho\frac{\partial\overrightarrow{u}}{\partial t}\, dV=\int_{V}\overrightarrow{f}\, dV+\int_{V}\nabla\cdot\underline{\sigma}\, dV,
+\end{equation}
 
 \end_inset
 
 which we can rewrite as
-\begin_inset Formula \begin{equation}
-\int_{V}\left(\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}-\overrightarrow{f}-\nabla\cdot\overrightarrow{\sigma}\right)\, dV=\vec{0}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}\left(\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}-\overrightarrow{f}-\nabla\cdot\overrightarrow{\sigma}\right)\, dV=\vec{0}.
+\end{equation}
 
 \end_inset
 
@@ -720,11 +764,13 @@
 
  is arbitrary, the integrand must be the zero vector at every location in
  the volume, so that we end up with
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}-\overrightarrow{f}-\nabla\cdot\overrightarrow{\sigma}=\vec{0}\text{ in }V,\\
 \underline{\sigma}\cdot\overrightarrow{n}=\overrightarrow{T}\text{ on }S_{T}\text{,}\\
 \overrightarrow{u}=\overrightarrow{u^{o}}\text{ on }S_{u},\text{ and}\\
-\underbar{R}\cdot(\vec{u^{+}}-\vec{u^{-}})=\vec{d}\text{ on }S_{f}.\end{gather}
+\underbar{R}\cdot(\vec{u^{+}}-\vec{u^{-}})=\vec{d}\text{ on }S_{f}.
+\end{gather}
 
 \end_inset
 
@@ -822,20 +868,24 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \sigma_{ij,j}+f_{i}=\rho\ddot{u_{i}}\text{ in }V,\\
 \sigma_{ij}n_{j}=T_{i}\text{ on }S_{T},\\
 u_{i}=u_{i}^{o}\text{ on }S_{u},\\
 R_{ki}(u_{i}^{+}-u_{i}^{-})=d_{k}\text{ on }S_{f},\text{ and}\\
-\sigma_{ij}=\sigma_{ji}\text{ (symmetric).}\end{gather}
+\sigma_{ij}=\sigma_{ji}\text{ (symmetric).}
+\end{gather}
 
 \end_inset
 
 We construct the weak form by computing the dot product of the wave equation
  and weighting function and setting the integral over the domain to zero:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \int_{V}\left(\sigma_{ij,j}+f_{i}-\rho\ddot{u}_{i}\right)\phi_{i}\, dV=0\text{, or }\\
-\int_{V}\sigma_{ij,j}\phi_{i}\: dV+\int_{V}f_{i}\phi_{i}\: dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\: dV=0.\end{gather}
+\int_{V}\sigma_{ij,j}\phi_{i}\: dV+\int_{V}f_{i}\phi_{i}\: dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\: dV=0.
+\end{gather}
 
 \end_inset
 
@@ -845,21 +895,27 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{equation}
-\int_{V}(\sigma_{ij}\phi_{i})_{,j}\, dV=\int_{S}(\sigma_{ij}\phi_{i})n_{i}\, dS.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}(\sigma_{ij}\phi_{i})_{,j}\, dV=\int_{S}(\sigma_{ij}\phi_{i})n_{i}\, dS.
+\end{equation}
 
 \end_inset
 
 Expanding the left-hand side yields
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \int_{V}\sigma_{ij,j}\phi_{i}\: dV+\int_{V}\sigma_{ij}\phi_{i,j}\: dV=\int_{S}\sigma_{ij}\phi_{i}n_{i}\: dS,\text{ or}\\
-\int_{V}\sigma_{ij,j}\phi_{i}\: dV=-\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S}\sigma_{ij}\phi_{i}n_{i}\, dS.\end{gather}
+\int_{V}\sigma_{ij,j}\phi_{i}\: dV=-\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S}\sigma_{ij}\phi_{i}n_{i}\, dS.
+\end{gather}
 
 \end_inset
 
 Substituting into the weak form gives
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0.
+\end{equation}
 
 \end_inset
 
@@ -888,29 +944,37 @@
 \end_inset
 
 ),
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S_{T}}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{S_{u}}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}\phi_{i,j}\, dV+\int_{S_{T}}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{S_{u}}\sigma_{ij}\phi_{i}n_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0,
+\end{equation}
 
 \end_inset
 
 and recognize that
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \sigma_{ij}n_{i}=T_{i}\text{ on }S_{T}\text{ and}\\
-\phi_{i}=0\text{ on }S_{u},\end{gather}
+\phi_{i}=0\text{ on }S_{u},
+\end{gather}
 
 \end_inset
 
 so that the equation reduces to
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}\phi_{i,j}\: dV+\int_{S_{T}}T_{i}\phi_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0.\label{eq:elasticity:integral}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}\phi_{i,j}\: dV+\int_{S_{T}}T_{i}\phi_{i}\, dS+\int_{V}f_{i}\phi_{i}\, dV-\int_{V}\rho\ddot{u}_{i}\phi_{i}\, dV=0.\label{eq:elasticity:integral}
+\end{equation}
 
 \end_inset
 
 We express the trial solution and weighting function as linear combinations
  of basis functions,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 u_{i}=\sum_{m}a_{i}^{m}N^{m},\\
-\phi_{i}=\sum_{n}c_{i}^{n}N^{n}.\end{gather}
+\phi_{i}=\sum_{n}c_{i}^{n}N^{n}.
+\end{gather}
 
 \end_inset
 
@@ -930,9 +994,11 @@
 .
  Substituting in the expressions for the trial solution and weighting function
  yields
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 -\int_{V}\sigma_{ij}\sum_{n}c_{i}^{n}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}\sum_{n}c_{i}^{n}N^{n}\, dS+\int_{V}f_{i}\sum_{n}c_{i}^{n}N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}N^{m}\sum_{n}c_{i}^{n}N^{n}\ dV=0,\text{ or}\\
-\sum_{n}c_{i}^{n}(-\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}N^{m}N^{n}\ dV)=0.\end{gather}
+\sum_{n}c_{i}^{n}(-\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}N^{m}N^{n}\ dV)=0.
+\end{gather}
 
 \end_inset
 
@@ -946,8 +1012,10 @@
 \end_inset
 
 
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}N^{m}N^{n}\ dV=\vec{0}.\label{eq:elasticity:integral:discretized}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}N^{m}N^{n}\ dV=\vec{0}.\label{eq:elasticity:integral:discretized}
+\end{equation}
 
 \end_inset
 
@@ -968,9 +1036,11 @@
 \bar no
 \noun off
 \color none
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 u_{i}=u_{i}^{o}\text{ on }S_{u},\text{ and}\\
-R_{ki}(u_{i}^{+}-u_{i}^{-})=d_{k}\text{ on }S_{f},\end{gather}
+R_{ki}(u_{i}^{+}-u_{i}^{-})=d_{k}\text{ on }S_{f},
+\end{gather}
 
 \end_inset
 
@@ -986,12 +1056,14 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \nabla\cdot\underline{\sigma}+\overrightarrow{f}=\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\text{ in }V,\\
 \underline{\sigma}\cdot\overrightarrow{n}=\overrightarrow{T}\text{ on }S_{T},\\
 \overrightarrow{u}=\overrightarrow{u^{o}}\text{ on }S_{u},\\
 \underbar{R}\cdot(\overrightarrow{u^{+}}-\overrightarrow{u^{-}})=\vec{d}\text{ on }S_{f}\\
-\underline{\sigma}=\underline{\sigma}^{T}\text{ (symmetric).}\end{gather}
+\underline{\sigma}=\underline{\sigma}^{T}\text{ (symmetric).}
+\end{gather}
 
 \end_inset
 
@@ -1010,9 +1082,11 @@
 \end_inset
 
  Hence our weak form is
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \int_{V}\left(\nabla\cdot\underline{\sigma}+\overrightarrow{f}-\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\right)\cdot\overrightarrow{\phi}\, dV=0\text{, or }\\
-\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\: dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\: dV=0.\end{gather}
+\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\: dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\: dV=0.
+\end{gather}
 
 \end_inset
 
@@ -1022,26 +1096,34 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{equation}
-\int_{V}\nabla\cdot(\underline{\sigma}\cdot\overrightarrow{\phi})\, dV=\int_{S}(\underline{\sigma}\cdot\overrightarrow{\phi})\cdot\overrightarrow{n}\, dS.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}\nabla\cdot(\underline{\sigma}\cdot\overrightarrow{\phi})\, dV=\int_{S}(\underline{\sigma}\cdot\overrightarrow{\phi})\cdot\overrightarrow{n}\, dS.
+\end{equation}
 
 \end_inset
 
 Expanding the left-hand side yields
-\begin_inset Formula \begin{equation}
-\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV+\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\: dV=\int_{S}(\underline{\sigma}\cdot\overrightarrow{\phi})\cdot\overrightarrow{n}\: dS,\text{ or}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV+\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\: dV=\int_{S}(\underline{\sigma}\cdot\overrightarrow{\phi})\cdot\overrightarrow{n}\: dS,\text{ or}
+\end{equation}
 
 \end_inset
 
 
-\begin_inset Formula \begin{equation}
-\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV=-\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}(\nabla\cdot\underline{\sigma})\cdot\overrightarrow{\phi}\: dV=-\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS.
+\end{equation}
 
 \end_inset
 
 Substituting into the weak form gives
-\begin_inset Formula \begin{equation}
--\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0.
+\end{equation}
 
 \end_inset
 
@@ -1058,29 +1140,37 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{multline}
--\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S_{T}}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{S_{u}}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0,\end{multline}
+\begin_inset Formula 
+\begin{multline}
+-\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\, dV+\int_{S_{T}}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{S_{u}}\underline{\sigma}\cdot\overrightarrow{n}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0,
+\end{multline}
 
 \end_inset
 
 and recognize that
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \underline{\sigma}\cdot\overrightarrow{n}=\overrightarrow{T}\text{ on }S_{T}\text{ and}\\
-\overrightarrow{\phi}=0\text{ on }S_{u},\end{gather}
+\overrightarrow{\phi}=0\text{ on }S_{u},
+\end{gather}
 
 \end_inset
 
 so that the equation reduces to
-\begin_inset Formula \begin{equation}
--\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\: dV+\int_{S_{T}}\overrightarrow{T}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\underline{\sigma}:\nabla\overrightarrow{\phi}\: dV+\int_{S_{T}}\overrightarrow{T}\cdot\overrightarrow{\phi}\, dS+\int_{V}\overrightarrow{f}\cdot\overrightarrow{\phi}\, dV-\int_{V}\rho\frac{\partial^{2}\overrightarrow{u}}{\partial t^{2}}\cdot\overrightarrow{\phi}\, dV=0.
+\end{equation}
 
 \end_inset
 
 We express the trial solution and weighting function as linear combinations
  of basis functions,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \vec{u}=\sum_{m}\overrightarrow{a^{m}}N^{m},\\
-\vec{\phi}=\sum_{n}\overrightarrow{c^{n}}N^{n}.\end{gather}
+\vec{\phi}=\sum_{n}\overrightarrow{c^{n}}N^{n}.
+\end{gather}
 
 \end_inset
 
@@ -1100,9 +1190,11 @@
 .
  Substituting in the expressions for the trial solution and weighting function
  yields
-\begin_inset Formula \begin{multline}
+\begin_inset Formula 
+\begin{multline}
 -\int_{V}\underline{\sigma}:\sum_{n}\overrightarrow{c^{n}}\nabla N_{,}^{n}\, dV+\int_{S_{T}}\vec{T}\cdot\sum_{n}\overrightarrow{c^{n}}N^{n}\, dS+\int_{V}\vec{f}\cdot\sum_{n}\overrightarrow{c^{n}}N^{n}\, dV\\
--\int_{V}\rho\sum_{m}\frac{\partial^{2}\overrightarrow{a^{m}}}{\partial t^{2}}N^{m}\cdot\sum_{n}\overrightarrow{c^{n}}N^{n}\ dV=0.\end{multline}
+-\int_{V}\rho\sum_{m}\frac{\partial^{2}\overrightarrow{a^{m}}}{\partial t^{2}}N^{m}\cdot\sum_{n}\overrightarrow{c^{n}}N^{n}\ dV=0.
+\end{multline}
 
 \end_inset
 
@@ -1112,8 +1204,10 @@
 \end_inset
 
 , so that
-\begin_inset Formula \begin{equation}
--\int_{V}\underline{\sigma}:\nabla N^{n}\, dV+\int_{S_{T}}\vec{T}N^{n}\, dS+\int_{V}\vec{f}N^{n}\, dV-\int_{V}\rho\sum_{m}\frac{\partial^{2}\overrightarrow{a^{m}}}{\partial t^{2}}N^{m}N^{n}\, dV=\vec{0}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\underline{\sigma}:\nabla N^{n}\, dV+\int_{S_{T}}\vec{T}N^{n}\, dS+\int_{V}\vec{f}N^{n}\, dV-\int_{V}\rho\sum_{m}\frac{\partial^{2}\overrightarrow{a^{m}}}{\partial t^{2}}N^{m}N^{n}\, dV=\vec{0}.
+\end{equation}
 
 \end_inset
 
@@ -1134,9 +1228,11 @@
 \bar no
 \noun off
 \color none
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \vec{u}=u^{o}\overrightarrow{}\text{ on }S_{u},\text{ and}\\
-\underline{R}(\overrightarrow{u^{+}}-\overrightarrow{u^{-}})=\vec{d}\text{ on }S_{f},\end{gather}
+\underline{R}(\overrightarrow{u^{+}}-\overrightarrow{u^{-}})=\vec{d}\text{ on }S_{f},
+\end{gather}
 
 \end_inset
 
@@ -1158,20 +1254,24 @@
 \end_inset
 
  reduces to
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV=\vec{0}.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV=\vec{0}.
+\end{equation}
 
 \end_inset
 
 As a result, time-dependence only enters through the constitutive relationships
  and the loading conditions.
- We considers deformation at time 
+ We consider the deformation at time 
 \begin_inset Formula $t+\Delta t$
 \end_inset
 
 ,
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}(t+\Delta t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV=\vec{0}.\label{eq:elasticity:integral:quasistatic}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}(t+\Delta t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV=\vec{0}.\label{eq:elasticity:integral:quasistatic}
+\end{equation}
 
 \end_inset
 
@@ -1190,16 +1290,20 @@
 
 ).
  The residual is simply
-\begin_inset Formula \begin{equation}
-r_{i}^{n}=-\int_{V}\sigma_{ij}(t+\Delta t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}=-\int_{V}\sigma_{ij}(t+\Delta t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV.
+\end{equation}
 
 \end_inset
 
 We employ numerical quadrature in the finite-element discretization and
  replace the integrals with sums over the cells and quadrature points,
-\begin_inset Formula \begin{multline}
+\begin_inset Formula 
+\begin{multline}
 r_{i}^{n}=-\sum_{\text{vol cells}}\sum_{\text{quad pts}}\sigma_{ij}(x_{q},t+\Delta t)N_{,j}^{n}(x_{q})\: w_{q}|J_{cell}(x_{q})|+\sum_{\text{vol cells}}\sum_{\text{quad pt}s}f_{i}(x_{q},t+\Delta t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|\\
-+\sum_{\text{tract cells}}\sum_{\text{quad pts}}T_{i}(x_{q},t+\Delta t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|,\end{multline}
++\sum_{\text{tract cells}}\sum_{\text{quad pts}}T_{i}(x_{q},t+\Delta t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|,
+\end{multline}
 
 \end_inset
 
@@ -1239,8 +1343,10 @@
 
 \begin_layout Standard
 In order to find the Jacobian of the system, we let
-\begin_inset Formula \begin{equation}
-\sigma_{ij}(t+\Delta t)=\sigma_{ij}(t)+d\sigma_{ij}(t).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sigma_{ij}(t+\Delta t)=\sigma_{ij}(t)+d\sigma_{ij}(t).
+\end{equation}
 
 \end_inset
 
@@ -1248,8 +1354,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-\int_{V}d\sigma_{ij}(t)N_{j}^{n}\ dV=-\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}d\sigma_{ij}(t)N_{j}^{n}\ dV=-\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t+\Delta t)N^{n}\, dS+\int_{V}f_{i}(t+\Delta t)N^{n}\, dV
+\end{equation}
 
 \end_inset
 
@@ -1260,10 +1368,12 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 d\sigma_{ij}(t)=C_{ijkl}(t)d\varepsilon_{kl}(t)\\
 d\sigma_{ij}(t)=\frac{1}{2}C_{ijkl}(t)(du_{k.l}(t)+du_{l,k}(t))\\
-d\sigma_{ij}(t)=\frac{1}{2}C_{ijkl}(t)(\sum_{m}da_{k,l}^{m}(t)N^{m}+\sum_{m}da_{l,k}^{m}(t)N^{m})\end{gather}
+d\sigma_{ij}(t)=\frac{1}{2}C_{ijkl}(t)(\sum_{m}da_{k,l}^{m}(t)N^{m}+\sum_{m}da_{l,k}^{m}(t)N^{m})
+\end{gather}
 
 \end_inset
 
@@ -1272,8 +1382,10 @@
 \end_inset
 
  is a scalar, so it is symmetric,
-\begin_inset Formula \begin{equation}
-d\sigma_{ij}\phi_{i,j}=d\sigma_{ji}\phi_{j,i},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\sigma_{ij}\phi_{i,j}=d\sigma_{ji}\phi_{j,i},
+\end{equation}
 
 \end_inset
 
@@ -1282,20 +1394,26 @@
 \end_inset
 
  is symmetric, so
-\begin_inset Formula \begin{equation}
-d\sigma_{ij}\phi_{i,j}=d\sigma_{ij}\phi_{j,i},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\sigma_{ij}\phi_{i,j}=d\sigma_{ij}\phi_{j,i},
+\end{equation}
 
 \end_inset
 
 which means
-\begin_inset Formula \begin{equation}
-\phi_{i,j}=\phi_{j,i},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\phi_{i,j}=\phi_{j,i},
+\end{equation}
 
 \end_inset
 
 which we can write as
-\begin_inset Formula \begin{equation}
-\phi_{i,j}=\frac{1}{2}(\phi_{i,j}+\phi_{j,i}).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\phi_{i,j}=\frac{1}{2}(\phi_{i,j}+\phi_{j,i}).
+\end{equation}
 
 \end_inset
 
@@ -1303,8 +1421,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-\sum_{n}c_{i}^{n}N_{,j}^{n}=\frac{1}{2}(\sum_{n}c_{i}^{n}N_{,j}^{n}+\sum_{n}c_{j}^{n}N_{,i}^{n}).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sum_{n}c_{i}^{n}N_{,j}^{n}=\frac{1}{2}(\sum_{n}c_{i}^{n}N_{,j}^{n}+\sum_{n}c_{j}^{n}N_{,i}^{n}).
+\end{equation}
 
 \end_inset
 
@@ -1314,15 +1434,19 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}=\int_{V}\frac{1}{4}C_{ijkl}(N_{,l}^{m}+N_{,k}^{m})(N_{,j}^{n}+N_{,i}^{n})\ dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\int_{V}\frac{1}{4}C_{ijkl}(N_{,l}^{m}+N_{,k}^{m})(N_{,j}^{n}+N_{,i}^{n})\ dV.
+\end{equation}
 
 \end_inset
 
 We employ numerical quadrature in the finite-element discretization and
  replace the integral with a sum over the cells and quadrature points,
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}=\sum_{\text{vol cells}}\sum_{\text{quad pts}}\frac{1}{4}C_{ijkl}(N_{,l}^{m}(x_{q})+N_{,k}^{m}(x_{q}))(N_{,j}^{n}(x_{q})+N_{,i}^{n}(x_{q}))w_{q}|J_{cell}(x_{q}).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\sum_{\text{vol cells}}\sum_{\text{quad pts}}\frac{1}{4}C_{ijkl}(N_{,l}^{m}(x_{q})+N_{,k}^{m}(x_{q}))(N_{,j}^{n}(x_{q})+N_{,i}^{n}(x_{q}))w_{q}|J_{cell}(x_{q}).
+\end{equation}
 
 \end_inset
 
@@ -1343,8 +1467,10 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{equation}
--\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t)N^{n}\, dS+\int_{V}f_{i}(t)N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ dV=\vec{0}.\label{eq:elasticity:integral:dynamic:t}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+-\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t)N^{n}\, dS+\int_{V}f_{i}(t)N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ dV=\vec{0}.\label{eq:elasticity:integral:dynamic:t}
+\end{equation}
 
 \end_inset
 
@@ -1363,16 +1489,20 @@
 
 ).
  The residual is simply
-\begin_inset Formula \begin{equation}
-r_{i}^{n}=-\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t)N^{n}\, dS+\int_{V}f_{i}(t)N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}=-\int_{V}\sigma_{ij}(t)N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}(t)N^{n}\, dS+\int_{V}f_{i}(t)N^{n}\, dV-\int_{V}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ dV.
+\end{equation}
 
 \end_inset
 
 We employ numerical quadrature in the finite-element discretization and
  replace the integrals with sums over the cells and quadrature points,
-\begin_inset Formula \begin{multline}
+\begin_inset Formula 
+\begin{multline}
 r_{i}^{n}=-\sum_{\text{vol cells}}\sum_{\text{quad pts}}\sigma_{ij}(x_{q},t)N^{n}(x_{q})\: w_{q}|J_{cell}(x_{q})|+\sum_{\text{vol cells}}\sum_{\text{quad pt}s}f_{i}(x_{q},t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|\\
-+\sum_{\text{tract cells}}\sum_{\text{quad pts}}T_{i}(x_{q},t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|-\sum_{\text{vol cells}}\sum_{\text{quad pts}}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ w_{q|J_{cell}(x_{q})},\end{multline}
++\sum_{\text{tract cells}}\sum_{\text{quad pts}}T_{i}(x_{q},t)N^{n}(x_{q})\, w_{q}|J_{cell}(x_{q})|-\sum_{\text{vol cells}}\sum_{\text{quad pts}}\rho\sum_{m}\ddot{a}_{i}^{m}(t)N^{m}N^{n}\ w_{q|J_{cell}(x_{q})},
+\end{multline}
 
 \end_inset
 
@@ -1405,9 +1535,11 @@
 .
  Using the central difference method to approximate the acceleration (and
  velocity),
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \ddot{u}_{i}(t)=\frac{1}{\Delta t^{2}}\left(u_{i}(t+\Delta t)-2u_{i}(t)+u_{i}(t-\Delta t)\right)\\
-\dot{u}_{i}(t)=\frac{1}{2\Delta t}\left(u_{i}(t+\Delta t)-u_{i}(t-\Delta t)\right)\end{gather}
+\dot{u}_{i}(t)=\frac{1}{2\Delta t}\left(u_{i}(t+\Delta t)-u_{i}(t-\Delta t)\right)
+\end{gather}
 
 \end_inset
 
@@ -1420,10 +1552,12 @@
 \end_inset
 
  (for consistency with the displacement increment quasi-static formulation),
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 u_{i}(t+\Delta t)=u_{i}(t)+du_{i}(t),\\
 \ddot{u}_{i}(t)=\frac{1}{\Delta t^{2}}\left(du_{i}(t)-u_{i}(t)+u_{i}(t-\Delta t)\right),\\
-\dot{u}_{i}(t)=\frac{1}{2\Delta t}\left(du_{i}(t)+u_{i}(t)-u_{i}(t-\Delta t)\right).\end{gather}
+\dot{u}_{i}(t)=\frac{1}{2\Delta t}\left(du_{i}(t)+u_{i}(t)-u_{i}(t-\Delta t)\right).
+\end{gather}
 
 \end_inset
 
@@ -1435,15 +1569,19 @@
 \end_inset
 
  yields
-\begin_inset Formula \begin{multline}
+\begin_inset Formula 
+\begin{multline}
 \frac{1}{\Delta t^{2}}\int_{V}\rho\sum_{m}da_{i}^{m}(t)N^{m}N^{n}\ dV=-\int_{V}\sigma_{ij}N_{,j}^{n}\: dV+\int_{S_{T}}T_{i}N^{n}\, dS+\int_{V}f_{i}N^{n}\, dV\\
--\frac{1}{\Delta t^{2}}\int_{V}\rho\sum_{m}(a_{i}^{m}(t)-a_{i}^{m}(t-\Delta t))N^{m}N^{n}\ dV.\end{multline}
+-\frac{1}{\Delta t^{2}}\int_{V}\rho\sum_{m}(a_{i}^{m}(t)-a_{i}^{m}(t-\Delta t))N^{m}N^{n}\ dV.
+\end{multline}
 
 \end_inset
 
 Thus, the Jacobian for the system is
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}=\delta_{ij}\frac{1}{\Delta t^{2}}\int_{V}\rho N^{m}N^{n}\ dV,\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\delta_{ij}\frac{1}{\Delta t^{2}}\int_{V}\rho N^{m}N^{n}\ dV,
+\end{equation}
 
 \end_inset
 
@@ -1452,8 +1590,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}=\delta_{ij}\frac{1}{\Delta t^{2}}\sum_{\text{vol cells}}\sum_{\text{quad pts}}\rho(x_{q})N^{m}(x_{q})N^{n}(x_{q}),\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\delta_{ij}\frac{1}{\Delta t^{2}}\sum_{\text{vol cells}}\sum_{\text{quad pts}}\rho(x_{q})N^{m}(x_{q})N^{n}(x_{q}),
+\end{equation}
 
 \end_inset
 
@@ -1536,10 +1676,12 @@
 .
  The Green-Lagrange strain provides a measure of the strain relative to
  the original, undeformed configuration.
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \varepsilon_{ij}=\frac{1}{2}(u_{i,j}+u_{j,i}+u_{k,i}u_{k,j}),\text{ or}\\
 \varepsilon_{ij}=X_{ji}X_{ij}-\delta_{ij},\text{ where}\\
-X_{ij}=x_{i,j}(t)=\frac{\partial}{\partial x_{j}}(x_{i}(0)+u_{i}(t)),\end{gather}
+X_{ij}=x_{i,j}(t)=\frac{\partial}{\partial x_{j}}(x_{i}(0)+u_{i}(t)),
+\end{gather}
 
 \end_inset
 
@@ -1557,8 +1699,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-S_{ij}=C_{ijkl}\varepsilon_{kl},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+S_{ij}=C_{ijkl}\varepsilon_{kl},
+\end{equation}
 
 \end_inset
 
@@ -1600,8 +1744,10 @@
 
  strain.
  Using the definition of the Green-Lagrangian strain, we have
-\begin_inset Formula \begin{equation}
-\int_{V}S_{ij}\delta\varepsilon_{ij}\: dV=\int_{V}\frac{1}{2}S_{ij}(\delta u_{i,j}+\delta u_{j,i}+u_{k,i}\delta u_{k,j}+u_{k,j}\delta u_{k,i})\: dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{V}S_{ij}\delta\varepsilon_{ij}\: dV=\int_{V}\frac{1}{2}S_{ij}(\delta u_{i,j}+\delta u_{j,i}+u_{k,i}\delta u_{k,j}+u_{k,j}\delta u_{k,i})\: dV.
+\end{equation}
 
 \end_inset
 
@@ -1615,8 +1761,10 @@
 \end_inset
 
  strain) to zero yields the elastic term in the residual,
-\begin_inset Formula \begin{equation}
-r_{i}^{n}=\int_{V}S_{ij}(N_{,i}^{n}+(\sum_{m}a_{k}^{m}N_{,j}^{m})N_{,i}^{n})\: dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+r_{i}^{n}=\int_{V}S_{ij}(N_{,i}^{n}+(\sum_{m}a_{k}^{m}N_{,j}^{m})N_{,i}^{n})\: dV.
+\end{equation}
 
 \end_inset
 
@@ -1640,14 +1788,18 @@
 \end_inset
 
  and consider the first terms of the Taylor series expansion,
-\begin_inset Formula \begin{equation}
-\int_{v}S_{ij}(t+\Delta t)\delta\varepsilon_{ij}(t+\Delta t)\: dV=\int_{V}(S_{ij}(t)\delta\varepsilon_{ij}(t)+dS_{ij}(t)\delta\varepsilon_{ij}(t)+S_{ij}(t)d\delta\varepsilon_{ij}(t))\: dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\int_{v}S_{ij}(t+\Delta t)\delta\varepsilon_{ij}(t+\Delta t)\: dV=\int_{V}(S_{ij}(t)\delta\varepsilon_{ij}(t)+dS_{ij}(t)\delta\varepsilon_{ij}(t)+S_{ij}(t)d\delta\varepsilon_{ij}(t))\: dV.
+\end{equation}
 
 \end_inset
 
 We approximate the increment in the stress tensor using the elastic constants,
-\begin_inset Formula \begin{equation}
-dS_{ij}=C_{ijkl}d\varepsilon_{kl},\end{equation}
+\begin_inset Formula 
+\begin{equation}
+dS_{ij}=C_{ijkl}d\varepsilon_{kl},
+\end{equation}
 
 \end_inset
 
@@ -1660,8 +1812,10 @@
 \end_inset
 
  strain via
-\begin_inset Formula \begin{equation}
-d\delta\varepsilon_{ij}=\frac{1}{2}(du_{k,i}\delta u_{k,j}+du_{k,j}\delta u_{k,i}).\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\delta\varepsilon_{ij}=\frac{1}{2}(du_{k,i}\delta u_{k,j}+du_{k,j}\delta u_{k,i}).
+\end{equation}
 
 \end_inset
 
@@ -1677,8 +1831,10 @@
 \end_inset
 
  strains, we have
-\begin_inset Formula \begin{equation}
-A_{ij}^{nm}=\int_{V}\frac{1}{4}C_{ijkl}(N_{,k}^{m}+(\sum_{r}a_{p}^{r}N_{,l}^{r})N_{,k}^{m})(N_{,i}^{n}+(\sum_{r}a_{p}^{r}N_{,j}^{r})N_{,i}^{n})+\frac{1}{2}S_{kl}N_{,l}^{m}N_{,l}^{n}\delta_{ij}\: dV.\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{ij}^{nm}=\int_{V}\frac{1}{4}C_{ijkl}(N_{,k}^{m}+(\sum_{r}a_{p}^{r}N_{,l}^{r})N_{,k}^{m})(N_{,i}^{n}+(\sum_{r}a_{p}^{r}N_{,j}^{r})N_{,i}^{n})+\frac{1}{2}S_{kl}N_{,l}^{m}N_{,l}^{n}\delta_{ij}\: dV.
+\end{equation}
 
 \end_inset
 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/install/install.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/install/install.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/install/install.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.7 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref true
@@ -35,9 +43,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -45,15 +62,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -172,8 +190,8 @@
 \end_layout
 
 \begin_layout Standard
-Binary executables are available for Linux, Mac OS X (Intel 10.5 and Intel
- 10.6), and Windows from the PyLith web page 
+Binary executables are available for Linux, Mac OS X (Intel 10.4/10.5 and
+ Intel 10.6), and Windows from the PyLith web page 
 \begin_inset Flex URL
 status collapsed
 
@@ -235,7 +253,7 @@
 
 \begin_deeper
 \begin_layout LyX-Code
-$ tar -xzf pylith-1.5.0-linux-i686.tgz
+$ tar -xzf pylith-1.6.0-linux-i686.tgz
 \end_layout
 
 \end_deeper
@@ -305,12 +323,12 @@
 
 \begin_layout Enumerate
 Unpack the tarball.
- For 10.5.x operating system,
+ For 10.4.x or 10.5.x operating system,
 \end_layout
 
 \begin_deeper
 \begin_layout LyX-Code
-$ tar -xzf pylith-1.5.0-darwin-i386.tgz
+$ tar -xzf pylith-1.6.0-darwin-10.4.tgz
 \end_layout
 
 \end_deeper
@@ -395,7 +413,19 @@
  This insures that the versions of the dependencies are consistent with
  PyLith and that the proper configure arguments are used.
  The minimum requirements for using the PyLith installer are a C compiler,
- tar, and wget or curl.
+ 
+\family typewriter
+tar
+\family default
+, and 
+\family typewriter
+wget
+\family default
+ or 
+\family typewriter
+curl
+\family default
+.
  Detailed instructions for how to install PyLith using the installer are
  included in the installer distribution, which is available from the PyLith
  web page 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.eps
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.svg
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.svg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/intro/figs/workflow.svg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!-- Created with Inkscape (http://www.inkscape.org/) -->
+
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
@@ -13,7 +14,7 @@
    height="765"
    id="svg2"
    sodipodi:version="0.32"
-   inkscape:version="0.46"
+   inkscape:version="0.48.1 r9760"
    version="1.0"
    sodipodi:docname="workflow.svg"
    inkscape:output_extension="org.inkscape.output.svg.inkscape"
@@ -96,7 +97,7 @@
      inkscape:cx="229.13"
      inkscape:cy="460.72106"
      inkscape:document-units="px"
-     inkscape:current-layer="layer1"
+     inkscape:current-layer="layer5"
      showgrid="true"
      inkscape:object-nodes="true"
      inkscape:object-paths="true"
@@ -106,7 +107,8 @@
      inkscape:window-width="1207"
      inkscape:window-height="853"
      inkscape:window-x="65"
-     inkscape:window-y="65">
+     inkscape:window-y="65"
+     inkscape:window-maximized="0">
     <inkscape:grid
        type="xygrid"
        id="grid2383"
@@ -140,7 +142,7 @@
          id="path7400"
          sodipodi:nodetypes="cc" />
       <path
-         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:6, 6;stroke-dashoffset:0;stroke-opacity:1;display:inline"
+         style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:inline"
          d="M 350,125 L 410,305"
          id="path7410"
          sodipodi:nodetypes="cc" />

Modified: short/3D/PyLith/branches/multifields/doc/userguide/intro/intro.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/intro/intro.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/intro/intro.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -71,7 +89,7 @@
 \begin_layout Standard
 PyLith 1.0 was the first version to allow the solution of both implicit (quasi-st
 atic) and explicit (dynamic) problems and was a complete rewrite of the
- original PyLith.
+ original PyLith (version 0.8).
  PyLith 1.0 combines the functionality of EqSim 
 \begin_inset CommandInset citation
 LatexCommand cite
@@ -108,11 +126,8 @@
  meshing packages.
  The elements currently available include a linear bar in 1-D, linear triangles
  and quadrilaterals in 2-D, and linear tetrahedra and hexahedra in 3-D.
- Higher-order (quadratic) elements are also supported, but it is not presently
- possible to create a quadratic mesh from the linear meshes provided by
- most meshing packages.
  Materials presently available include isotropic elastic, linear Maxwell
- viscoelastic (2-D and 3-D), generalized Maxwell viscoelastic (3-D only),
+ viscoelastic (2-D and 3-D), generalized Maxwell viscoelastic (2-D and 3-D),
  power-law viscoelastic (3-D only), and Drucker-Prager elastoplastic (3-D
  only).
  Boundary conditions include Dirichlet (prescribed displacements and velocities)
@@ -150,9 +165,8 @@
  LaGriT GMV and Pset files, and PyLith mesh ASCII format.
  The modeling of the physical processes of interest is performed by a code
  such as PyLith.
- Present output consists of VTK files which can be used by a number of visualiza
-tion codes (e.g., ParaView, Visit, and MayaVi).
- In the near future, PyLith will also use the HDF5 format.
+ Present output consists of VTK or HDF5/Xdmf files which can be used by
+ a number of visualization codes (e.g., ParaView, Visit, MayaVi, and Matlab).
  
 \end_layout
 
@@ -368,7 +382,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/pyre_overview.png
-	scale 75
+	width 4in
 
 \end_inset
 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/license.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/license.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/license.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -54,7 +72,7 @@
 \end_layout
 
 \begin_layout Standard
-Copyright (C) 2010 University of California, Davis
+Copyright (C) 2010-2011 University of California, Davis
 \end_layout
 
 \begin_layout Standard

Copied: short/3D/PyLith/branches/multifields/doc/userguide/makepdf.sh (from rev 18641, short/3D/PyLith/trunk/doc/userguide/makepdf.sh)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/makepdf.sh	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/userguide/makepdf.sh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,22 @@
+#!/bin/bash
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard, U.S. Geological Survey
+# Charles A. Williams, GNS Science
+# Matthew G. Knepley, University of Chicago
+#
+# This code was developed as part of the Computational Infrastructure
+# for Geodynamics (http://geodynamics.org).
+#
+# Copyright (c) 2010 University of California, Davis
+#
+# See COPYING for license information.
+#
+# ----------------------------------------------------------------------
+#
+
+for i in `find . -name "*.eps"`; do epstopdf $i; done
+lyx -e pdf userguide.lyx
+
+# End of file
\ No newline at end of file

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

Modified: short/3D/PyLith/branches/multifields/doc/userguide/materials/materials.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/materials/materials.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/materials/materials.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 \newcommand\Prefix[3]{\vphantom{#3}#1#2#3}
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -519,11 +537,11 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="6" columns="4">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="1.5in">
 <column alignment="center" valignment="top" width="1.8in">
 <column alignment="center" valignment="top" width="1.5in">
-<column alignment="center" valignment="top" width="1.5in">
+<column alignment="center" valignment="top" width="1in">
 <row>
 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
 \begin_inset Text
@@ -857,7 +875,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="3" columns="4">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="1.25in">
 <column alignment="center" valignment="top" width="0.5in">
 <column alignment="center" valignment="top" width="1.25in">
@@ -1080,8 +1098,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
-\sigma_{ij}=C_{ijkl}\left(\epsilon_{kl}-\epsilon_{kl}^{I}\right)+\sigma_{ij}^{I}\,,\label{eq:1}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\sigma_{ij}=C_{ijkl}\left(\epsilon_{kl}-\epsilon_{kl}^{I}\right)+\sigma_{ij}^{I}\,,\label{eq:1}
+\end{gather}
 
 \end_inset
 
@@ -1096,8 +1116,10 @@
  of anisotropic elasticity.
  Representing the stress and strain in terms of vectors, the constitutive
  relation may be written
-\begin_inset Formula \begin{gather}
-\overrightarrow{\sigma}=\underline{C}\left(\vec{\epsilon}-\vec{\epsilon}^{I}\right)+\vec{\sigma}^{I},\label{eq:2}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\overrightarrow{\sigma}=\underline{C}\left(\vec{\epsilon}-\vec{\epsilon}^{I}\right)+\vec{\sigma}^{I},\label{eq:2}
+\end{gather}
 
 \end_inset
 
@@ -1105,14 +1127,17 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \underline{C}=\left[\begin{array}{cccccc}
 C_{1111} & C_{1122} & C_{1133} & C_{1112} & C_{1123} & C_{1113}\\
 C_{1122} & C_{2222} & C_{2233} & C_{2212} & C_{2223} & C_{2213}\\
 C_{1133} & C_{2233} & C_{3333} & C_{3312} & C_{3323} & C_{3313}\\
 C_{1112} & C_{2212} & C_{3312} & C_{1212} & C_{1223} & C_{1213}\\
 C_{1123} & C_{2223} & C_{3323} & C_{1223} & C_{2323} & C_{2313}\\
-C_{1113} & C_{2213} & C_{3313} & C_{1213} & C_{2313} & C_{1313}\end{array}\right]\:.\label{eq:3}\end{gather}
+C_{1113} & C_{2213} & C_{3313} & C_{1213} & C_{2313} & C_{1313}
+\end{array}\right]\:.\label{eq:3}
+\end{gather}
 
 \end_inset
 
@@ -1143,10 +1168,13 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \begin{aligned}\mu= & \rho v_{s}^{2}\\
-\lambda= & \rho v_{p}^{2}-2\mu\end{aligned}
-\label{eq:4}\end{equation}
+\lambda= & \rho v_{p}^{2}-2\mu
+\end{aligned}
+\label{eq:4}
+\end{equation}
 
 \end_inset
 
@@ -1177,7 +1205,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="4" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="middle" width="0.85in">
 <column alignment="center" valignment="middle" width="2.47in">
 <row>
@@ -1322,15 +1350,19 @@
 \end_inset
 
 , so we have
-\begin_inset Formula \begin{equation}
-\sigma_{11}=(\lambda+2\mu)\left(\epsilon_{11}-\epsilon_{11}^{I}\right)+\sigma_{11}^{I},\label{eq:5}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sigma_{11}=(\lambda+2\mu)\left(\epsilon_{11}-\epsilon_{11}^{I}\right)+\sigma_{11}^{I},\label{eq:5}
+\end{equation}
 
 \end_inset
 
 with
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \sigma_{22}=\sigma_{33}=\lambda\left(\epsilon_{11}-\epsilon_{11}^{I}\right)+\sigma_{22}^{I},\nonumber \\
-\sigma_{12}=\sigma_{23}=\sigma_{13}=0.\label{eq:6}\end{gather}
+\sigma_{12}=\sigma_{23}=\sigma_{13}=0.\label{eq:6}
+\end{gather}
 
 \end_inset
 
@@ -1356,15 +1388,19 @@
 \end_inset
 
 , so we have
-\begin_inset Formula \begin{equation}
-\sigma_{11}=\frac{\mu(3\lambda+2\mu)}{\lambda+\mu}\left(\epsilon_{11}-\epsilon_{11}^{I}\right)+\sigma_{11}^{I},\label{eq:7}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sigma_{11}=\frac{\mu(3\lambda+2\mu)}{\lambda+\mu}\left(\epsilon_{11}-\epsilon_{11}^{I}\right)+\sigma_{11}^{I},\label{eq:7}
+\end{equation}
 
 \end_inset
 
 with
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \epsilon_{22}=\epsilon_{33}=-\frac{\lambda}{2(\lambda+\mu)}\epsilon_{11}+\epsilon_{22}^{I},\label{eq:8}\\
-\sigma_{22}=\sigma_{33}=\sigma_{12}=\sigma_{23}=\sigma_{13}=0.\nonumber \end{gather}
+\sigma_{22}=\sigma_{33}=\sigma_{12}=\sigma_{23}=\sigma_{13}=0.\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -1377,20 +1413,26 @@
 
 \begin_layout Standard
 In 2D we can write Hooke's law as
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \left[\begin{array}{c}
 \sigma_{11}\\
 \sigma_{22}\\
-\sigma_{12}\end{array}\right]=\left[\begin{array}{ccc}
+\sigma_{12}
+\end{array}\right]=\left[\begin{array}{ccc}
 C_{1111} & C_{1122} & C_{1112}\\
 C_{1122} & C_{2222} & C_{2212}\\
-C_{1112} & C_{2212} & C_{1212}\end{array}\right]\left[\begin{array}{c}
+C_{1112} & C_{2212} & C_{1212}
+\end{array}\right]\left[\begin{array}{c}
 \epsilon_{11}-\epsilon_{11}^{I}\\
 \epsilon_{22}-\epsilon_{22}^{I}\\
-\epsilon_{12}-\epsilon_{12}^{I}\end{array}\right]+\left[\begin{array}{c}
+\epsilon_{12}-\epsilon_{12}^{I}
+\end{array}\right]+\left[\begin{array}{c}
 \sigma_{11}^{I}\\
 \sigma_{22}^{I}\\
-\sigma_{12}^{I}\end{array}\right]\:.\label{eq:9}\end{gather}
+\sigma_{12}^{I}
+\end{array}\right]\:.\label{eq:9}
+\end{gather}
 
 \end_inset
 
@@ -1411,20 +1453,26 @@
 \end_inset
 
  and plane strain conditions apply, so we have 
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \left[\begin{array}{c}
 \sigma_{11}\\
 \sigma_{22}\\
-\sigma_{12}\end{array}\right]=\left[\begin{array}{ccc}
+\sigma_{12}
+\end{array}\right]=\left[\begin{array}{ccc}
 \lambda+2\mu & \lambda & 0\\
 \lambda & \lambda+2\mu & 0\\
-0 & 0 & 2\mu\end{array}\right]\left[\begin{array}{c}
+0 & 0 & 2\mu
+\end{array}\right]\left[\begin{array}{c}
 \epsilon_{11}-\epsilon_{11}^{I}\\
 \epsilon_{22}-\epsilon_{22}^{I}\\
-\epsilon_{12}-\epsilon_{12}^{I}\end{array}\right]+\left[\begin{array}{c}
+\epsilon_{12}-\epsilon_{12}^{I}
+\end{array}\right]+\left[\begin{array}{c}
 \sigma_{11}^{I}\\
 \sigma_{22}^{I}\\
-\sigma_{12}^{I}\end{array}\right]\:.\label{eq:10}\end{gather}
+\sigma_{12}^{I}
+\end{array}\right]\:.\label{eq:10}
+\end{gather}
 
 \end_inset
 
@@ -1445,28 +1493,37 @@
 \end_inset
 
  and plane stress conditions apply, so we have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \left[\begin{array}{c}
 \sigma_{11}\\
 \sigma_{22}\\
-\sigma_{12}\end{array}\right]=\left[\begin{array}{ccc}
+\sigma_{12}
+\end{array}\right]=\left[\begin{array}{ccc}
 \frac{4\mu(\lambda+\mu)}{\lambda+2\mu} & \frac{2\mu\lambda}{\lambda+2\mu} & 0\\
 \frac{2\mu\lambda}{\lambda+2} & \frac{4\mu(\lambda+\mu)}{\lambda+2\mu} & 0\\
-0 & 0 & 2\mu\end{array}\right]\left[\begin{array}{c}
+0 & 0 & 2\mu
+\end{array}\right]\left[\begin{array}{c}
 \epsilon_{11}-\epsilon_{11}^{I}\\
 \epsilon_{22}-\epsilon_{22}^{I}\\
-\epsilon_{12}-\epsilon_{12}^{I}\end{array}\right]+\left[\begin{array}{c}
+\epsilon_{12}-\epsilon_{12}^{I}
+\end{array}\right]+\left[\begin{array}{c}
 \sigma_{11}^{I}\\
 \sigma_{22}^{I}\\
-\sigma_{12}^{I}\end{array}\right]\:,\label{eq:11}\end{gather}
+\sigma_{12}^{I}
+\end{array}\right]\:,\label{eq:11}
+\end{gather}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \begin{gathered}\epsilon_{33}=-\frac{\lambda}{\lambda+2\mu}(\epsilon_{11}+\epsilon_{22})+\epsilon_{33}^{I}\\
-\epsilon_{13}=\epsilon_{23}=0\,.\end{gathered}
-\label{eq:12}\end{equation}
+\epsilon_{13}=\epsilon_{23}=0\,.
+\end{gathered}
+\label{eq:12}
+\end{equation}
 
 \end_inset
 
@@ -1490,14 +1547,17 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \underline{C}=\left[\begin{array}{cccccc}
 \lambda+2\mu & \lambda & \lambda & 0 & 0 & 0\\
 \lambda & \lambda+2\mu & \lambda & 0 & 0 & 0\\
 \lambda & \lambda & \lambda+2\mu & 0 & 0 & 0\\
 0 & 0 & 0 & 2\mu & 0 & 0\\
 0 & 0 & 0 & 0 & 2\mu & 0\\
-0 & 0 & 0 & 0 & 0 & 2\mu\end{array}\right]\:.\label{eq:13}\end{gather}
+0 & 0 & 0 & 0 & 0 & 2\mu
+\end{array}\right]\:.\label{eq:13}
+\end{gather}
 
 \end_inset
 
@@ -1505,11 +1565,17 @@
 \end_layout
 
 \begin_layout Section
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Viscoelastic-Materials"
+
+\end_inset
+
 Viscoelastic Materials
 \end_layout
 
 \begin_layout Standard
-At present, there are four viscoelastic material models available in PyLith
+At present, there are five viscoelastic material models available in PyLith
  (Table 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -1526,11 +1592,35 @@
 
 ).
  Future code versions may include alternative formulations for the various
- material models, so that users may use the most efficient formulation for
- a particular problem.
+ material models (Appendix 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "cha:Alternative-Formulations"
+
+\end_inset
+
+), so that users may use the most efficient formulation for a particular
+ problem.
  Note that both 2D and 3D viscoelastic models are described, but we present
  below only the 3D formulations.
  The 2D formulations are easily obtained from the plane strain definition.
+ The one aspect of the 2D formulations that is different is the specification
+ of initial stresses.
+ Since 2D models only have three tensor components, it is not possible to
+ specify the normal stress in the out-of-plane direction (
+\begin_inset Formula $\sigma_{33}$
+\end_inset
+
+), which is generally nonzero, using the same method as the other tensor
+ components.
+ To allow for the specification of this initial stress component, an additional
+ state variable corresponding to 
+\begin_inset Formula $\sigma_{33}^{I}$
+\end_inset
+
+ is provided.
+ Note that this is not an issue for the 2D elastic models, since this initial
+ stress component is not needed.
 \end_layout
 
 \begin_layout Standard
@@ -1561,8 +1651,8 @@
 
 
 \begin_inset Tabular
-<lyxtabular version="3" rows="5" columns="2">
-<features>
+<lyxtabular version="3" rows="6" columns="2">
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="2.85in">
 <column alignment="center" valignment="top" width="2.47in">
 <row>
@@ -1614,6 +1704,26 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+GenMaxwellPlaneStrain
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Plane strain generalized Maxwell material (3 Maxwell models in parallel)
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
 MaxwellIsotropic3D
 \end_layout
 
@@ -1702,7 +1812,6 @@
 \begin_inset Caption
 
 \begin_layout Plain Layout
-\noindent
 \begin_inset CommandInset label
 LatexCommand label
 name "fig:Material-models"
@@ -1758,8 +1867,10 @@
  indices indicate summation over the range of the index.
  We also make frequent use of the scalar inner product.
  The scalar inner product of two second-order tensors may be written
-\begin_inset Formula \begin{gather}
-\underline{a}\cdot\underline{b}=a_{ij}b_{ij}\,.\label{eq:14}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\underline{a}\cdot\underline{b}=a_{ij}b_{ij}\,.\label{eq:14}
+\end{gather}
 
 \end_inset
 
@@ -1775,8 +1886,10 @@
 \end_inset
 
 :
-\begin_inset Formula \begin{gather}
-P=\frac{\sigma_{ii}}{3}\,,\,\,\,\,\theta=\frac{\epsilon_{ii}}{3}\,,\label{eq:15}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+P=\frac{\sigma_{ii}}{3}\,,\,\,\,\,\theta=\frac{\epsilon_{ii}}{3}\,,\label{eq:15}
+\end{gather}
 
 \end_inset
 
@@ -1790,8 +1903,10 @@
 
  represent the trace of the stress and strain tensors, respectively.
  We then define the deviatoric components of stress and strain as
-\begin_inset Formula \begin{gather}
-S_{ij}=\sigma_{ij}-P\delta_{ij}\,,\,\,\,\, e_{ij}=\epsilon_{ij}-\theta\delta_{ij}\,,\label{eq:16}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+S_{ij}=\sigma_{ij}-P\delta_{ij}\,,\,\,\,\, e_{ij}=\epsilon_{ij}-\theta\delta_{ij}\,,\label{eq:16}
+\end{gather}
 
 \end_inset
 
@@ -1817,21 +1932,25 @@
 \end_inset
 
 , as
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \overline{\sigma}=\sqrt{\frac{3}{2}\underline{S}\cdot\underline{S}}\,\,\nonumber \\
 J_{2}^{\prime}=\frac{1}{2}\underline{S}\cdot\underline{S}\,.\label{eq:17}\\
 \overline{e}=\sqrt{\frac{2}{3}\underline{e}\cdot\underline{e}}\,\,\nonumber \\
-L_{2}^{\prime}=\frac{1}{2}\underline{e}\cdot\underline{e}\,\,\nonumber \end{gather}
+L_{2}^{\prime}=\frac{1}{2}\underline{e}\cdot\underline{e}\,\,\nonumber 
+\end{gather}
 
 \end_inset
 
 Due to the symmetry of the stress and strain tensors, it is sometimes convenient
  to represent them as vectors:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \overrightarrow{\sigma^{T}}=\left[\begin{array}{cccccc}
 \sigma_{11} & \sigma_{22} & \sigma_{33} & \sigma_{12} & \sigma_{23} & \sigma_{31}\end{array}\right]\label{eq:18}\\
 \overrightarrow{\epsilon^{T}}=\left[\begin{array}{cccccc}
-\epsilon_{11} & \epsilon_{22} & \epsilon_{33} & \epsilon_{12} & \epsilon_{23} & \epsilon_{31}\end{array}\right]\:.\nonumber \end{gather}
+\epsilon_{11} & \epsilon_{22} & \epsilon_{33} & \epsilon_{12} & \epsilon_{23} & \epsilon_{31}\end{array}\right]\:.\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -1880,7 +1999,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="3" columns="3">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
@@ -1996,6 +2115,116 @@
 \end_layout
 
 \begin_layout Subsection
+Linear Viscoelastic Models
+\end_layout
+
+\begin_layout Standard
+Linear viscoelastic models are obtained by various combinations of a linear
+ elastic spring and a linear viscous dashpot in series or parallel.
+ The simplest example is probably the linear Maxwell model, which consists
+ of a spring in series with a dashpot, as shown in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:Material-models"
+
+\end_inset
+
+.
+ For a one-dimensional model, the response is given by
+\begin_inset Formula 
+\begin{equation}
+\frac{d\epsilon_{Total}}{dt}=\frac{d\epsilon_{D}}{dt}+\frac{d\epsilon_{S}}{dt}=\frac{\sigma}{\eta}+\frac{1}{E}\frac{d\sigma}{dt}\:,
+\end{equation}
+
+\end_inset
+
+where 
+\begin_inset Formula $\epsilon_{Total}$
+\end_inset
+
+ is the total strain, 
+\begin_inset Formula $\epsilon_{D}$
+\end_inset
+
+ is the strain in the dashpot, 
+\begin_inset Formula $\epsilon_{S}$
+\end_inset
+
+ is the strain in the spring, 
+\begin_inset Formula $\sigma$
+\end_inset
+
+ is the stress, 
+\begin_inset Formula $\eta$
+\end_inset
+
+ is the viscosity of the dashpot, and 
+\begin_inset Formula $E$
+\end_inset
+
+ is the spring constant.
+ When a Maxwell material is subjected to constant strain, the stresses relax
+ exponentially with time.
+ When a Maxwell material is subjected to a constant stress, there is an
+ immediate elastic strain, corresponding to the response of the spring,
+ and a viscous strain that increases linearly with time.
+ Since the strain response is unbounded, the Maxwell model actually represents
+ a fluid.
+\end_layout
+
+\begin_layout Standard
+Another simple model is the Kelvin-Voigt model, which consists of a spring
+ in parallel with a dashpot.
+ In this case, the one-dimensional response is given by
+\begin_inset Formula 
+\begin{equation}
+\sigma\left(t\right)=E\epsilon\left(t\right)+\eta\frac{d\epsilon\left(t\right)}{dt}\:.
+\end{equation}
+
+\end_inset
+
+As opposed to the Maxwell model, which represents a fluid, the Kelvin-Voigt
+ model represents a solid undergoing reversible, viscoelastic strain.
+ If the material is subjected to a constant stress, it deforms at a decreasing
+ rate, gradually approaching the strain that would occur for a purely elastic
+ material.
+ When the stress is released, the material gradually relaxes back to its
+ undeformed state.
+\end_layout
+
+\begin_layout Standard
+The most general form of linear viscoelastic model is the generalized Maxwell
+ model, which consists of a spring in parallel with a number of Maxwell
+ models (see Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:Material-models"
+
+\end_inset
+
+).
+ Using this model, it is possible to represent a number of simpler viscoelastic
+ models.
+ For example, a simple Maxwell model is obtained by setting the elastic
+ constants of all springs to zero, with the exception of the spring contained
+ in the first Maxwell model (
+\begin_inset Formula $\mu_{1}$
+\end_inset
+
+).
+ Similarly, the Kelvin-Voigt model may be obtained by setting the elastic
+ constants 
+\begin_inset Formula $\mu_{2}=\mu_{3}=0$
+\end_inset
+
+, and setting 
+\begin_inset Formula $\mu_{1}=\infty$
+\end_inset
+
+ (or a very large number).
+\end_layout
+
+\begin_layout Subsection
 Formulation for Generalized Maxwell Models
 \begin_inset CommandInset label
 LatexCommand label
@@ -2007,9 +2236,9 @@
 \end_layout
 
 \begin_layout Standard
-The generalized Maxwell viscoelastic model consists of a number of Maxwell
- linear viscoelastic models in parallel with a spring, as shown in Figure
- 
+As described above, the generalized Maxwell viscoelastic model consists
+ of a number of Maxwell linear viscoelastic models in parallel with a spring,
+ as shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "fig:Material-models"
@@ -2017,11 +2246,11 @@
 \end_inset
 
 .
- PyLith versions greater than 1.1 include the specific case of a standard
- Maxwell model as well as a model consisting of a spring in parallel with
- three Maxwell models.
- A number of common material models may be obtained from this model by setting
- the shear moduli of various springs to zero, such as the Maxwell model,
+ PyLith includes the specific case of a spring in parallel with three Maxwell
+ models.
+ As described in the previous paragraph, a number of common material models
+ may be obtained from this model by setting the shear moduli of various
+ springs to zero or infinity (or a large number), such as the Maxwell model,
  the Kelvin model, and the standard linear solid.
  We follow formulations similar to those used by Zienkiewicz and Taylor
  
@@ -2084,8 +2313,10 @@
 As for all our viscoelastic models, the volumetric strain is completely
  elastic, and the viscoelastic deformation may be expressed purely in terms
  of the deviatoric components:
-\begin_inset Formula \begin{equation}
-\underline{S}=2\mu_{tot}\left[\mu_{0}\underline{e}+\sum_{i=1}^{N}\mu_{i}\underline{q}^{i}-\underline{e}^{I}\right]+\underline{S}^{I}\,;\; P=3K\left(\theta-\theta^{I}\right)+P^{I}\,,\label{eq:19}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}=2\mu_{tot}\left[\mu_{0}\underline{e}+\sum_{i=1}^{N}\mu_{i}\underline{q}^{i}-\underline{e}^{I}\right]+\underline{S}^{I}\,;\; P=3K\left(\theta-\theta^{I}\right)+P^{I}\,,\label{eq:19}
+\end{equation}
 
 \end_inset
 
@@ -2102,8 +2333,10 @@
 \end_inset
 
  follows the evolution equations
-\begin_inset Formula \begin{equation}
-\underline{\dot{q}}^{i}+\frac{1}{\lambda_{i}}\underline{q}^{i}=\underline{\dot{e}}.\label{eq:20}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{\dot{q}}^{i}+\frac{1}{\lambda_{i}}\underline{q}^{i}=\underline{\dot{e}}.\label{eq:20}
+\end{equation}
 
 \end_inset
 
@@ -2132,8 +2365,10 @@
 
 , is measured.
  For a linear material we obtain:
-\begin_inset Formula \begin{equation}
-\underline{S}\left(t\right)=2\mu\left(t\right)\left(\underline{e}_{0}-\underline{e}^{I}\right)+\underline{S}^{I}\,,\label{eq:21}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}\left(t\right)=2\mu\left(t\right)\left(\underline{e}_{0}-\underline{e}^{I}\right)+\underline{S}^{I}\,,\label{eq:21}
+\end{equation}
 
 \end_inset
 
@@ -2144,20 +2379,26 @@
  is the shear relaxation modulus function.
  Using linearity and superposition for an arbitrary state of strain yields
  an integral equation:
-\begin_inset Formula \begin{equation}
-\underline{S}\left(t\right)=\intop_{-\infty}^{t}\mu\left(t-\tau\right)\underline{\dot{e}}\, d\tau\,.\label{eq:22}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}\left(t\right)=\intop_{-\infty}^{t}\mu\left(t-\tau\right)\underline{\dot{e}}\, d\tau\,.\label{eq:22}
+\end{equation}
 
 \end_inset
 
 If we assume the modulus function in Prony series form we obtain
-\begin_inset Formula \begin{equation}
-\mu\left(t\right)=\mu_{tot}\left(\mu_{0}+\sum_{i=1}^{N}\mu_{i}\exp\frac{-t}{\lambda_{i}}\right)\,,\label{eq:23}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\mu\left(t\right)=\mu_{tot}\left(\mu_{0}+\sum_{i=1}^{N}\mu_{i}\exp\frac{-t}{\lambda_{i}}\right)\,,\label{eq:23}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
-\mu_{0}+\sum_{i=1}^{N}\mu_{i}=1\,.\label{eq:24}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\mu_{0}+\sum_{i=1}^{N}\mu_{i}=1\,.\label{eq:24}
+\end{equation}
 
 \end_inset
 
@@ -2172,22 +2413,12 @@
 \end_layout
 
 \begin_layout Standard
-Considering a single Maxwell model, the relaxation modulus function is
-\begin_inset Formula \begin{equation}
-\mu\left(t\right)=\mu_{tot}\left(\mu_{0}+\mu_{1}\exp\frac{-t}{\lambda_{1}}\right)\,,\label{eq:25}\end{equation}
-
-\end_inset
-
-where
-\begin_inset Formula \begin{equation}
-\mu_{0}+\mu_{1}=1\,.\label{eq:26}\end{equation}
-
-\end_inset
-
 If we assume the material is undisturbed until a strain is suddenly applied
  at time zero, we can divide the integral into
-\begin_inset Formula \begin{equation}
-\intop_{-\infty}^{t}\left(\cdot\right)\, d\tau=\intop_{-\infty}^{0^{-}}\left(\cdot\right)\, d\tau+\intop_{0^{-}}^{0^{+}}\left(\cdot\right)\, d\tau+\intop_{0^{+}}^{t}\left(\cdot\right)\, d\tau\,.\label{eq:27}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\intop_{-\infty}^{t}\left(\cdot\right)\, d\tau=\intop_{-\infty}^{0^{-}}\left(\cdot\right)\, d\tau+\intop_{0^{-}}^{0^{+}}\left(\cdot\right)\, d\tau+\intop_{0^{+}}^{t}\left(\cdot\right)\, d\tau\,.\label{eq:27}
+\end{equation}
 
 \end_inset
 
@@ -2205,8 +2436,10 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{equation}
-\underline{S}\left(t\right)=2\mu\left(t\right)\left(\underline{e}_{0}-\underline{e}^{I}\right)+\underline{S}^{I}+2\int_{0}^{t}\mu\left(t-\tau\right)\underline{\dot{e}}\left(\tau\right)\, d\tau\,,\label{eq:28}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}\left(t\right)=2\mu\left(t\right)\left(\underline{e}_{0}-\underline{e}^{I}\right)+\underline{S}^{I}+2\int_{0}^{t}\mu\left(t-\tau\right)\underline{\dot{e}}\left(\tau\right)\, d\tau\,,\label{eq:28}
+\end{equation}
 
 \end_inset
 
@@ -2217,7 +2450,7 @@
 Substituting Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "eq:25"
+reference "eq:23"
 
 \end_inset
 
@@ -2229,12 +2462,14 @@
 \end_inset
 
 , we obtain
-\begin_inset Formula \begin{equation}
-\underline{S}\left(t\right)=2\mu_{tot}\left[\mu_{0}\underline{e}\left(t\right)+\mu_{1}\exp\frac{-t}{\lambda_{1}}\left(\underline{e}_{0}+\intop_{0}^{t}\exp\frac{t}{\lambda_{1}}\underline{\dot{e}}\left(\tau\right)\, d\tau\right)-\underline{e}^{I}\right]+\underline{S}^{I}\,.\label{eq:29}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}\left(t\right)=2\mu_{tot}\left\{ \mu_{0}\underline{e}\left(t\right)+\sum_{i=1}^{N}\left[\mu_{i}\exp\frac{-t}{\lambda_{i}}\left(\underline{e}_{0}+\intop_{0}^{t}\exp\frac{t}{\lambda_{i}}\underline{\dot{e}}\left(\tau\right)\, d\tau\right)\right]-\underline{e}^{I}\right\} +\underline{S}^{I}\,.\label{eq:29}
+\end{equation}
 
 \end_inset
 
-We then split the integral into two ranges: from 0 to 
+We then split each integral into two ranges: from 0 to 
 \begin_inset Formula $t_{n}$
 \end_inset
 
@@ -2246,54 +2481,70 @@
 \begin_inset Formula $t$
 \end_inset
 
-, and define the integral as
-\begin_inset Formula \begin{equation}
-\underline{i}^{1}\left(t\right)=\intop_{0}^{t}\exp\frac{\tau}{\lambda_{1}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:30}\end{equation}
+, and define each integral as
+\begin_inset Formula 
+\begin{equation}
+\underline{i}_{i}^{1}\left(t\right)=\intop_{0}^{t}\exp\frac{\tau}{\lambda_{i}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:30}
+\end{equation}
 
 \end_inset
 
 The integral then becomes
-\begin_inset Formula \begin{equation}
-\underline{i}^{1}\left(t\right)=\underline{i}^{1}\left(t_{n}\right)+\intop_{t_{n}}^{t}\exp\frac{\tau}{\lambda_{1}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:31}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{i}_{i}^{1}\left(t\right)=\underline{i}_{i}^{1}\left(t_{n}\right)+\intop_{t_{n}}^{t}\exp\frac{\tau}{\lambda_{i}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:31}
+\end{equation}
 
 \end_inset
 
 Including the negative exponential multiplier:
-\begin_inset Formula \begin{equation}
-\underline{h}^{1}\left(t\right)=\exp\frac{-t}{\lambda_{1}}\underline{i}^{1}\,.\label{eq:32}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{h}_{i}^{1}\left(t\right)=\exp\frac{-t}{\lambda_{i}}\underline{i}_{i}^{1}\,.\label{eq:32}
+\end{equation}
 
 \end_inset
 
 Then
-\begin_inset Formula \begin{equation}
-\underline{h}^{1}\left(t\right)=\exp\frac{-\Delta t}{\lambda_{1}}\underline{h}_{n}^{1}+\Delta\underline{h}\,,\label{eq:33}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{h}_{i}^{1}\left(t\right)=\exp\frac{-\Delta t}{\lambda_{i}}\underline{h}_{i}^{1}\left(t_{n}\right)+\Delta\underline{h}_{i}\,,\label{eq:33}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
-\Delta\underline{h}=\exp\frac{-t}{\lambda_{1}}\intop_{t_{n}}^{t}\exp\frac{\tau}{\lambda_{1}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:34}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta\underline{h}_{i}=\exp\frac{-t}{\lambda_{i}}\intop_{t_{n}}^{t}\exp\frac{\tau}{\lambda_{i}}\underline{\dot{e}}\left(\tau\right)\, d\tau\,.\label{eq:34}
+\end{equation}
 
 \end_inset
 
 Approximating the strain rate as constant over each time step, the solution
  may be found as
-\begin_inset Formula \begin{equation}
-\Delta\underline{h}=\frac{\lambda_{1}}{\Delta t}\left(1-\exp\frac{-\Delta t}{\lambda_{1}}\right)\left(\underline{e}-\underline{e}_{n}\right)=\Delta h\left(\underline{e}-\underline{e}_{n}\right)\,.\label{eq:35}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta\underline{h}_{i}=\frac{\lambda_{i}}{\Delta t}\left(1-\exp\frac{-\Delta t}{\lambda_{i}}\right)\left(\underline{e}-\underline{e}_{n}\right)=\Delta h_{i}\left(\underline{e}-\underline{e}_{n}\right)\,.\label{eq:35}
+\end{equation}
 
 \end_inset
 
 The approximation is singular for zero time steps, but a series expansion
  may be used for small time-step sizes:
-\begin_inset Formula \begin{equation}
-\Delta h\approx1-\frac{1}{2}\left(\frac{\Delta t}{\lambda_{1}}\right)+\frac{1}{3!}\left(\frac{\Delta t}{\lambda_{1}}\right)^{2}-\frac{1}{4!}\left(\frac{\Delta t}{\lambda_{1}}\right)^{3}+\cdots\,.\label{eq:36}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta h_{i}\approx1-\frac{1}{2}\left(\frac{\Delta t}{\lambda_{i}}\right)+\frac{1}{3!}\left(\frac{\Delta t}{\lambda_{i}}\right)^{2}-\frac{1}{4!}\left(\frac{\Delta t}{\lambda_{i}}\right)^{3}+\cdots\,.\label{eq:36}
+\end{equation}
 
 \end_inset
 
 This converges with only a few terms.
  With this formulation, the constitutive relation now has the simple form:
-\begin_inset Formula \begin{equation}
-\underline{S}\left(t\right)=2\mu_{tot}\left(\mu_{0}\underline{e}\left(t\right)+\mu_{1}\underline{h}^{1}\left(t\right)-\underline{e}^{I}\right)+\underline{S}^{I}\,.\label{eq:37}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\underline{S}\left(t\right)=2\mu_{tot}\left(\mu_{0}\underline{e}\left(t\right)+\sum_{i=1}^{N}\mu_{i}\underline{h}_{i}^{1}\left(t\right)-\underline{e}^{I}\right)+\underline{S}^{I}\,.\label{eq:37}
+\end{equation}
 
 \end_inset
 
@@ -2305,8 +2556,10 @@
  matrix.
  In addition to the volumetric contribution to the tangent constitutive
  matrix, we require the deviatoric part:
-\begin_inset Formula \begin{equation}
-\frac{\partial\underline{S}}{\partial\underline{\epsilon}}=\frac{\partial\underline{S}}{\partial\underline{e}}\frac{\partial\underline{e}}{\partial\underline{\epsilon}}\,,\label{eq:38}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\underline{S}}{\partial\underline{\epsilon}}=\frac{\partial\underline{S}}{\partial\underline{e}}\frac{\partial\underline{e}}{\partial\underline{\epsilon}}\,,\label{eq:38}
+\end{equation}
 
 \end_inset
 
@@ -2320,8 +2573,10 @@
 
 .
  The other derivative is given by
-\begin_inset Formula \begin{equation}
-\frac{\partial\underline{S}}{\partial\underline{e}}=2\mu_{tot}\left[\mu_{0}\underline{I}+\mu_{1}\frac{\partial\underline{h}^{1}}{\partial\underline{e}}\right]\,,\label{eq:39}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\underline{S}}{\partial\underline{e}}=2\mu_{tot}\left[\mu_{0}\underline{I}+\sum_{i=1}^{N}\mu_{i}\frac{\partial\underline{h}_{i}^{1}}{\partial\underline{e}}\right]\,,\label{eq:39}
+\end{equation}
 
 \end_inset
 
@@ -2345,14 +2600,18 @@
 \end_inset
 
 , the derivative inside the brackets is
-\begin_inset Formula \begin{equation}
-\frac{\partial\underline{h}^{1}}{\partial\underline{e}}=\Delta h\left(\Delta t\right)\underline{I}\,.\label{eq:40}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\underline{h}_{i}^{1}}{\partial\underline{e}}=\Delta h_{i}\left(\Delta t\right)\underline{I}\,.\label{eq:40}
+\end{equation}
 
 \end_inset
 
 The complete deviatoric tangent relation is then
-\begin_inset Formula \begin{equation}
-\frac{\partial\underline{S}}{\partial\underline{\epsilon}}=2\mu_{tot}\left[\mu_{0}+\mu_{1}\Delta h\left(\Delta t\right)\right]\frac{\partial\underline{e}}{\partial\underline{\epsilon}}\,.\label{eq:41}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\underline{S}}{\partial\underline{\epsilon}}=2\mu_{tot}\left[\mu_{0}+\sum_{i=1}^{N}\mu_{i}\Delta h_{i}\left(\Delta t\right)\right]\frac{\partial\underline{e}}{\partial\underline{\epsilon}}\,.\label{eq:41}
+\end{equation}
 
 \end_inset
 
@@ -2361,11 +2620,495 @@
 
 \begin_layout Standard
 We use this formulation for both our Maxwell and generalized Maxwell viscoelasti
-c models, where we include two additional Maxwell elements in the generalized
- Maxwell model.
+c models.
+ For the Maxwell model, 
+\begin_inset Formula $\mu_{0}=0$
+\end_inset
+
+ and 
+\begin_inset Formula $N=1$
+\end_inset
+
+.
+ For the generalized Maxwell model, 
+\begin_inset Formula $N=3.$
+\end_inset
+
+
 \end_layout
 
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float table
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Caption
+
+\begin_layout Plain Layout
+\begin_inset CommandInset label
+LatexCommand label
+name "tab:linearMaxwell"
+
+\end_inset
+
+Values in spatial database used as parameters in the linear Maxwell viscoelastic
+ material constitutive model.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Tabular
+<lyxtabular version="3" rows="5" columns="2">
+<features tabularvalignment="middle">
+<column alignment="center" valignment="middle" width="0.85in">
+<column alignment="center" valignment="middle" width="2.47in">
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Parameter
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\align center
+
+\series bold
+Name in Spatial Database
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $v_{p}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+Vp
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $v_{s}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+Vs
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\rho$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+density
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\eta$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+viscosity
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float table
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Caption
+
+\begin_layout Plain Layout
+\begin_inset CommandInset label
+LatexCommand label
+name "tab:genMaxwell"
+
+\end_inset
+
+Values in spatial database used as parameters in the generalized linear
+ Maxwell viscoelastic material constitutive model.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Tabular
+<lyxtabular version="3" rows="10" columns="2">
+<features tabularvalignment="middle">
+<column alignment="center" valignment="middle" width="0.85in">
+<column alignment="center" valignment="middle" width="2.47in">
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Parameter
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\align center
+
+\series bold
+Name in Spatial Database
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $v_{p}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+Vp
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $v_{s}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+Vs
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\rho$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+density
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\mu_{1}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+shear-ratio-1
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\mu_{2}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+shear-ratio-2
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\mu_{3}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+shear-ratio-3
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\eta_{1}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+viscosity-1
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\eta_{2}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+viscosity-2
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+\begin_inset Formula $\eta_{3}$
+\end_inset
+
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+viscosity-3
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
 \begin_layout Subsection
+\begin_inset CommandInset label
+LatexCommand label
+name "sub:Effective-Stress-Formulations-Viscoelastic"
+
+\end_inset
+
 Effective Stress Formulations for Viscoelastic Materials
 \end_layout
 
@@ -2381,7 +3124,14 @@
  may be employed for both a linear Maxwell model and a power-law Maxwell
  model.
  Note that this formulation is not presently employed for linear viscoelastic
- models, but it may be employed in future versions.
+ models (see Appendix 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "cha:Alternative-Formulations"
+
+\end_inset
+
+), but it is used for power-law viscoelastic materials.
  For the viscoelastic materials considered here, the viscous volumetric
  strains are zero (incompressible flow), and it is convenient to separate
  the general stress-strain relationship at time 
@@ -2389,9 +3139,11 @@
 \end_inset
 
  into deviatoric and volumetric parts:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \phantom{}{}^{t+\Delta t}\underline{S}=\frac{E}{1+\nu}\left(^{t+\Delta t}\underline{e}-\phantom{}^{t+\Delta t}\underline{e}^{C}-\underline{e}^{I}\right)+\underline{S}^{I}=\frac{1}{a_{E}}\left(^{t+\Delta t}\underline{e}-\phantom{}^{t+\Delta t}\underline{e}^{C}-\underline{e}^{I}\right)\label{eq:42}\\
-^{t+\Delta t}P=\frac{E}{1-2\nu}\left(^{t+\Delta t}\theta-\theta^{I}\right)+P^{I}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta-\theta^{I}\right)\:,\nonumber \end{gather}
+^{t+\Delta t}P=\frac{E}{1-2\nu}\left(^{t+\Delta t}\theta-\theta^{I}\right)+P^{I}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta-\theta^{I}\right)\:,\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -2441,20 +3193,26 @@
 \end_inset
 
  may also be written as
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}(^{t+\Delta t}\underline{e}^{\prime}-\underline{\Delta e}^{C})+\underline{S}^{I}\,,\label{eq:43}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}(^{t+\Delta t}\underline{e}^{\prime}-\underline{\Delta e}^{C})+\underline{S}^{I}\,,\label{eq:43}
+\end{gather}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{e}^{\prime}=\phantom{}^{t+\Delta t}\underline{e}-\phantom{}^{t}\underline{e}^{C}-\underline{e}^{I}\,\,,\,\,\,\underline{\Delta e}^{C}=\phantom{}^{t+\Delta t}\underline{e}^{C}-\phantom{}^{t}\underline{e}^{C}\,.\label{eq:44}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{e}^{\prime}=\phantom{}^{t+\Delta t}\underline{e}-\phantom{}^{t}\underline{e}^{C}-\underline{e}^{I}\,\,,\,\,\,\underline{\Delta e}^{C}=\phantom{}^{t+\Delta t}\underline{e}^{C}-\phantom{}^{t}\underline{e}^{C}\,.\label{eq:44}
+\end{gather}
 
 \end_inset
 
 The creep strain increment is approximated using
-\begin_inset Formula \begin{gather}
-\underline{\Delta e}^{C}=\Delta t\phantom{}^{\tau}\gamma\phantom{}^{\tau}\underline{S}\,,\label{eq:45}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\underline{\Delta e}^{C}=\Delta t\phantom{}^{\tau}\gamma\phantom{}^{\tau}\underline{S}\,,\label{eq:45}
+\end{gather}
 
 \end_inset
 
@@ -2463,145 +3221,75 @@
 \end_inset
 
 -method of time integration,
-\begin_inset Formula \begin{gather}
-^{\tau}\underline{S}=(1-\alpha)_{I}^{t}\underline{S}+\alpha\phantom{}_{I}^{t+\Delta t}\underline{S}+\underline{S}^{I}=(1-\alpha)^{t}\underline{S}+\alpha\phantom{}^{t+\Delta t}\underline{S}\,\,,\label{eq:46}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{\tau}\underline{S}=(1-\alpha)_{I}^{t}\underline{S}+\alpha\phantom{}_{I}^{t+\Delta t}\underline{S}+\underline{S}^{I}=(1-\alpha)^{t}\underline{S}+\alpha\phantom{}^{t+\Delta t}\underline{S}\,\,,\label{eq:46}
+\end{gather}
 
 \end_inset
 
 and
-\begin_inset Formula \begin{gather}
-^{\tau}\gamma=\frac{3\Delta\overline{e}^{C}}{2\Delta t\phantom{}^{\tau}\overline{\sigma}}\,\,,\label{eq:47}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{\tau}\gamma=\frac{3\Delta\overline{e}^{C}}{2\Delta t\phantom{}^{\tau}\overline{\sigma}}\,\,,\label{eq:47}
+\end{gather}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{gather}
-\Delta\overline{e}^{C}=\sqrt{\frac{2}{3}\underline{\Delta e}^{C}\cdot\underline{\Delta e}^{C}}\label{eq:48}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\Delta\overline{e}^{C}=\sqrt{\frac{2}{3}\underline{\Delta e}^{C}\cdot\underline{\Delta e}^{C}}\label{eq:48}
+\end{gather}
 
 \end_inset
 
 and
-\begin_inset Formula \begin{gather}
-^{\tau}\overline{\sigma}=(1-\alpha)_{I}^{t}\overline{\sigma}+\alpha\phantom{}_{I}^{t+\Delta t}\overline{\sigma}+\overline{\sigma}^{I}=\sqrt{3\phantom{}^{\tau}J_{2}^{\prime}}\,\,.\label{eq:49}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{\tau}\overline{\sigma}=(1-\alpha)_{I}^{t}\overline{\sigma}+\alpha\phantom{}_{I}^{t+\Delta t}\overline{\sigma}+\overline{\sigma}^{I}=\sqrt{3\phantom{}^{\tau}J_{2}^{\prime}}\,\,.\label{eq:49}
+\end{gather}
 
 \end_inset
 
 
 \end_layout
 
-\begin_layout Subsubsection
-Linear Maxwell Viscoelastic Material
-\end_layout
-
 \begin_layout Standard
-A linear Maxwell viscoelastic material may be characterized by the same
- elastic parameters as an isotropic elastic material (
-\begin_inset Formula $E$
-\end_inset
-
- and 
-\begin_inset Formula $\nu$
-\end_inset
-
-), as well as the viscosity, 
-\begin_inset Formula $\eta$
-\end_inset
-
-.
- The creep strain increment is
-\begin_inset Formula \begin{gather}
-\underline{\Delta e}^{C}=\frac{\Delta t\phantom{}^{\tau}\underline{S}}{2\eta}\,\,.\label{eq:50}\end{gather}
-
-\end_inset
-
-Therefore,
-\begin_inset Formula \begin{gather}
-\Delta\overline{e}^{C}=\frac{\Delta t\sqrt{^{\tau}J_{2}^{\prime}}}{\sqrt{3\eta}}=\frac{\Delta t\phantom{}^{\tau}\overline{\sigma}}{3\eta}\,,\,\mathrm{and}\,^{\tau}\gamma=\frac{1}{2\eta}\,\,.\label{eq:51}\end{gather}
-
-\end_inset
-
-Substituting Equations 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:46"
-
-\end_inset
-
-, 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:50"
-
-\end_inset
-
-, and 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:51"
-
-\end_inset
-
- into 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:43"
-
-\end_inset
-
-, we obtain
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}\left\{ ^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}\left[(1-\alpha)^{t}\underline{S}+\alpha\phantom{}^{t+\Delta t}\underline{S}\right]\right\} +\underline{S}^{I}\,\,.\label{eq:52}\end{gather}
-
-\end_inset
-
-Solving for 
-\begin_inset Formula $^{t+\Delta t}\underline{S}$
-\end_inset
-
-,
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\left[^{t+\Delta t}\underline{e}^{\prime}-\frac{\Delta t}{2\eta}(1-\alpha)^{t}\underline{S}+\frac{1+\mathrm{\nu}}{E}\underline{S}^{I}\right]\,\,.\label{eq:53}\end{gather}
-
-\end_inset
-
-In this case it is possible to solve directly for the deviatoric stresses,
- and the effective stress function approach is not needed.
- To obtain the total stress, we simply use
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\sigma_{ij}=\phantom{}^{t+\Delta t}S_{ij}+\frac{\mathit{1}}{a_{m}}\left(\,^{t+\Delta t}\theta-\theta^{I}\right)\delta_{ij}+P^{I}\delta_{ij}\,\,.\label{eq:54}\end{gather}
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-It is necessary to provide a relationship for the viscoelastic tangent material
- matrix relating stress and strain.
+To form the global stiffness matrix, it is necessary to provide a relationship
+ for the viscoelastic tangent material matrix relating stress and strain.
  If we use vectors composed of the stresses and tensor strains, this relationshi
 p is
-\begin_inset Formula \begin{gather}
-\underline{C}^{VE}=\frac{\partial\phantom{}^{t+\Delta t}\overrightarrow{\sigma}}{\partial\phantom{}^{t+\Delta t}\overrightarrow{\epsilon}}\,\,.\label{eq:55}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\underline{C}^{VE}=\frac{\partial\phantom{}^{t+\Delta t}\overrightarrow{\sigma}}{\partial\phantom{}^{t+\Delta t}\overrightarrow{\epsilon}}\,\,.\label{eq:55}
+\end{gather}
 
 \end_inset
 
 In terms of the vectors, we have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 ^{t+\Delta t}\sigma_{i}=\phantom{}^{t+\Delta t}S_{i}+\phantom{}^{t+\Delta t}P\,\,;\,\,\, i=1,2,3\label{eq:56}\\
-^{t+\Delta t}\sigma_{i}=\phantom{}^{t+\Delta t}S_{i}\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, i=4,5,6\nonumber \end{gather}
+^{t+\Delta t}\sigma_{i}=\phantom{}^{t+\Delta t}S_{i}\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\, i=4,5,6\nonumber 
+\end{gather}
 
 \end_inset
 
 Therefore,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 C_{ij}^{VE}=C_{ij}^{\prime}+\frac{1}{3a_{m}}\,;\,\,1\leq i,j\leq3\,\,.\label{eq:57}\\
-C_{ij}^{VE}=C_{ij}^{\prime}\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\textrm{otherwise}\nonumber \end{gather}
+C_{ij}^{VE}=C_{ij}^{\prime}\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\textrm{otherwise}\nonumber 
+\end{gather}
 
 \end_inset
 
 Using the chain rule,
-\begin_inset Formula \begin{gather}
-\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}\frac{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}{\partial\phantom{}^{t+\Delta t}e_{l}}\frac{\partial\phantom{}^{t+\Delta t}e_{l}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\,\,.\label{eq:58}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+C_{ij}^{\prime}=\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}\frac{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}{\partial\phantom{}^{t+\Delta t}e_{l}}\frac{\partial\phantom{}^{t+\Delta t}e_{l}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\,\,.\label{eq:58}
+\end{gather}
 
 \end_inset
 
@@ -2613,8 +3301,10 @@
 \end_inset
 
 , we obtain
-\begin_inset Formula \begin{gather}
-\frac{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}{\partial\phantom{}^{t+\Delta t}e_{l}}=\delta_{kl}\,\,,\label{eq:59}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}{\partial\phantom{}^{t+\Delta t}e_{l}}=\delta_{kl}\,\,,\label{eq:59}
+\end{gather}
 
 \end_inset
 
@@ -2626,85 +3316,34 @@
 \end_inset
 
 :
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \frac{\partial\phantom{}^{t+\Delta t}e_{l}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{3}\left[\begin{array}{ccc}
 2 & -1 & -1\\
 -1 & 2 & -1\\
--1 & -1 & 2\end{array}\right];\,\,1\leq l,j\leq3\label{eq:60}\\
-\frac{\partial\phantom{}^{t+\Delta t}e_{l}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\delta_{lj}\,\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\textrm{otherwise.}\nonumber \end{gather}
+-1 & -1 & 2
+\end{array}\right];\,\,1\leq l,j\leq3\label{eq:60}\\
+\frac{\partial\phantom{}^{t+\Delta t}e_{l}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\delta_{lj}\,\,;\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\,\textrm{otherwise.}\nonumber 
+\end{gather}
 
 \end_inset
 
-Finally, from Equation 
+The first term of Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "eq:53"
+reference "eq:58"
 
 \end_inset
 
-, we have
-\begin_inset Formula \begin{gather}
-\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}=\frac{\delta_{ik}}{a_{E}+\frac{\alpha\Delta t}{2\eta}}\,\,.\label{eq:61}\end{gather}
-
-\end_inset
-
-From Equation 
+ depends on the particular constitutive relationship, and the complete tangent
+ matrix may then be obtained from Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:57"
 
 \end_inset
 
-, the final material matrix relating stress and tensor strain is
-\begin_inset Formula \begin{gather}
-C_{ij}^{VE}=\frac{1}{3a_{m}}\left[\begin{array}{cccccc}
-1 & 1 & 1 & 0 & 0 & 0\\
-1 & 1 & 1 & 0 & 0 & 0\\
-1 & 1 & 1 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\end{array}\right]+\frac{1}{3\left(a_{E}+\frac{\alpha\Delta t}{2\eta}\right)}\left[\begin{array}{cccccc}
-2 & -1 & -1 & 0 & 0 & 0\\
--1 & 2 & -1 & 0 & 0 & 0\\
--1 & -1 & 2 & 0 & 0 & 0\\
-0 & 0 & 0 & 3 & 0 & 0\\
-0 & 0 & 0 & 0 & 3 & 0\\
-0 & 0 & 0 & 0 & 0 & 3\end{array}\right]\,.\label{eq:62}\end{gather}
-
-\end_inset
-
-Note that the coefficient of the second matrix approaches 
-\begin_inset Formula $E/3(1+\nu)=1/3a_{E}$
-\end_inset
-
- as 
-\begin_inset Formula $\eta$
-\end_inset
-
- goes to infinity.
- To check the results we make sure that the regular elastic constitutive
- matrix is obtained for selected terms in the case where 
-\begin_inset Formula $\eta$
-\end_inset
-
- goes to infinity.
-\begin_inset Formula \begin{gather}
-C_{11}^{E}=\frac{E(1-\nu)}{(1+\nu)(1-2\nu)}\,\,\nonumber \\
-C_{12}^{E}=\frac{E\nu}{(1+\nu)(1-2\nu)}\,.\label{eq:63}\\
-C_{44}^{E}=\frac{E}{1+\nu}\,\,\nonumber \end{gather}
-
-\end_inset
-
-This is consistent with the regular elasticity matrix, and Equation 
-\begin_inset CommandInset ref
-LatexCommand ref
-reference "eq:62"
-
-\end_inset
-
- should thus be used when forming the stiffness matrix.
- We do not presently use this formulation in PyLith 1.4, but it may be included
- in future versions.
+.
 \end_layout
 
 \begin_layout Subsubsection
@@ -2729,8 +3368,10 @@
 \end_inset
 
 ):
-\begin_inset Formula \begin{equation}
-\dot{\epsilon}_{11}^{C}=A_{E}\exp\left(\frac{-Q}{RT}\right)\left(\sigma_{1}-\sigma_{3}\right)^{n}=A_{E}\exp\left(\frac{-Q}{RT}\right)\sigma_{d}^{n}\:,\label{eq:64}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\dot{\epsilon}_{11}^{C}=A_{E}\exp\left(\frac{-Q}{RT}\right)\left(\sigma_{1}-\sigma_{3}\right)^{n}=A_{E}\exp\left(\frac{-Q}{RT}\right)\sigma_{d}^{n}\:,\label{eq:64}
+\end{equation}
 
 \end_inset
 
@@ -2783,8 +3424,10 @@
 ).
  The flow law may then be generalized in terms of the deviatoric stress
  and strain rate invariants:
-\begin_inset Formula \begin{equation}
-\sqrt{\dot{L}_{2}^{\prime C}}=A_{M}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n}\:,\label{eq:65}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sqrt{\dot{L}_{2}^{\prime C}}=A_{M}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n}\:,\label{eq:65}
+\end{equation}
 
 \end_inset
 
@@ -2796,12 +3439,14 @@
  In practice, it is necessary to compute each strain rate component using
  the flow law.
  This is accomplished using:
-\begin_inset Formula \begin{equation}
-\dot{e}_{ij}^{C}=A_{M}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n-1}S_{ij}\:.\label{eq:66}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\dot{e}_{ij}^{C}=A_{M}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n-1}S_{ij}\:.\label{eq:66}
+\end{equation}
 
 \end_inset
 
-Note that equations 
+Note that Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:65"
@@ -2815,14 +3460,14 @@
 
 \end_inset
 
- are consistent, since equation 
+ are consistent, since Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:65"
 
 \end_inset
 
- may be obtained from equation 
+ may be obtained from Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:66"
@@ -2839,10 +3484,12 @@
 \end_inset
 
 , we have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \sigma_{2}=\sigma_{3}=P_{c}\nonumber \\
 \sigma_{1}=\sigma_{1}^{app}\label{eq:67}\\
-P=\frac{\sigma_{1}+2P_{c}}{3}\:,\nonumber \end{gather}
+P=\frac{\sigma_{1}+2P_{c}}{3}\:,\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -2852,22 +3499,28 @@
 
  is the applied load.
  The deviatoric stresses are then:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 S_{1}=\frac{2}{3}\left(\sigma_{1}-P_{c}\right)\nonumber \\
-S_{2}=S_{3}=-\frac{1}{3}\left(\sigma_{1}-P_{c}\right)\:.\label{eq:68}\end{gather}
+S_{2}=S_{3}=-\frac{1}{3}\left(\sigma_{1}-P_{c}\right)\:.\label{eq:68}
+\end{gather}
 
 \end_inset
 
 This gives
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 S_{1}=\frac{2}{3}\left(\sigma_{1}-\sigma_{3}\right)=\frac{2}{3}\sigma_{d}\nonumber \\
-S_{2}=S_{3}=-\frac{1}{3}\left(\sigma_{1}-\sigma_{3}\right)=-\frac{1}{3}\sigma_{d}\:.\label{eq:69}\end{gather}
+S_{2}=S_{3}=-\frac{1}{3}\left(\sigma_{1}-\sigma_{3}\right)=-\frac{1}{3}\sigma_{d}\:.\label{eq:69}
+\end{gather}
 
 \end_inset
 
 In terms of the second deviatoric stress invariant, we then have
-\begin_inset Formula \begin{equation}
-\sqrt{J_{2}^{\prime}}=\frac{\sigma_{d}}{\sqrt{3}}\:.\label{eq:70}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sqrt{J_{2}^{\prime}}=\frac{\sigma_{d}}{\sqrt{3}}\:.\label{eq:70}
+\end{equation}
 
 \end_inset
 
@@ -2877,19 +3530,23 @@
 \begin_layout Standard
 Under the assumption that the creep measured in the laboratory experiments
  is incompressible, we have
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \dot{e}_{11}^{C}=\dot{\epsilon}_{11}\nonumber \\
-\dot{e}_{22}^{C}=\dot{e}_{33}^{C}=-\frac{1}{2}\dot{\epsilon}_{11}\:.\label{eq:71}\end{gather}
+\dot{e}_{22}^{C}=\dot{e}_{33}^{C}=-\frac{1}{2}\dot{\epsilon}_{11}\:.\label{eq:71}
+\end{gather}
 
 \end_inset
 
 In terms of the second deviatoric strain rate invariant we then have
-\begin_inset Formula \begin{equation}
-\sqrt{\dot{L}_{2}^{\prime C}}=\frac{\sqrt{3}}{2}\dot{\epsilon}_{11}\:.\label{eq:72}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sqrt{\dot{L}_{2}^{\prime C}}=\frac{\sqrt{3}}{2}\dot{\epsilon}_{11}\:.\label{eq:72}
+\end{equation}
 
 \end_inset
 
-Substituting equations 
+Substituting Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:70"
@@ -2903,7 +3560,7 @@
 
 \end_inset
 
- into equation 
+ into Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:64"
@@ -2911,14 +3568,18 @@
 \end_inset
 
 , we obtain
-\begin_inset Formula \begin{equation}
-\sqrt{\dot{L}_{2}^{\prime C}}=A_{E}\frac{\sqrt{3}^{n+1}}{2}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n}\:,\label{eq:73}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sqrt{\dot{L}_{2}^{\prime C}}=A_{E}\frac{\sqrt{3}^{n+1}}{2}\exp\left(\frac{-Q}{RT}\right)\sqrt{J_{2}^{\prime}}^{n}\:,\label{eq:73}
+\end{equation}
 
 \end_inset
 
 and therefore,
-\begin_inset Formula \begin{equation}
-A_{M}=\frac{\sqrt{3}^{n+1}}{2}A_{E}\:.\label{eq:74}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{M}=\frac{\sqrt{3}^{n+1}}{2}A_{E}\:.\label{eq:74}
+\end{equation}
 
 \end_inset
 
@@ -2926,8 +3587,10 @@
 \end_layout
 
 \begin_layout Standard
-\begin_inset Formula \begin{equation}
-A_{T}=A_{M}\exp\left(\frac{-Q}{RT}\right)=\frac{\sqrt{3}^{n+1}}{2}A_{E}\exp\left(\frac{-Q}{RT}\right)\:.\label{eq:75}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+A_{T}=A_{M}\exp\left(\frac{-Q}{RT}\right)=\frac{\sqrt{3}^{n+1}}{2}A_{E}\exp\left(\frac{-Q}{RT}\right)\:.\label{eq:75}
+\end{equation}
 
 \end_inset
 
@@ -2961,8 +3624,10 @@
 \end_inset
 
 ): 
-\begin_inset Formula \begin{equation}
-\frac{\sqrt{\dot{L}_{2}^{\prime C}}}{\dot{e}_{0}}=\left(\frac{\sqrt{J_{2}^{\prime}}}{S_{0}}\right)^{n},\label{eq:76}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\sqrt{\dot{L}_{2}^{\prime C}}}{\dot{e}_{0}}=\left(\frac{\sqrt{J_{2}^{\prime}}}{S_{0}}\right)^{n},\label{eq:76}
+\end{equation}
 
 \end_inset
 
@@ -2976,8 +3641,10 @@
 
  are reference values for the strain rate and deviatoric stress.
  This means that
-\begin_inset Formula \begin{equation}
-\frac{\dot{e}_{0}}{S_{0}^{n}}=A_{T}\:.\label{eq:77}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\dot{e}_{0}}{S_{0}^{n}}=A_{T}\:.\label{eq:77}
+\end{equation}
 
 \end_inset
 
@@ -3019,7 +3686,7 @@
 \begin_inset Formula $A_{T}$
 \end_inset
 
- using 
+ using Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:75"
@@ -3042,8 +3709,10 @@
 \end_inset
 
  as
-\begin_inset Formula \begin{equation}
-S_{0}=\left(\frac{\dot{e}_{0}}{A_{T}}\right)^{\frac{1}{n}}\:.\label{eq:78}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+S_{0}=\left(\frac{\dot{e}_{0}}{A_{T}}\right)^{\frac{1}{n}}\:.\label{eq:78}
+\end{equation}
 
 \end_inset
 
@@ -3080,7 +3749,7 @@
 .
  The user then specifies either a reference stress or a reference strain
  rate, and a database suitable for PyLith is generated.
- This utility is described more fully in 
+ This utility is described more fully in Section 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "sub:Tutorial-Step08-Power-law"
@@ -3092,20 +3761,26 @@
 
 \begin_layout Standard
 The flow law in component form is 
-\begin_inset Formula \begin{equation}
-\dot{e}_{ij}^{C}=\frac{\dot{e}_{0}\sqrt{J_{2}^{\prime}}^{n-1}S_{ij}}{S_{0}^{n}}\:,\label{eq:79}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\dot{e}_{ij}^{C}=\frac{\dot{e}_{0}\sqrt{J_{2}^{\prime}}^{n-1}S_{ij}}{S_{0}^{n}}\:,\label{eq:79}
+\end{equation}
 
 \end_inset
 
 and the creep strain increment is approximated as
-\begin_inset Formula \begin{gather}
-\underline{\Delta e}^{C}\approx\frac{\Delta t\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n-1}\,^{\tau}\underline{S}}{S_{0}^{n}}=\frac{\Delta t\dot{e}_{0}\phantom{}^{\tau}\overline{\sigma}^{n-1}\,^{\tau}\underline{S}}{\sqrt{3}S_{0}^{n}}\,.\label{eq:80}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\underline{\Delta e}^{C}\approx\frac{\Delta t\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n-1}\,^{\tau}\underline{S}}{S_{0}^{n}}=\frac{\Delta t\dot{e}_{0}\phantom{}^{\tau}\overline{\sigma}^{n-1}\,^{\tau}\underline{S}}{\sqrt{3}S_{0}^{n}}\,.\label{eq:80}
+\end{gather}
 
 \end_inset
 
  Therefore,
-\begin_inset Formula \begin{gather}
-\Delta\bar{e}^{C}\approx\frac{2\Delta t\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n}}{\sqrt{3}S_{0}^{n}}=\frac{2\Delta t\dot{e}_{0}\phantom{}^{\tau}\overline{\sigma}^{n}}{\sqrt{3}^{n+1}S_{0}^{n}}\,,\,\textrm{and}\,^{\tau}\gamma=\frac{\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n-1}}{S_{0}^{n}}\,.\label{eq:81}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\Delta\bar{e}^{C}\approx\frac{2\Delta t\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n}}{\sqrt{3}S_{0}^{n}}=\frac{2\Delta t\dot{e}_{0}\phantom{}^{\tau}\overline{\sigma}^{n}}{\sqrt{3}^{n+1}S_{0}^{n}}\,,\,\textrm{and}\,^{\tau}\gamma=\frac{\dot{e}_{0}\sqrt{^{\tau}J_{2}^{\prime}}^{n-1}}{S_{0}^{n}}\,.\label{eq:81}
+\end{gather}
 
 \end_inset
 
@@ -3138,29 +3813,37 @@
 \end_inset
 
 , we obtain:
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}\left\{ ^{t+\Delta t}\underline{e}^{\prime}-\Delta t\phantom{}^{\tau}\gamma\left[\left(1-\alpha\right)^{t}\underline{S}+\alpha{}^{t+\Delta t}\underline{S}\right]\right\} +\underline{S}^{I}\,,\label{eq:82}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{S}=\frac{1}{a_{E}}\left\{ ^{t+\Delta t}\underline{e}^{\prime}-\Delta t\phantom{}^{\tau}\gamma\left[\left(1-\alpha\right)^{t}\underline{S}+\alpha{}^{t+\Delta t}\underline{S}\right]\right\} +\underline{S}^{I}\,,\label{eq:82}
+\end{gather}
 
 \end_inset
 
 which may be rewritten:
-\begin_inset Formula \begin{gather}
-^{t+\Delta t}\underline{S}\left(a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma\right)={}^{t+\Delta t}\underline{e}^{\prime}-\Delta t\phantom{}^{\tau}\gamma\left(1-\alpha\right)^{t}\underline{S}+a_{E}\underline{S}^{I}\,.\label{eq:83}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{t+\Delta t}\underline{S}\left(a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma\right)={}^{t+\Delta t}\underline{e}^{\prime}-\Delta t\phantom{}^{\tau}\gamma\left(1-\alpha\right)^{t}\underline{S}+a_{E}\underline{S}^{I}\,.\label{eq:83}
+\end{gather}
 
 \end_inset
 
 Taking the scalar inner product of both sides we obtain:
-\begin_inset Formula \begin{gather}
-a^{2}\,\,{}^{t+\Delta t}J_{2}^{\prime}-b+c\phantom{}^{\tau}\gamma-d^{2}\,^{\tau}\gamma^{2}=F=0\,,\label{eq:84}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+a^{2}\,\,{}^{t+\Delta t}J_{2}^{\prime}-b+c\phantom{}^{\tau}\gamma-d^{2}\,^{\tau}\gamma^{2}=F=0\,,\label{eq:84}
+\end{gather}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 a=a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma\,\,\nonumber \\
 b=\frac{1}{2}{}^{t+\Delta t}\underline{e}^{\prime}\cdot{}^{t+\Delta t}\underline{e}^{\prime}+a_{E}{}^{t+\Delta t}\underline{e}^{\prime}\cdot\underline{S}^{I}+a_{E}^{2}\,^{I}J_{2}^{\prime}\,.\label{eq:85}\\
 c=\Delta t\left(1-\alpha\right){}^{t+\Delta t}\underline{e}^{\prime}\cdot^{t}\underline{S}+\Delta t\left(1-\alpha\right)a_{E}\,^{t}\underline{S}\cdot\underline{S}^{I}\,\,\nonumber \\
-d=\Delta t\left(1-\alpha\right)\sqrt{^{t}J_{2}^{\prime}}\,\,\nonumber \end{gather}
+d=\Delta t\left(1-\alpha\right)\sqrt{^{t}J_{2}^{\prime}}\,\,\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -3199,10 +3882,11 @@
 
 \end_inset
 
-, and the total stresses may be found from Equation 
+, and the total stresses may be found by combining the deviatoric and volumetric
+ components from Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "eq:54"
+reference "eq:42"
 
 \end_inset
 
@@ -3210,15 +3894,15 @@
 \end_layout
 
 \begin_layout Standard
-To compute the tangent stress-strain relation, we proceed as for the linear
- case, but the evaluation of the first derivative in Equation 
+To compute the tangent stress-strain relation, we need to compute the first
+ term in Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:58"
 
 \end_inset
 
- is more complicated.
+.
  We begin by rewriting Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -3227,8 +3911,10 @@
 \end_inset
 
  as
-\begin_inset Formula \begin{gather}
-F=^{t+\Delta t}S_{i}\left(a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma\right)-\phantom{}^{t+\Delta t}e_{i}^{\prime}+\Delta t\phantom{}^{\tau}\gamma\left(1-\alpha\right)^{t}S_{i}-a_{E}S_{i}^{I}=0\:.\label{eq:86}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+F=^{t+\Delta t}S_{i}\left(a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma\right)-\phantom{}^{t+\Delta t}e_{i}^{\prime}+\Delta t\phantom{}^{\tau}\gamma\left(1-\alpha\right)^{t}S_{i}-a_{E}S_{i}^{I}=0\:.\label{eq:86}
+\end{gather}
 
 \end_inset
 
@@ -3237,8 +3923,10 @@
 \end_inset
 
  is
-\begin_inset Formula \begin{gather}
-\frac{\partial F}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}=-\delta_{ik}\:,\label{eq:87}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial F}{\partial\phantom{}^{t+\Delta t}e_{k}^{\prime}}=-\delta_{ik}\:,\label{eq:87}
+\end{gather}
 
 \end_inset
 
@@ -3247,8 +3935,10 @@
 \end_inset
 
  is
-\begin_inset Formula \begin{gather}
-\frac{\partial F}{\partial\phantom{}^{t+\Delta t}S_{i}}=a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma+\frac{\partial\phantom{}^{\tau}\gamma}{\partial\phantom{}^{t+\Delta t}S_{i}}\Delta t\left[\alpha\phantom{}^{t+\Delta t}S_{i}+\left(1-\alpha\right)^{t}S_{i}\right]\:.\label{eq:88}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial F}{\partial\phantom{}^{t+\Delta t}S_{i}}=a_{E}+\alpha\Delta t\phantom{}^{\tau}\gamma+\frac{\partial\phantom{}^{\tau}\gamma}{\partial\phantom{}^{t+\Delta t}S_{i}}\Delta t\left[\alpha\phantom{}^{t+\Delta t}S_{i}+\left(1-\alpha\right)^{t}S_{i}\right]\:.\label{eq:88}
+\end{gather}
 
 \end_inset
 
@@ -3267,22 +3957,28 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{gather}
-^{\tau}\gamma=\frac{\dot{e}_{0}}{S_{0}^{n}}\left[\alpha\sqrt{^{t+\Delta t}J_{2}^{\prime}}+\left(1-\alpha\right)\sqrt{^{t}J_{2}^{\prime}}\right]^{n-1}\:.\label{eq:89}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+^{\tau}\gamma=\frac{\dot{e}_{0}}{S_{0}^{n}}\left[\alpha\sqrt{^{t+\Delta t}J_{2}^{\prime}}+\left(1-\alpha\right)\sqrt{^{t}J_{2}^{\prime}}\right]^{n-1}\:.\label{eq:89}
+\end{gather}
 
 \end_inset
 
 Then
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 \frac{\partial\phantom{}^{\tau}\gamma}{\partial{}^{t+\Delta t}S_{i}}=\frac{\partial\phantom{}^{\tau}\gamma}{\partial\sqrt{^{t+\Delta t}J_{2}^{\prime}}}\frac{\partial\sqrt{^{t+\Delta t}J_{2}^{\prime}}}{\partial\phantom{}^{t+\Delta t}S_{l}}\label{eq:90}\\
-=\frac{\dot{e}_{0}\alpha\left(n-1\right)\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}{}^{t+\Delta t}T_{i}}{2S_{0}^{n}}\,,\nonumber \end{gather}
+=\frac{\dot{e}_{0}\alpha\left(n-1\right)\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}{}^{t+\Delta t}T_{i}}{2S_{0}^{n}}\,,\nonumber 
+\end{gather}
 
 \end_inset
 
 Where
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 ^{t+\Delta t}T_{i}=\phantom{}^{t+\Delta t}S_{i}\:;\:\:1\leq i\leq3\label{eq:91}\\
-^{t+\Delta t}T_{i}=2\phantom{}^{t+\Delta t}S_{i}\:;\:\:\textrm{otherwise.}\nonumber \end{gather}
+^{t+\Delta t}T_{i}=2\phantom{}^{t+\Delta t}S_{i}\:;\:\:\textrm{otherwise.}\nonumber 
+\end{gather}
 
 \end_inset
 
@@ -3308,8 +4004,10 @@
 \end_inset
 
 , and the quotient rule for derivatives of an implicit function,
-\begin_inset Formula \begin{gather}
-\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial{}^{t+\Delta t}e_{k}^{\prime}}=\frac{\delta_{ik}}{a_{E}+\alpha\Delta t\left[^{\tau}\gamma+\frac{\dot{e}_{0}{}^{\tau}S_{i}\left(n-1\right){}^{t+\Delta t}T_{i}\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}S_{0}^{n}}\right]}\,.\label{eq:92}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial\phantom{}^{t+\Delta t}S_{i}}{\partial{}^{t+\Delta t}e_{k}^{\prime}}=\frac{\delta_{ik}}{a_{E}+\alpha\Delta t\left[^{\tau}\gamma+\frac{\dot{e}_{0}{}^{\tau}S_{i}\left(n-1\right){}^{t+\Delta t}T_{i}\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}S_{0}^{n}}\right]}\,.\label{eq:92}
+\end{gather}
 
 \end_inset
 
@@ -3317,10 +4015,10 @@
 \begin_inset Formula $\left(n=1\right)$
 \end_inset
 
-, this equation is identical to Equation 
+, this equation is identical to the linear formulation in Section 
 \begin_inset CommandInset ref
 LatexCommand ref
-reference "eq:61"
+reference "sub:Effective-Stress-Formulation-Maxwell"
 
 \end_inset
 
@@ -3344,20 +4042,24 @@
 \end_inset
 
 ,
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 C_{ij}^{VE}=\frac{1}{3a_{m}}\left[\begin{array}{cccccc}
 1 & 1 & 1 & 0 & 0 & 0\\
 1 & 1 & 1 & 0 & 0 & 0\\
 1 & 1 & 1 & 0 & 0 & 0\\
 0 & 0 & 0 & 0 & 0 & 0\\
 0 & 0 & 0 & 0 & 0 & 0\\
-0 & 0 & 0 & 0 & 0 & 0\end{array}\right]+\frac{1}{3}\frac{\partial{}^{t+\Delta t}S_{i}}{\partial{}^{t+\Delta t}e_{k}^{\prime}}\left[\begin{array}{cccccc}
+0 & 0 & 0 & 0 & 0 & 0
+\end{array}\right]+\frac{1}{3}\frac{\partial{}^{t+\Delta t}S_{i}}{\partial{}^{t+\Delta t}e_{k}^{\prime}}\left[\begin{array}{cccccc}
 2 & -1 & -1 & 0 & 0 & 0\\
 -1 & 2 & -1 & 0 & 0 & 0\\
 -1 & -1 & 2 & 0 & 0 & 0\\
 0 & 0 & 0 & 3 & 0 & 0\\
 0 & 0 & 0 & 0 & 3 & 0\\
-0 & 0 & 0 & 0 & 0 & 3\end{array}\right]\,.\label{eq:93}\end{gather}
+0 & 0 & 0 & 0 & 0 & 3
+\end{array}\right]\,.\label{eq:93}
+\end{gather}
 
 \end_inset
 
@@ -3385,7 +4087,7 @@
 
 \begin_layout Standard
 To compute the zero of the effective stress function using Newton's method,
- we require the derivative of equation 
+ we require the derivative of Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:84"
@@ -3393,8 +4095,10 @@
 \end_inset
 
 , which may be written:
-\begin_inset Formula \begin{gather}
-\frac{\partial F}{\partial\sqrt{^{t+\Delta t}J_{2}^{\prime}}}=2a^{2}\sqrt{^{t+\Delta t}J_{2}^{\prime}}+\frac{\dot{e}_{0}\alpha\left(n-1\right)\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}}{S_{0}^{n}}\left(2a\alpha\Delta t{}^{t+\Delta t}J_{2}^{\prime}+c-2d^{2}\,^{\tau}\gamma\right)\,.\label{eq:94}\end{gather}
+\begin_inset Formula 
+\begin{gather}
+\frac{\partial F}{\partial\sqrt{^{t+\Delta t}J_{2}^{\prime}}}=2a^{2}\sqrt{^{t+\Delta t}J_{2}^{\prime}}+\frac{\dot{e}_{0}\alpha\left(n-1\right)\sqrt{^{\tau}J_{2}^{\prime}}^{n-2}}{S_{0}^{n}}\left(2a\alpha\Delta t{}^{t+\Delta t}J_{2}^{\prime}+c-2d^{2}\,^{\tau}\gamma\right)\,.\label{eq:94}
+\end{gather}
 
 \end_inset
 
@@ -3402,12 +4106,6 @@
 \end_layout
 
 \begin_layout Standard
-The effective stress formulation is the method used in PyLith 1.4 for power-law
- viscoelasticity.
- We may add additional formulations in the future.
-\end_layout
-
-\begin_layout Standard
 \noindent
 \align center
 \begin_inset Float table
@@ -3424,471 +4122,6 @@
 \begin_layout Plain Layout
 \begin_inset CommandInset label
 LatexCommand label
-name "tab:linearMaxwell"
-
-\end_inset
-
-Values in spatial database used as parameters in the linear Maxwell viscoelastic
- material constitutive model.
-\end_layout
-
-\end_inset
-
-
-\begin_inset Tabular
-<lyxtabular version="3" rows="5" columns="2">
-<features>
-<column alignment="center" valignment="middle" width="0.85in">
-<column alignment="center" valignment="middle" width="2.47in">
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\series bold
-Parameter
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\align center
-
-\series bold
-Name in Spatial Database
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $v_{p}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-Vp
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $v_{s}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-Vs
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\rho$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-density
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\eta$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-viscosity
-\end_layout
-
-\end_inset
-</cell>
-</row>
-</lyxtabular>
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float table
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\noindent
-\align center
-\begin_inset Caption
-
-\begin_layout Plain Layout
-\begin_inset CommandInset label
-LatexCommand label
-name "tab:genMaxwell"
-
-\end_inset
-
-Values in spatial database used as parameters in the generalized linear
- Maxwell viscoelastic material constitutive model.
-\end_layout
-
-\end_inset
-
-
-\begin_inset Tabular
-<lyxtabular version="3" rows="10" columns="2">
-<features>
-<column alignment="center" valignment="middle" width="0.85in">
-<column alignment="center" valignment="middle" width="2.47in">
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\series bold
-Parameter
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\align center
-
-\series bold
-Name in Spatial Database
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $v_{p}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-Vp
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $v_{s}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-Vs
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\rho$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-density
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\mu_{1}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-shear-ratio-1
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\mu_{2}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-shear-ratio-2
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\mu_{3}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-shear-ratio-3
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\eta_{1}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-viscosity-1
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\eta_{2}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-viscosity-2
-\end_layout
-
-\end_inset
-</cell>
-</row>
-<row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-\begin_inset Formula $\eta_{3}$
-\end_inset
-
-
-\end_layout
-
-\end_inset
-</cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
-\begin_inset Text
-
-\begin_layout Plain Layout
-
-\family typewriter
-viscosity-3
-\end_layout
-
-\end_inset
-</cell>
-</row>
-</lyxtabular>
-
-\end_inset
-
-
-\end_layout
-
-\end_inset
-
-
-\end_layout
-
-\begin_layout Standard
-\noindent
-\align center
-\begin_inset Float table
-placement H
-wide false
-sideways false
-status open
-
-\begin_layout Plain Layout
-\noindent
-\align center
-\begin_inset Caption
-
-\begin_layout Plain Layout
-\begin_inset CommandInset label
-LatexCommand label
 name "tab:powerLaw"
 
 \end_inset
@@ -3902,7 +4135,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="7" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="middle" width="0.85in">
 <column alignment="center" valignment="middle" width="2.47in">
 <row>
@@ -4111,14 +4344,18 @@
 \begin_layout Standard
 The elastoplasticity formulation in PyLith is based on an additive decomposition
  of the total strain into elastic and plastic parts:
-\begin_inset Formula \begin{equation}
-d\epsilon_{ij}=d\epsilon_{ij}^{E}+d\epsilon_{ij}^{P}\:.\label{eq:95}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\epsilon_{ij}=d\epsilon_{ij}^{E}+d\epsilon_{ij}^{P}\:.\label{eq:95}
+\end{equation}
 
 \end_inset
 
 The stress increment is then given by
-\begin_inset Formula \begin{equation}
-d\sigma_{ij}=C_{ijrs}^{E}\left(d\epsilon_{rs}-d\epsilon_{rs}^{P}\right)\:,\label{eq:96}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\sigma_{ij}=C_{ijrs}^{E}\left(d\epsilon_{rs}-d\epsilon_{rs}^{P}\right)\:,\label{eq:96}
+\end{equation}
 
 \end_inset
 
@@ -4131,8 +4368,10 @@
  We first require a yield condition, which specifies the state of stress
  at which plastic flow initiates.
  This is generally given in the form:
-\begin_inset Formula \begin{equation}
-f\left(\underline{\sigma},k\right)=0\:,\label{eq:97}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+f\left(\underline{\sigma},k\right)=0\:,\label{eq:97}
+\end{equation}
 
 \end_inset
 
@@ -4144,14 +4383,18 @@
  It is then necessary to specify a flow rule, which describes the relationship
  between plastic strain and stress.
  The flow rule is given in the form:
-\begin_inset Formula \begin{equation}
-g\left(\underline{\sigma},k\right)=0\:.\label{eq:98}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+g\left(\underline{\sigma},k\right)=0\:.\label{eq:98}
+\end{equation}
 
 \end_inset
 
 The plastic strain increment is then given as
-\begin_inset Formula \begin{equation}
-d\epsilon_{ij}^{P}=d\lambda\frac{\partial g}{\partial\sigma_{ij}}\:,\label{eq:99}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+d\epsilon_{ij}^{P}=d\lambda\frac{\partial g}{\partial\sigma_{ij}}\:,\label{eq:99}
+\end{equation}
 
 \end_inset
 
@@ -4173,7 +4416,7 @@
 \end_layout
 
 \begin_layout Standard
-To perform the solution, the yield condition (
+To perform the solution, the yield condition (Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:97"
@@ -4212,20 +4455,26 @@
  which allows control over the unreasonable amounts of dilatation that are
  sometimes predicted by the associated model.
  The model is described by the following yield condition:
-\begin_inset Formula \begin{equation}
-f\left(\underline{\sigma},k\right)=\alpha_{f}I_{1}+\sqrt{J_{2}^{\prime}}-\beta\:,\label{eq:100}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+f\left(\underline{\sigma},k\right)=\alpha_{f}I_{1}+\sqrt{J_{2}^{\prime}}-\beta\:,\label{eq:100}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
-\alpha_{f}=\frac{2\sin\phi\left(k\right)}{\sqrt{3}\left(3-\sin\phi\left(k\right)\right)}\:,\label{eq:101}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\alpha_{f}=\frac{2\sin\phi\left(k\right)}{\sqrt{3}\left(3-\sin\phi\left(k\right)\right)}\:,\label{eq:101}
+\end{equation}
 
 \end_inset
 
 and
-\begin_inset Formula \begin{equation}
-\beta=\frac{6\bar{c}\left(k\right)\cos\phi_{0}}{\sqrt{3}\left(3-\sin\phi_{0}\right)}\:.\label{eq:102}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\beta=\frac{6\bar{c}\left(k\right)\cos\phi_{0}}{\sqrt{3}\left(3-\sin\phi_{0}\right)}\:.\label{eq:102}
+\end{equation}
 
 \end_inset
 
@@ -4244,7 +4493,7 @@
 \end_inset
 
 .
- The yield surface defined by equations 
+ The yield surface defined by Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:100"
@@ -4268,14 +4517,18 @@
  represents a circular cone in principal stress space that is coincident
  with the outer apices of the corresponding Mohr-Coulomb yield surface.
  The flow rule is given by:
-\begin_inset Formula \begin{equation}
-g\left(\underline{\sigma},k\right)=\sqrt{J_{2}^{\prime}}+\alpha_{g}I_{1}\:,\label{eq:103}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+g\left(\underline{\sigma},k\right)=\sqrt{J_{2}^{\prime}}+\alpha_{g}I_{1}\:,\label{eq:103}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
-\alpha_{g}=\frac{2\sin\psi(k)}{\sqrt{3}\left(3-\sin\psi\left(k\right)\right)}\:.\label{eq:104}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\alpha_{g}=\frac{2\sin\psi(k)}{\sqrt{3}\left(3-\sin\psi\left(k\right)\right)}\:.\label{eq:104}
+\end{equation}
 
 \end_inset
 
@@ -4289,24 +4542,28 @@
 \begin_layout Standard
 As for the viscoelastic models, it is convenient to separate the deformation
  into deviatoric and volumetric parts:
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 ^{t+\Delta t}S_{ij}=\frac{1}{a_{E}}\left(^{t+\Delta t}e_{ij}-\phantom{}^{t+\Delta t}e_{ij}^{P}-e_{ij}^{I}\right)+S_{ij}^{I}=\frac{1}{a_{E}}\left(^{t+\Delta t}e_{ij}^{\prime}-\Delta e_{ij}^{P}\right)+S_{ij}^{I}\label{eq:105}\\
-^{t+\Delta t}P=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta-\phantom{}^{t+\Delta t}\theta^{P}-\theta^{I}\right)+P^{I}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\Delta\theta^{P}\right)+P^{I}\:,\nonumber \end{gather}
+^{t+\Delta t}P=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta-\phantom{}^{t+\Delta t}\theta^{P}-\theta^{I}\right)+P^{I}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\Delta\theta^{P}\right)+P^{I}\:,\nonumber 
+\end{gather}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 ^{t+\Delta t}e_{ij}^{\prime}=\phantom{}^{t+\Delta t}e_{ij}-\phantom{}^{t}e_{ij}^{P}-e_{ij}^{I}\nonumber \\
 \Delta e_{ij}^{P}=\phantom{}^{t+\Delta t}e_{ij}^{P}-\phantom{}^{t}e_{ij}^{P}\nonumber \\
 ^{t+\Delta t}\theta^{\prime}=\phantom{}^{t+\Delta t}\theta-\phantom{}^{t}\theta^{P}-\theta^{I}\nonumber \\
-\Delta\theta^{P}=\phantom{}^{t+\Delta t}\theta^{P}-\phantom{}^{t}\theta^{P}\:.\label{eq:106}\end{gather}
+\Delta\theta^{P}=\phantom{}^{t+\Delta t}\theta^{P}-\phantom{}^{t}\theta^{P}\:.\label{eq:106}
+\end{gather}
 
 \end_inset
 
 Since the plasticity is pressure-dependent, there are volumetric plastic
  strains, unlike the viscous strains in the previous section.
- From equation 
+ From Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:99"
@@ -4314,20 +4571,26 @@
 \end_inset
 
 , the plastic strain increment is
-\begin_inset Formula \begin{equation}
-\Delta\epsilon_{ij}^{P}=\lambda\frac{\partial\phantom{}^{t+\Delta t}g}{\partial\phantom{}^{t+\Delta t}\sigma_{ij}}=\lambda\alpha_{g}\delta_{ij}+\lambda\frac{^{t+\Delta t}S_{ij}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}}\:.\label{eq:107}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta\epsilon_{ij}^{P}=\lambda\frac{\partial\phantom{}^{t+\Delta t}g}{\partial\phantom{}^{t+\Delta t}\sigma_{ij}}=\lambda\alpha_{g}\delta_{ij}+\lambda\frac{^{t+\Delta t}S_{ij}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}}\:.\label{eq:107}
+\end{equation}
 
 \end_inset
 
 The volumetric part is
-\begin_inset Formula \begin{equation}
-\Delta\theta^{P}=\frac{1}{3}\Delta\epsilon_{ii}^{P}=\lambda\alpha_{g}\:,\label{eq:108}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta\theta^{P}=\frac{1}{3}\Delta\epsilon_{ii}^{P}=\lambda\alpha_{g}\:,\label{eq:108}
+\end{equation}
 
 \end_inset
 
 and the deviatoric part is
-\begin_inset Formula \begin{equation}
-\Delta e_{ij}^{P}=\Delta\epsilon_{ij}^{P}-\Delta\epsilon_{m}^{P}\delta_{ij}=\lambda\frac{^{t+\Delta t}S_{ij}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}}\:.\label{eq:109}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta e_{ij}^{P}=\Delta\epsilon_{ij}^{P}-\Delta\epsilon_{m}^{P}\delta_{ij}=\lambda\frac{^{t+\Delta t}S_{ij}}{2\sqrt{^{t+\Delta t}J_{2}^{\prime}}}\:.\label{eq:109}
+\end{equation}
 
 \end_inset
 
@@ -4359,7 +4622,7 @@
 \family typewriter
 dilatation-angle
 \family default
- in
+ in Table 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "tab:druckerPrager"
@@ -4378,7 +4641,7 @@
 \begin_inset Formula $\psi$
 \end_inset
 
- in equations 
+ in Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:101"
@@ -4412,7 +4675,7 @@
 \begin_inset Formula $\alpha_{g}$
 \end_inset
 
- (alpha-flow), as shown in 
+ (alpha-flow), as shown in Table 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "tab:material-model-output"
@@ -4428,14 +4691,14 @@
 \begin_inset Formula $\lambda$
 \end_inset
 
- by substituting 
+ by substituting Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:109"
 
 \end_inset
 
- into equation 
+ into Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
@@ -4443,24 +4706,30 @@
 \end_inset
 
  and taking the scalar product of both sides:
-\begin_inset Formula \begin{equation}
-\lambda=\sqrt{2}\,\phantom{}^{t+\Delta t}d-2a_{E}\sqrt{^{t+\Delta t}J_{2}^{\prime}}\:,\label{eq:110}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\lambda=\sqrt{2}\,\phantom{}^{t+\Delta t}d-2a_{E}\sqrt{^{t+\Delta t}J_{2}^{\prime}}\:,\label{eq:110}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{equation}
-^{t+\Delta t}d^{2}=2a_{E}^{2}J_{2}^{\prime I}+2a_{E}S_{ij}^{I}\,\phantom{}^{t+\Delta t}e_{ij}^{\prime}+\phantom{}^{t+\Delta t}e_{ij}^{\prime}\,\phantom{}^{t+\Delta t}e_{ij}^{\prime}\:.\label{eq:111}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+^{t+\Delta t}d^{2}=2a_{E}^{2}J_{2}^{\prime I}+2a_{E}S_{ij}^{I}\,\phantom{}^{t+\Delta t}e_{ij}^{\prime}+\phantom{}^{t+\Delta t}e_{ij}^{\prime}\,\phantom{}^{t+\Delta t}e_{ij}^{\prime}\:.\label{eq:111}
+\end{equation}
 
 \end_inset
 
 The second deviatoric stress invariant is therefore
-\begin_inset Formula \begin{equation}
-\sqrt{^{t+\Delta t}J_{2}^{\prime}}=\frac{\sqrt{2}\,\phantom{}^{t+\Delta t}d-\lambda}{2a_{E}}\:,\label{eq:112}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sqrt{^{t+\Delta t}J_{2}^{\prime}}=\frac{\sqrt{2}\,\phantom{}^{t+\Delta t}d-\lambda}{2a_{E}}\:,\label{eq:112}
+\end{equation}
 
 \end_inset
 
-and the pressure is computed from 
+and the pressure is computed from Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
@@ -4475,8 +4744,10 @@
 \end_inset
 
  as:
-\begin_inset Formula \begin{equation}
-^{t+\Delta t}P=\frac{^{t+\Delta t}I_{1}}{3}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\lambda\alpha_{g}\right)\:.\label{eq:113}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+^{t+\Delta t}P=\frac{^{t+\Delta t}I_{1}}{3}=\frac{1}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\lambda\alpha_{g}\right)\:.\label{eq:113}
+\end{equation}
 
 \end_inset
 
@@ -4489,8 +4760,10 @@
 \end_inset
 
  to obtain:
-\begin_inset Formula \begin{equation}
-\lambda=\frac{2a_{E}a_{m}\left(\frac{3\alpha_{f}}{a_{m}}\phantom{}^{t+\Delta t}\theta^{\prime}+\frac{^{t+\Delta t}d}{\sqrt{2}a_{E}}-\beta\bar{c}\right)}{6\alpha_{f}\alpha_{g}a_{E}+a_{m}}\:.\label{eq:114}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\lambda=\frac{2a_{E}a_{m}\left(\frac{3\alpha_{f}}{a_{m}}\phantom{}^{t+\Delta t}\theta^{\prime}+\frac{^{t+\Delta t}d}{\sqrt{2}a_{E}}-\beta\bar{c}\right)}{6\alpha_{f}\alpha_{g}a_{E}+a_{m}}\:.\label{eq:114}
+\end{equation}
 
 \end_inset
 
@@ -4513,12 +4786,14 @@
 \end_inset
 
  to obtain
-\begin_inset Formula \begin{equation}
-^{t+\Delta t}S_{ij}=\frac{\Delta e_{ij}^{P}\left(\sqrt{2}\,\phantom{\,}^{t+\Delta t}d-\lambda\right)}{\lambda a_{E}}\:.\label{eq:115}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+^{t+\Delta t}S_{ij}=\frac{\Delta e_{ij}^{P}\left(\sqrt{2}\,\phantom{\,}^{t+\Delta t}d-\lambda\right)}{\lambda a_{E}}\:.\label{eq:115}
+\end{equation}
 
 \end_inset
 
-Substituting this into 
+Substituting this into Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
@@ -4526,19 +4801,21 @@
 \end_inset
 
 , we obtain the deviatoric plastic strain increment:
-\begin_inset Formula \begin{equation}
-\Delta e_{ij}^{P}=\frac{\lambda}{\sqrt{2}\,\phantom{}^{t+\Delta t}d}\left(^{t+\Delta t}e_{ij}^{\prime}+a_{E}S_{ij}^{I}\right)\:.\label{eq:116}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\Delta e_{ij}^{P}=\frac{\lambda}{\sqrt{2}\,\phantom{}^{t+\Delta t}d}\left(^{t+\Delta t}e_{ij}^{\prime}+a_{E}S_{ij}^{I}\right)\:.\label{eq:116}
+\end{equation}
 
 \end_inset
 
-We then use 
+We then use Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:108"
 
 \end_inset
 
- and the second equation of 
+ and the second line of Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
@@ -4552,7 +4829,7 @@
 
 \end_inset
 
- and the first equation of 
+ and the first line of Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
@@ -4563,29 +4840,36 @@
 \end_layout
 
 \begin_layout Standard
-To compute the elastoplastic tangent matrix we begin by writing 
+To compute the elastoplastic tangent matrix we begin by writing Equation
+ 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:105"
 
 \end_inset
 
- as a single equation in terms of stress and strain vectors:
-\begin_inset Formula \begin{equation}
-^{t+\Delta t}\sigma_{i}=\frac{1}{a_{E}}\left(^{t+\Delta t}e_{i}^{\prime}-\Delta e_{i}^{P}\right)+S_{i}^{I}+\frac{R_{i}}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\Delta\theta^{P}\right)+P^{I}\label{eq:117}\end{equation}
+ as a single expression in terms of stress and strain vectors:
+\begin_inset Formula 
+\begin{equation}
+^{t+\Delta t}\sigma_{i}=\frac{1}{a_{E}}\left(^{t+\Delta t}e_{i}^{\prime}-\Delta e_{i}^{P}\right)+S_{i}^{I}+\frac{R_{i}}{a_{m}}\left(^{t+\Delta t}\theta^{\prime}-\Delta\theta^{P}\right)+P^{I}\label{eq:117}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{gather}
+\begin_inset Formula 
+\begin{gather}
 R_{i}=1\:;\; i=1,2,3\label{eq:118}\\
-R_{i}=0\:;\; i=4,5,6\:.\nonumber \end{gather}
+R_{i}=0\:;\; i=4,5,6\:.\nonumber 
+\end{gather}
 
 \end_inset
 
 The elastoplastic tangent matrix is then given by
-\begin_inset Formula \begin{equation}
-C_{ij}^{EP}=\frac{\partial\phantom{}^{t+\Delta t}\sigma_{i}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{a_{E}}\left(\frac{\partial\phantom{}^{t+\Delta t}e_{i}^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\partial\Delta e_{i}^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)+\frac{R_{i}}{a_{m}}\left(\frac{\partial\phantom{}^{t+\Delta t}\theta^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\partial\Delta\theta^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)\:.\label{eq:119}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+C_{ij}^{EP}=\frac{\partial\phantom{}^{t+\Delta t}\sigma_{i}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{a_{E}}\left(\frac{\partial\phantom{}^{t+\Delta t}e_{i}^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\partial\Delta e_{i}^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)+\frac{R_{i}}{a_{m}}\left(\frac{\partial\phantom{}^{t+\Delta t}\theta^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\partial\Delta\theta^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)\:.\label{eq:119}
+\end{equation}
 
 \end_inset
 
@@ -4593,7 +4877,7 @@
 \end_layout
 
 \begin_layout Standard
-From 
+From Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:16"
@@ -4608,18 +4892,21 @@
 \end_inset
 
 , we have
-\begin_inset Formula \begin{equation}
+\begin_inset Formula 
+\begin{equation}
 \frac{\partial\phantom{}^{t+\Delta t}e_{i}^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{3}\left[\begin{array}{cccccc}
 2 & -1 & -1 & 0 & 0 & 0\\
 -1 & 2 & -1 & 0 & 0 & 0\\
 -1 & -1 & 2 & 0 & 0 & 0\\
 0 & 0 & 0 & 3 & 0 & 0\\
 0 & 0 & 0 & 0 & 3 & 0\\
-0 & 0 & 0 & 0 & 0 & 3\end{array}\right]\:,\label{eq:120}\end{equation}
+0 & 0 & 0 & 0 & 0 & 3
+\end{array}\right]\:,\label{eq:120}
+\end{equation}
 
 \end_inset
 
-and from 
+and from Equations 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:15"
@@ -4634,12 +4921,14 @@
 \end_inset
 
  we have
-\begin_inset Formula \begin{equation}
-\frac{\partial\phantom{}^{t+\Delta t}\theta^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{R_{j}}{3}\:.\label{eq:121}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\phantom{}^{t+\Delta t}\theta^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{R_{j}}{3}\:.\label{eq:121}
+\end{equation}
 
 \end_inset
 
-From equation 
+From Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:116"
@@ -4647,8 +4936,10 @@
 \end_inset
 
  we have
-\begin_inset Formula \begin{equation}
-\frac{\partial\Delta e_{i}^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{\sqrt{2}\,\phantom{}^{t+\Delta t}d}\left[\left(^{t+\Delta t}e_{i}^{\prime}+a_{E}S_{i}^{I}\right)\left(\frac{\partial\lambda}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\lambda}{\phantom{}^{t+\Delta t}d}\frac{\partial\phantom{}^{t+\Delta t}d}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)+\lambda\frac{\partial\phantom{}^{t+\Delta t}e_{i}^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right]\:.\label{eq:122}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\Delta e_{i}^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{1}{\sqrt{2}\,\phantom{}^{t+\Delta t}d}\left[\left(^{t+\Delta t}e_{i}^{\prime}+a_{E}S_{i}^{I}\right)\left(\frac{\partial\lambda}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}-\frac{\lambda}{\phantom{}^{t+\Delta t}d}\frac{\partial\phantom{}^{t+\Delta t}d}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)+\lambda\frac{\partial\phantom{}^{t+\Delta t}e_{i}^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right]\:.\label{eq:122}
+\end{equation}
 
 \end_inset
 
@@ -4657,15 +4948,19 @@
 \end_inset
 
  is
-\begin_inset Formula \begin{equation}
-\frac{\partial\phantom{}^{t+\Delta t}d}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{a_{E}T_{j}^{I}+\phantom{}^{t+\Delta t}E_{j}}{\phantom{}^{t+\Delta t}d}\:,\label{eq:123}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\phantom{}^{t+\Delta t}d}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\frac{a_{E}T_{j}^{I}+\phantom{}^{t+\Delta t}E_{j}}{\phantom{}^{t+\Delta t}d}\:,\label{eq:123}
+\end{equation}
 
 \end_inset
 
 where
-\begin_inset Formula \begin{align}
+\begin_inset Formula 
+\begin{align}
 T_{j}^{I} & =S_{j}^{I}\;\mathrm{and}\;\phantom{}^{t+\Delta t}E_{j}=\phantom{}^{t+\Delta t}e_{j}^{\prime}\:;\; j=1,2,3\nonumber \\
-T_{j}^{I} & =2S_{j}^{I}\;\mathrm{and}\;\phantom{}^{t+\Delta t}E_{j}=2\phantom{}^{t+\Delta t}e_{j}^{\prime}\:;\; j=4,5,6\:.\label{eq:124}\end{align}
+T_{j}^{I} & =2S_{j}^{I}\;\mathrm{and}\;\phantom{}^{t+\Delta t}E_{j}=2\phantom{}^{t+\Delta t}e_{j}^{\prime}\:;\; j=4,5,6\:.\label{eq:124}
+\end{align}
 
 \end_inset
 
@@ -4674,13 +4969,15 @@
 \end_inset
 
  is a function of derivatives already computed:
-\begin_inset Formula \begin{align}
+\begin_inset Formula 
+\begin{align}
 \frac{\partial\lambda}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}} & =\frac{2a_{E}a_{m}}{6\alpha_{f}\alpha_{g}a_{E}+a_{m}}\left(\frac{3\alpha_{f}}{a_{m}}\frac{\partial\phantom{}^{t+\Delta t}\theta^{\prime}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}+\frac{1}{\sqrt{2}a_{E}}\frac{\partial\phantom{}^{t+\Delta t}d}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\right)\nonumber \\
- & =\frac{2a_{E}a_{m}}{6\alpha_{f}\alpha_{g}a_{E}+a_{m}}\left(\frac{\alpha_{f}R_{j}}{a_{m}}+\frac{a_{E}T_{j}^{I}+\phantom{}^{t+\Delta t}E_{j}}{\sqrt{2}a_{E}\phantom{}^{t+\Delta t}d}\right)\:.\label{eq:125}\end{align}
+ & =\frac{2a_{E}a_{m}}{6\alpha_{f}\alpha_{g}a_{E}+a_{m}}\left(\frac{\alpha_{f}R_{j}}{a_{m}}+\frac{a_{E}T_{j}^{I}+\phantom{}^{t+\Delta t}E_{j}}{\sqrt{2}a_{E}\phantom{}^{t+\Delta t}d}\right)\:.\label{eq:125}
+\end{align}
 
 \end_inset
 
-Finally, from 
+Finally, from Equation 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "eq:108"
@@ -4688,8 +4985,10 @@
 \end_inset
 
 , the derivative of the volumetric plastic strain increment is:
-\begin_inset Formula \begin{equation}
-\frac{\partial\Delta\theta^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\alpha_{g}\frac{\partial\lambda}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\:.\label{eq:126}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\frac{\partial\Delta\theta^{P}}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}=\alpha_{g}\frac{\partial\lambda}{\partial\phantom{}^{t+\Delta t}\epsilon_{j}}\:.\label{eq:126}
+\end{equation}
 
 \end_inset
 
@@ -4719,7 +5018,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="7" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="top" width="0">
 <column alignment="center" valignment="top" width="0">
 <row>
@@ -4932,11 +5231,14 @@
  In a more general sense, initial values for state variables may be used
  to provide values that are consistent with any set of conditions that occurred
  prior to the beginning of a simulation.
- The current release of PyLith allows the specification of initial stresses
- and strains for elastic materials, but only initial stresses for anelastic
- materials.
- The next release will support initial stresses, strains, and state variables
- for all materials.
+ The current release of PyLith allows the specification of initial stresses,
+ strains, and state variables for all materials; however, the initial state
+ variables are not presently used.
+ The reason for this is that the present version of PyLith always performs
+ an elastic solution prior to performing the time-dependent solution, and
+ the state variables are not used in the elastic solution.
+ In future versions of PyLith, the solution of the elastic problem will
+ be optional, so that initial state variables may be used.
 \end_layout
 
 \begin_layout Subsection
@@ -4988,6 +5290,15 @@
 \begin_layout Plain Layout
 Values in spatial database for initial state variables for 3D problems.
  2D problems use only the relevant values.
+ Note that initial stress and strain are available for all material models.
+ Some models have additional state variables (Table 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tab:material-model-output"
+
+\end_inset
+
+) and initial values for these may also be provided.
 \end_layout
 
 \end_inset
@@ -4995,7 +5306,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="3" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="center" valignment="middle" width="0.85in">
 <column alignment="center" valignment="middle" width="2.47in">
 <row>

Modified: short/3D/PyLith/branches/multifields/doc/userguide/preface.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/preface.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/preface.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -170,16 +188,16 @@
  Knepley, S.
  Somala, L.
  Strand, and C.
- Williams (2009), 
+ Williams (2011), 
 \emph on
-PyLith User Manual, Version 1.5.0.
+PyLith User Manual, Version 1.6.0.
 
 \emph default
- Pasadena, CA: Computational Infrastructure of Geodynamics.
+ Davis, CA: Computational Infrastructure of Geodynamics.
 \begin_inset Newline newline
 \end_inset
 
-URL: geodynamics.org/cig/software/short/pylith/pylith_manual-1.5.pdf
+URL: geodynamics.org/cig/software/pylith/pylith_manual-1.6.pdf
 \end_layout
 
 \begin_layout Section
@@ -187,30 +205,19 @@
 \end_layout
 
 \begin_layout Standard
-Current PyLith development is supported by the Southern California Earthquake
- Center 
+Current PyLith development is supported by the CIG, and internal GNS Science
+ 
 \begin_inset Flex URL
-status collapsed
+status open
 
 \begin_layout Plain Layout
 
-www.scec.org
+www.gns.cri.nz
 \end_layout
 
 \end_inset
 
-, the National Science Foundation 
-\begin_inset Flex URL
-status collapsed
-
-\begin_layout Plain Layout
-
-www.nsf.gov
-\end_layout
-
-\end_inset
-
-, the CIG, and internal U.S.
+ and U.S.
  Geological Survey 
 \begin_inset Flex URL
 status collapsed
@@ -223,7 +230,7 @@
 \end_inset
 
  funding.
- Pyre development is funded by the Department of Energy's 
+ Pyre development was funded by the Department of Energy's 
 \begin_inset Flex URL
 status collapsed
 
@@ -241,7 +248,7 @@
 \begin_layout Standard
 This material is based upon work supported by the National Science Foundation
  under Grants No.
- 0313238 and 0745391.
+ 0313238, 0745391, and EAR-0949446.
  Any opinions, findings, and conclusions or recommendations expressed in
  this material are those of the author(s) and do not necessarily reflect
  the views of the National Science Foundation.

Copied: short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.eps (from rev 18641, short/3D/PyLith/trunk/doc/userguide/runpylith/figs/hdf5layout.eps)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.eps	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.eps	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,1886 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: cairo 1.10.2 (http://cairographics.org)
+%%CreationDate: Fri Jun 10 14:02:07 2011
+%%Pages: 1
+%%BoundingBox: 8 9 354 211
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%EndComments
+%%BeginProlog
+/cairo_eps_state save def
+/dict_count countdictstack def
+/op_count count 1 sub def
+userdict begin
+/q { gsave } bind def
+/Q { grestore } bind def
+/cm { 6 array astore concat } bind def
+/w { setlinewidth } bind def
+/J { setlinecap } bind def
+/j { setlinejoin } bind def
+/M { setmiterlimit } bind def
+/d { setdash } bind def
+/m { moveto } bind def
+/l { lineto } bind def
+/c { curveto } bind def
+/h { closepath } bind def
+/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
+      0 exch rlineto 0 rlineto closepath } bind def
+/S { stroke } bind def
+/f { fill } bind def
+/f* { eofill } bind def
+/n { newpath } bind def
+/W { clip } bind def
+/W* { eoclip } bind def
+/BT { } bind def
+/ET { } bind def
+/pdfmark where { pop globaldict /?pdfmark /exec load put }
+    { globaldict begin /?pdfmark /pop load def /pdfmark
+    /cleartomark load def end } ifelse
+/BDC { mark 3 1 roll /BDC pdfmark } bind def
+/EMC { mark /EMC pdfmark } bind def
+/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
+/Tj { show currentpoint cairo_store_point } bind def
+/TJ {
+  {
+    dup
+    type /stringtype eq
+    { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
+  } forall
+  currentpoint cairo_store_point
+} bind def
+/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
+    cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
+/Tf { pop /cairo_font exch def /cairo_font_matrix where
+      { pop cairo_selectfont } if } bind def
+/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
+      /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
+      /cairo_font where { pop cairo_selectfont } if } bind def
+/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
+      cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
+/g { setgray } bind def
+/rg { setrgbcolor } bind def
+/d1 { setcachedevice } bind def
+%%EndProlog
+%!PS-AdobeFont-1.0: NimbusSanL-Bold 1.06
+%%Title: NimbusSanL-Bold
+%Version: 1.06
+%%CreationDate: Thu Aug  2 14:36:28 2007
+%%Creator: frob
+%Copyright: Copyright (URW)++,Copyright 1999 by (URW)++ Design &
+%Copyright:  Development; Cyrillic glyphs added by Valek Filippov (C)
+%Copyright:  2001-2005
+% Generated by FontForge 20070723 (http://fontforge.sf.net/)
+%%EndComments
+
+FontDirectory/NimbusSanL-Bold known{/NimbusSanL-Bold findfont dup/UniqueID known pop false {dup
+/UniqueID get 5020904 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /f-0-0 def
+/FontBBox {-173 -307 1097 979 }readonly def
+                     
+/PaintType 0 def
+/FontInfo 10 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001-2005) readonly def
+ /FullName (Nimbus Sans L Bold) readonly def
+ /FamilyName (Nimbus Sans L) readonly def
+ /Weight (Bold) readonly def
+ /FSType 0 def
+ /ItalicAngle 0 def
+ /isFixedPitch false def
+ /UnderlinePosition -155 def
+ /UnderlineThickness 69 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 1 /slash put
+dup 13 /underscore put
+dup 19 /a put
+dup 18 /c put
+dup 16 /d put
+dup 8 /e put
+dup 14 /f put
+dup 6 /g put
+dup 15 /i put
+dup 5 /l put
+dup 9 /m put
+dup 20 /n put
+dup 3 /o put
+dup 4 /p put
+dup 10 /r put
+dup 17 /s put
+dup 2 /t put
+dup 11 /v put
+dup 12 /x put
+dup 7 /y put
+readonly def
+currentdict end
+currentfile eexec
+f983ef0097ece61cf3a79690d73bfb4b0027b91fca726ef5f343155b53740e713b3df00cbb44c4
+acafbad0de984f9a43f3eb2f141eb74b6a5b1cf190e7629c670a014113fbaff31382db72a567cf
+25abc8765e67c5ffbeb3a3eea086d3aa7698dc27c415c87d120df491abd59da63087c53e2dd109
+51d5ba50cacb67bb7782e3cb5a3ce5faed0fcff9addb645943e6bd628ee1bdf387b452f1bf472c
+0696e5c6091ef39657a76dd73b7a0bff0b56803539287550b7fbd4dc5809a3fdaf2f11123a3674
+f3024a5a3c69ce7ca9b1182ed1bdf2b0c47d92feb32d4dad6e79ac00bf4ef0c0826ba95a230f6c
+d6ea387b85e2f82617e1b8904f13961dd9fe6fc0bef99bd714c11f29abbab942ed8b740413bca0
+8fef2fa86d0086966957b0b20457a4202636cbade16ab2b4c73a8446ffd4d9e3f9983533d48621
+bcdf0f51a8244112b7345a2d7705808270033dc994ec81837cc985f336d47bb8b80a0631f5021c
+ff7ee59302d21a2f1419dff7e74a8e968d92070b2171fab7b56b73c110e69be8cfb5e7ee3042c6
+4dfc56ed5e38624ae7412d8c20dbe7c470ce5911644bded45c5381c80afc4783d809e9f5da1d31
+71d616093ba01a8e939f6376ce295a8c7bedc0ea0514a02967cc86d6f00be92f67cc89dbb7590c
+c855e57638a24406c16a03c2c61db308cb4717da9efc8f566d1b481ce8df8638aac86e36ae7cc3
+d780748e0becc7525d582a548179e9167b9ae5fe83de94cd5d991af209467c31fe29925028e208
+debae41c0bbcd3d2dafdc2ef108f3417f389cfb42ebdcddf4c2ee4805068dd10e7f7b9375b3524
+dd55bcacf1ce6a6ac39edefaef217805c1f7116a23c09787694db4ffedc97992472328d2431c68
+4958871dc27df87b37d5b0d2b53147c1764522ec52e22ce277df52c7c459b171fee545f163100e
+80efba7ab31e33dd5335b7416e5ec31951e2cb2ec847d2f95cea5d5bfcc57dc8f421935949ca90
+2eb1b612b8b5a2572b807e989b1b1073853dc171f4d1c3f7de02688aa081d873ada12d85342571
+8540b2036d4864f51d8e8a81fdab2b8c25e9ea14e7888ded39287d0807781e69201b6433590238
+070c44317f4aae15280d8745fe3536ea45271f97f9a5c97f9a0fdadea0236708b47eeb16e27edc
+7ba60ee2e9ac1afb273f72cc177a9677d788715a89ea3a58f78a042ad7db3b5f9c4cdfb5540e41
+043e04d1e7d58ca83b76cdd7f2280ff1d7ab28635b3ff22e3c6544e8787757283969a86e3a4bfe
+2a230d18fa6d025c3474453ed7151dfb601fc1ce2b6efd9dded05bddbfa50dc48550842f72154f
+f017b7b85a3a18f18669d32ff07e12d06dc2870b4a8648998450fc2715dd7db82307e2a2a78aac
+90caef1cfcd1672505634f731ad70ccd6ffbdfe678d2e55ee432568697fd92a9101bfee5db41d0
+e18d2f0528e6b17c8904792e33459d996a2871b374767bbe4f23184d0bc10373a3ab4a19610d53
+64892fd4c84bbd0b993ddd5ab659b8b5a6f9251e21cc2c1e619079cff0cbd84efd9e55c3473614
+e9d4762d0d7d90db31b6018c5b9215be0e1f1d1a3f9843eef10ddeb8929520f0bfc0d0dde5f2e7
+ed48bb584e28f2f8b2d07677e160f4d8681db94c9591d57816f48be4707e9b1a190765f2a72402
+dfb9b35c8e563c35171e461ad23157bc1bcc3e55a4093557d7c5fda2759a52203d0da6180560c1
+02f17dfc2cb1112f64386195950a6ce1755a19c55e9f4581166ac935e264db470480fc5f0f711b
+3263de924e16d4177b303f00286ea41823114dab24af5837cb6aba06eb5b65af493b45d0203ab0
+da468932004ad1bea2f85ecf625792c7606f6b436a3df5ee4e3bb5f373b62fd5107a7e7474557d
+e23c5a5f840843f700137e27a13ee457e8f86b40ac2b3fe1d0d52877c1afb3bd19017bf7585c8a
+2295e6dc26b8cad7fa07db11861e60b353b4071dae7b89abde21c911dae9616877de3875523cdf
+ff0f3d8eea63070bb25febc73250ad18fb44fd9856173ea16a109d9fa3fada3a71bd4d73f6a6e3
+58cf0ef99b5c327806ebd7a4329513ecb0ddead3147367b343467a8f66f05353cb1682c1b10e36
+d352c46c09dd13a6a87466bb5c08996fc24865813a443a310ed669d633e18c2821617b96ecba36
+4dc875435027324435af910166e063832ce329e5ca07210093b4ec863110f7872b92197c7a5d8f
+a716f85f067c2bd3548cf861b19c7b287eae62ce1bbdc20fed49f055fe71696e6a762c4ce718b7
+9fb3b3fc8c521b97a1d96a7de3e3a3d1f870e79b3c0a88073c6f508a742286b328834067737064
+0d0c37ef1e1cbbc03f933b63781616f027bb53e8a2c89898f7dfe125a1f22638c1950186b743f2
+44e3d385b3e13cb3821109a7bafbc6b439f23e4ca205ec22b6a0d6e6d116146e8a97049a4b6b21
+3f34e27d1bb4726461b7dcb8dde7769d4d841359d93cc99f6c85ec131b2040fb17fee47ab7c1a2
+1167f852080fb6b2bee88284794bc609e89dee27118031b95cfcd926fb54d3834031304e9d75de
+bcd5056fd12446f743a048d94a37cd3f02db45e13804e8bc8026de869edd39bf7dd78a3fe208de
+5f3bbf16dac52644ae9f2e2de257d768e4969513c1e5ad8cf599c6c9e4d947bed8d30a94d81eba
+3faf604399b6c6b3594e3b700571e1a3c5b3d69a6d7fa4aee1fe49f224e96a5a7ae32bab3b2964
+a1a9472234c82021abb799acf7a3bffba85fe48c2bc0649bfafcdbbb84b62f0e5ddfb9857e400b
+9986d8d38ce1f0603215f2e9be9de8481f8d31ceebbd97fd41d89ba1043a2d06c72f48df10aebb
+6740dda134b709f46bb97f34fc089c2d50d07db9bd1af2fc747b230750008cd4aa408453a7fb95
+653a212e29b87c00946dae3b8ac5de10617df2beff7f1b444111bca4e5a61b05ddfd5842464430
+e596eba50ff3851a1b14f00bf1bbcff1345cd967a08a9c8922c506236415ce50792167c6d3f8cb
+0efd2531d4ff0613470e9be44a5c3a634e8851d93331ff3001e187a3aed8a8e583d3261a02fc72
+3b5c85abace6e705c8445c9bcba9145929c662d8d46b342e5315b945ff74e5ae4670cd180a9ed3
+379f3509a255733a5876f4a4f46b59112a2a095370b5414ce4da3df47b130a4f0a910c0a6c42f0
+2829f4e82c02aec0d2fc3629e1de3a27ad1e2b9173557bd09fd61750fb97da7c3637bea40bf5d2
+eed7a35ebca3d882114340379f70e9e37aa13941fc4c3f1adbb0cbb10c6f8a844eb7976bdb3f11
+40b4654819f3ec50177b5d171f54d2e655e04c54422390d09379385581f33649539e3f1de8c9a6
+f318a2f5b5d71dbfdb0e4fb27fd30521ee5a013575c31944ff30349d52907413d171fa2abf2858
+e08928cbc554fa5821e1c4866c7b848724177b9af0f93491f6d8dd09a9de8c69ed2485d523d1b2
+b9c9a8d1ce5cc504c797b3ebe45149144bf0def1807eaa51bd8735f0e649ad75d0dd3ea6ba2371
+49391791bdee18e063b395df12e967dfdf4dc559e525599d8aa0033c2ebe384f5c5932f0369129
+b2d536b6a5ae04de16a0b6c9e3d174e40591e2c8703143e602e9143988c3b69ecee465ceafe71b
+08d1818001aec457ebddcec1b3c155c5cb5ee2a06d7c0d8db0f45ab6c6e38c1899c582b6120ca9
+008a75d0d378093065ec4714bffe5dd2f86b0b34777bbd7453d0d46398be95c51ae0d06af562e8
+d445daf82a444a62881361091f0e4f77dc24dac9b93b1cc6d3d01ee93cb483dde896a5ca6ad293
+a52368679e900907718327815b85f9a0454a7140de0224406d32ea3ee24edeff7e8ad6e6f3fa21
+c4ba037c08031775b8a306624777c4e9a1771ef3db3a857b736b6d61c6984c2bc3064f6a82a224
+5ec55cd971ad0820bbb83044e1ac6557b65dea86e3772f307af336d6556ddeff02379b2becb9cb
+bdf0b6fe6d3dc8c48f8bb36eb98bf4baf04240fa4805962789ec1ae7e1316e0bdb8d5f6fa9e783
+8bdbc0c6260490ac8a57e4e9a384e3a310421a7916c4a6a7e08352459099e3b2117545ef265d6d
+d58b902b0110e4fe9af2a1b21490c119d203e496449d4d451397a75a2e0f21a35667dc62050070
+5236f9f15bd7b46ffcab72bfbdec9f7b9e1d9046ef20b83b785b0d5e6709a622d101b48fa7cfa4
+20c3273210b45bd07b2fc546e9b136416b6e307c5ac2e047a910fa0e9f2d6f8dd21a647e0fd19e
+f66dbba707de4f68f5b95efdc3a74383cce8b76d632592eaef5ef11fbb14d50d71a93bc34621c8
+6ae915d36b21dfc6eeecb7687110b361d4cfd11cb1a459706b8037cbca5017613a78b4b40edbcd
+66bf050da44896f722390b2970d4304312fdac01c613d99362b5181ceed93425315f8c65ed7721
+b10e653027ebab8b966393d41628c49e875699ab0af95958283cf2b1fa44377720cce62e66add1
+b68b65853123998554541bb2eb0ed5f66cd5905b8ba0a6d43251ac170e4c758d5056da22728a20
+aa4043bf7efe88127b42978c3d1121c7e48466901c013b6fd57768046a7af696357193569516da
+89ac00d0e716d62808951701456746d0716d36bd7654ff010aec87d897daaa867e0f156ddeea8f
+d1c407e7d87c6097c7690e409b52e78179c51eee7d0033f869aabd6b0b08be9895ddcfff186bb5
+a2193e7f5210a5c15414bdc6b6baacb36682e4736eb84b3154f91e7d7df381151e8c15c1597887
+59c0160085c99a591f1a43e60c7592ffe886214df47b13c73fca6e81fd6770beb6c1ce54bda7b8
+ed744ffcf2412f73f0b4dc20337b486446e7369de487175c53b7400063a0e7dfb4df64e94cf16d
+e0b8c58b6654f6e1fa7c307b9d675ebd61f87a2d2cbe22433b749069acc53068f5f91e587c55e0
+1975307d5920b7ce671e6471c76304102846cfa13b270ab88ab5c855087a3e61a7f1c577dd8550
+c3cf2d1576fc5fadfd84a337df729f92d9ae80a2959d02e0bc535f8a884186630d732286aa8bb6
+a9f297f16fd5321ae530467be2c30bfb01b0a776fa2b2cc25cc98fa8f6c236c5959796f96e6dc5
+3f828d3804f87e5c18b4b4ba748734e7a5416773d8fa5df40433162062630c74c9c8e8d5323c11
+138ab73a598e2e26b11ad021fd69f1a97676a0455ab5dd46f41215a753da97202fd65476c08252
+7fea9665609f8662d41739cae2d347a9aebb206c77d18fd65a12b60996f3f93e0ade8b036eb687
+3ea97f8bc6e82756592f27e9c7bd6a87abfbf338ccd00a81ab40fed7bfad0368be0e5fad60678b
+800cbb95b97314fbd0df5fbc42cb16bfb2f5a3c751896f8e8b6f1229c5df12c1ca8ddbb087fbf1
+1cd1fe3e9755f3f143c053205c111429b3d4427db9ffc54fedbed0f882671e65e1c9a40f90ead2
+f8f850a0eee0365df95da0ced5d7215f1d1b10cd2b7fdabfdd46cf2d070252e5a9c86bfd1b91b2
+3880721fe730c26702e68f7d5ffc80ba470b94620ca6fb39c4bb44597df3d5ba6ce8ebda56242e
+6c41628ac3150f9dc313daf763441c51b543dff2c259af631c4f87897837f5c90f0a298e1b4187
+6374c3816cc190caf25d9965c9b18668e2d53472c76c4755c1184cc31e5d89a80a4d3c033b5e2e
+8bee8d7acf74072ef0191cecf5ae2fe329b0a59ca6d271d04529333e8e16d0973696761aea98b9
+a585cde96f01f3c18034f3243ba706f0c2581dc27bea9d73fb4f79038f04335ffe5e0fb765ceec
+3ac10042ff41d7e587ef1b24674451818e65edc66c7d7cd33bc7f49876ef58519502fa422b05a9
+e02e8445758194388c795f10bea00559aa0d4b4678b8f336e9af44d989bcaec19f972af2eee966
+5402fe81435dafb722d1f229a3cbde2d1718e99129a1295585e5b59caf607b7b16433c9ed44573
+de2de760a92c80591be90cedff1d0426768c51b071ebf69ed70173059df8d9fcc459b724a5e367
+c7878f66c3858d13ed5a5b4f92de37f8b2410623ad1579ab9a24b0a4f0d6954f57e5287bdd7432
+028205b30ecc70773def7c2179954f297fa106b1a98f21c3291843ddf5dcbacc2cb25a08ce0dd7
+e9c180b12b7da1b19f86fbc607b2598e409deed9848afb7243877b18ec6582059c0907e264e55c
+b5f398284cef60d78b63f6877d61d7708a3278dd2eebe7a90743bc1948aed0ae8fddb40713f811
+bd0de59fa7b3ba7a3f8bffc40e8f01858d31c278978803fb5406a49e02e1beb50862f718ca4dee
+c0d36466ae0c3d7de29b33c542896bccfbd7c27d1adb56b2f4c508148a4a0859c7130a85981721
+67322cd9ed269e88c13066dbe6f5a0617dc35b6f4dc53560d7c93da5273c952debab5c7225e0de
+d4c1d361715edf3ea5a33679f447ff9dc3ba6d7b355edbbce20fc98ac32ec6a94884faf3929982
+a7e668d95357d83829c3a75314282e477073869445ba827e73746b511bf914fa1604585c1627fc
+a470e274961fafc68a167090726935eab5dc8447a2378c2e425381122e14398c04856bc4c9ee63
+06921389f88d8750433c87956d08fee5eba6c18ddcd90c680e94e8b190b1cb30ed3e509b390b0f
+835333130a5591bcb256a7345a783beeed76a9284950633526b37ec25176375348789be200942d
+de25c2c363e3948f19c472ef4fd36d28e702e114248c51aa8befeeb4f3a5853ee294f2bbd70712
+57165dd6e2b18c465db0a3ab6818618d3b4d7b8ba9841cf0c274324412d6e67a86f4ec045cfa22
+59ce02671b02ba12cf678ce3d7878d302ef2ffa799a68e610455c38850ef8a01dbbf3298943225
+c5d2d7472da48c14c66fa66a2fcd155463172e04815849c96d9229c59af790684b3317c7725404
+40ea91f555ab053a8db34a288623d19c51a2d8ff17a36fae7d8359977204bf6b2c1fec01843ee7
+f03832a0ff57d067a939ef6645e9fc8359ddf19e44301fe1ae5518a0908c069019b3670eb2e81d
+c7c965fdf33b1add8e2fa764893c50807b4153fd2d7968ed11c74b295b4df8035bcd9d426ea6b4
+5c629681b297206cd81e537a0293ac0eb8d1a9b149efb41f029d08421db9213395668278ff4687
+e260c33a8f7bc39f01495a0999965e8de0f4d26b30d7aea5564dc89343fec13137820803201f13
+0a35d02a963927fa02f86120e587f7f3e746890c4d49bbd172cc53cfacfdf4e1642257b9f0c6b7
+e480d82d2ef3cdf3e871889b5edfa8ff2f7c37df44e7141de2ecac43f06c9a45f909582e4b8cca
+f7a2806f544a9dd2c2d131dbdaf5bf770c0ba6c71221987b73b9a73fe53f10c2314e8d2ab9e8d0
+da8e780c780b8eafe650b0d9c5050670a80377ec6e1a1fded439bbae7edaf3662eba42b04a24c8
+184ca9fe994637cdd193140d9dd22a2f1c61f3fb92df6d49eb4d8765e620353bdacb5f64e8390e
+c073172253efc739d756dcd7768a15624b76f5701a6d88623c4656034ca0ac97388fd86dbe1d87
+20192ebb7e183462f00abdac6ea11a34ea4b42bd98dc92f032ecfe18fd82fc68c4a78ed9bc30ba
+6babb05b04a4463560b3bfd9c51c290ef9a8a53974a02ef7c90c93d4f76c0e70923da84ada4be3
+8e62f8b9b96e2d241ec96a1ddfc757a5a7f89cc0e8b63af598d489ffa21f15e935604384cb626f
+a65279aab1fbcd29d86a191ef108e5a491a4c28cf536e19e19128441baa98fadc9edc1f797566e
+e2bb229d402880c5b70d1441a6fcd1d552cffbefee854ca347c4f5c48f2b471a3c09cbcb443814
+e9d5189f81936dfdb926312429cfba956f8ec6272fe42bf8df28230dd61f7a96e709850f6f4c4a
+bf95bf80fbac674c440a01c8b0b6b2f603b0d269b83e5734a4d57f3bb9c4f9b3ad093137c7f1cc
+459cb3b674c334f38ad5fc1640a296553a1eaf91db223699814c70239b8bc5cbf5c7207d416d2a
+3401daae7515a9cad551523a5943b038d2c59aadfca046bdac18da33021e80c8598998fcade704
+a10797738cd2f89047078b7ee8f4d94051e668442b0258e071d23173ab0b7c182399cfbe591dcc
+b192ccfe79c07c7ed6a9fc9a10510e6c112f99b99e431f6dde0d3da9e0ff733890bdf0202951f2
+096b3c6d76dcd0e09dd98f5ae00f69daccfc55e98da4bd9f1cf15cc6ea8bf7351ad431586384d0
+0f8bec6ad3e1fbd3a5044ba1025dce099bf779e1c37324f82fa312ad8e562749e171ca80a3bf31
+2705f9c2a003ce8d4e44732b9b7f6cfd3dbef02d76532f4609ed15bf671d4d15672fd4707802b4
+ba8506bf78ea560240e2922ed987987c4e2054199a5574614f05e945c89dcb7618f8e53c21b1ff
+d871e971dab656e0a43acca16b4a7408018ea13eb7a3f2e961c29098b256c23170cf2d18a0b908
+19774d5eec57b693cd14e22749e4b069578e5491fd1ce90ce468368b0c4fd93aac08f962226a04
+43b2bc2d372cd36ed9f9ef6c32fd85f55ac22039d7480eeea8ce3e27f0e316b493f9aa32b6ab21
+ff4ceb527b6ddb030044e0a94373405d9b8e41e0ca414a1f2ecc4708b572eef46ccc269980fa8b
+e2be136f150f6799b5eac52118fe30991dc2329d61e4349d4b2b44f48293e5232d4fe412a670f7
+8aec964fc0e5eeefecb57af6f492e5df49f42a69b5a02d9691c831a15dda82e22eec9933f56888
+8e01a8006371776435e6c7ac466e9dae0f7a94916802d8e2f8569f18deffa2c19585327a16d449
+41d4cbe17dd19f81b2125f901d428eb95db4de1c88b368db7f88b7b6e1bcc5ac80bcafdecf6741
+e267deaf4ac2826fade80da3f4ea849bdeb762d8034c5290e6df6d4d1a7bbe25fcfd2f0912bb8c
+4da9a90283f5b16ef1acdbd080da125d82496cd4cef09b0ed0fd7e11723bd4287fa97d3f3247c6
+ea18b6d92ee19aae22f627857edcdfcadc3f3d35e41532419c73b320dc91f4f649239bf58d41af
+a24a924eef784b4dfef84f148122f2146fb7b3e6c58b334b5b134e7e0185e7d59a2bd15755759f
+209f34fcac04d014f0058f1d240d72b266077e5b6896929b02e082179e316c22cf71fa62960e23
+4f77ce0ee0b41638edd4f5ddd6403f7d9f5edd76c3c9cae21adc4189e1493fc4f89f1b7ad85b87
+0eba2a2ade581c7d73af93e39d96fcedc48d283aa21d4864334bcb401296d4ea1bdf1e8ad94952
+1e0b774d8ffe8b94dd83ea15ed7321d012a6b001913ae66aa4550db20c261aa196cc461cc720b6
+32121eccebeffc57aa886a9b974179f3553e2748ecb88e31ec18b7321e63ac704605352b623c81
+e1edcd297520cb3eb68feb817d62e15ac8d7ace023ee387d98cf7eb11374cdb038b13a0f857516
+abce4b681d75bb69acc8439a2260b99db957e8ab57a0c4747d6a07a1ee6be91273c7f9285fa2f7
+4aa9156d46e8a7776f3eb9ff15bfe5c0c33e3faeef5709c593bac09ca99620c94e446a5ebe9799
+bd85f97ff0d2950b47c7f4e0b14903fbaa623990f9eb11c1cb3292e6ac20caf79ec7a5285c63a2
+00cd6159c86a05539851ef9e94b59e063350cc79a1dfc931389878410dd705d6c5dccf2d7fa7ad
+bd922d30ea88441a58d90696220d7c544bef828a51b0647d660a47fd29627070369d594e327cdf
+81d906cb8e2683a45d07b6220f4a84b86ba3c841d456e3d3d80cf74696ad59229e0782d57f9554
+7cd615ad0a613dda0c4227191810c44466e541f39296f2ec64cde960a5712a5055bcb6b8320129
+8c0dcecd7c65d3f19375d6ee634fb138efb7fa01156f9a975d415bcb9c0df2342b7272b9c6fb2d
+9d8a4cfc87f1691101fafbe460bc6ec9650d7d62bff820951822414744779bd6dc52d521e99ebd
+07c5dccea9823b4a39d46fa620795d54cf58400634d6b982c9ec1e1634c258cd18f6523cf7b636
+53bc9fba23a96e8f4402ea9349674fd48c033eeb9be4f2a207e00d5ad68eee1dcc3214170d36a2
+2e0eb863fd2409b68c8325ad4bd20b6d4b4358dd67bcbe96d74cd2bc48678572c95042b4a4aa97
+c003166aca8e981c42f0852a26cbfc6a61a485c98c17aa4cd5a1031fdd8e0cce53f6092bbae1b1
+bd84c79dfc89723509b856f65f1934e6396f8a1ae9df20f80a9674335c01af66467c750582b589
+ccfe929501bc33838d3f2ebfdb1cf5b4def74453c82f5f25f7b3122ec1462ee7706b4e8cf09d0a
+8af6510a76eaf2125fa6da124f51d78179b337b6fae63a6e4838bf054412a949b9e6e8cbcacea9
+cb7cee59108469c646448a82344275cdce6fac4f65a8bd15e89e69222a204360944f9f7f05bd9e
+5029b6c472b9a2982ff58fac1198e975b92d44e5903eb5ec8646d448df3d0d08bfbd0425e1c1a5
+5187800138475f34f897fee15461f1c943b6b94b8a4652af2505921d72bd2d398be3c3e5af9c56
+bfd3e307c3263ece5ebd243be9a71b2de08e375304481e495b5df093d57d170f6584bf840a7a03
+5f2cc57ca6741cc6e07175c8eae4ceb81c5450d567edcf35305236b23a6825fe518946d4d4d4d8
+a18b49b70485bb147b918527e0df6856cedda6c8024c220d10d11f979c289900a68f9927527a4a
+ac3ac93ca631cc05dd513f693387e5cb8dc54f321fbbea388e3558ba60916d40b8f4e7475db59e
+729515ff910e63c958c48c2cb28a4b4751e5aa7b98a50cbe91635ea71a2a1b508524abb5cca048
+a1aea30dae5308ad887cb4a08f99c891e01bf205aec562d039c08d5e9f94199cc9ad11d7a02816
+eef066514b1168dc5c9353e2e16302f610472db342fa83ef15b9aaebca69e5ddb0cb1ee425fa28
+69095a58c8ae174ffddd3320503fb085cd8e3f6c00b8d0a441b0c3d3a3d42f1c75dad849942157
+8c4859b55b0365b51be99d2da7f11aeb90a4878fc8fb31241982baed696c4d6014f82896c4aebd
+a32722befda8d1ea7be47e9a755d56870ab6462fd7475e13d9186ba11c1f1fff50d7cb6f784248
+b6bfe9313bf8fb4e53e9ab0132797c3ec5af73c15d8883c0255552628fdbb5f9071bd5d71d7cb1
+2493d2df8a406d54e73282a31aeeff4d8e64f8697c16c16b671415911840460ed2e88e4eb25e9d
+cf5caeaa1e78e07fa663b5b21513a1eade2ad09b7793b93ba8a3296459cf8688358ccf08dfc7ea
+fc5cf206f854e1243235c6b7d09eb607beaa7cf9812fdab9e932b244e67b8185ee493fde55c3fc
+b8a32ab8e5403a14f0d26c9f99947ed60d9940c14807feca518f5985886e4d8e346371dd08a647
+8436015c79906e26932ccbeb2371948f4ddb161f6639562c5d7f65de674e11c30c0e964b04d3a0
+776ef8e58727efce2e1069eb25f603a97168d2cf1bb658f5e7ce34bfdc7c410502372984d0b84d
+007b7a44683d07e37fe64e5def8046f55153712340bcb4d0cd93cb1d5cbe1c29270bfc455500b2
+238c21b285342138889179964071be1c8b37e1e6a5a3ed97805c1edc0c630669bb8025c3862515
+fd87cb5a9b3230c7db11d18633b5be544fbfa3dae89cb934901aa2d80ade695c26e22beb62475a
+4058f6834ad7665dd0e454b9b91de6701139428453e6d43670d7a6cca0b4858dc52c5a8a943521
+d516a5ec71bee1a2387a0ef492f0d715b07008015df72c716b5c04de9913fc133d751551e44fce
+aa2e69f022d8207f7dc0ece155304e48dd4126d2d383e3884b4e9fbd6be2e0aa5cfa497e5760a5
+a5808f62f741869e3a518bdeee74d8983f433fcd524a0f972c7a8cb0dd43184c71d254ed52dc4f
+978be757e7ff187ade17574403ec55a331a9e383aaaf631c5392d4fea65c6afd0034c37f6974d4
+f9cfc462d5ea99a9cc55622b8a7b6d75d5ff7af6e034ac05b8a9ea6633821aa8327878fc5120b3
+a348a23784fd457c4888ecb267d97378e31f9a09e062636383f574f3af164bc0156e197e765aeb
+faee19dd48f3900aa6bc48a0a7057f99bac9389d0d7275d2bafb693187acc60c650c18c4d71bb5
+1c6edff18abc3048658425b640042faf36b14d9462e11683b67b512a180ce092968f849b047f8e
+39782acb73403f71bbf52d1562b82cbf24c1991bebb3a228dba726c65a8bc2591e2301b2dcc11d
+878c9fe6b7d456b6ad13ab3a2e8db60f60a181c4b0e1fd45783ec08c6b3640cd0e592cb837afa3
+7ad041eda5dd5659a033edf46eeff25a50ccef19824c85612232e2f291dbe2787260e22cfa36cd
+720e9ccc170bbd8046b7bc590b9c68f20d593a342b86124200848a2a9fe91b4ddd21c0cbe9b222
+0fd173dbd70f438c6b4fe9bce5fd188392256c1e47b0216326ba8277205a2e21cb75fea615fe7c
+67002d6ec890718ae746f8ca02d8a6c9ca55c362e55761cc319ca902eeacf5e0c9f80ec41ec105
+4c974884979d5bf718d532916e5347d3517864cb42cb10072481bdb39a48e5931b108fc35f7b72
+8145d99a8a4566f2c8850e566abb3de62ef1a62a3895fe0ea57ababc57c567f069ff4649a978eb
+eb6a8b08c4238d71517da163415ebef9265dbb7172e924d6fa18db1a01718a64782a29e10e928c
+a77bb9cf74b26cb72790991b10447152b2d7a21c08d9c4ed7e7bd5c0732189b864efe204dbe4be
+742b531cb9d797570a8c6b0b4a5e0dd14f609b24d75b020d11bcbbe1f04534e632cc37b73bd542
+f3bb49e11e645f4365b766b0cb15c1e3a6131c5cc95266c033bbba4aded0dda33600e0049bde5f
+d2faf55ef36643344d3ddba0f5a42385e23e7ca5c78f5a68ed8343bf59e347ca273dd6856fcaf0
+76cd3fd7549ad08b23f7a326592d07637dc90ddb5e4b3bc6e2b44741ba6101fcea43d198235807
+ba85bb555a6b0c72e93e9d5f3949ae51cc8667ed2997b106a98e7f3c787041ce4f35747f7b1ee2
+6b0b6dd1615a68a6040fca25b7996592fb0395e4631a58c2e21eae3fbad9e22e3a5f0a60d3a213
+2b02a99aabed0e981cb3db5d2c459abfecfd70901a1bc33553e07d94b13bab6549c39895e1927d
+911885169f4ffc5d62d66d05e1f979c7a902a6b98c7b42dfc09407cd86d263a4624bccfe78d97b
+223da088ab114d61dacdcc3bf6421fd5099c6a2a45a953e250e1bfe1dcd56c2b02548fa30ada66
+b7f91332f55d8d96914e313b537619e205d33a23e5fbadf80577e83176b2c8d0bb6a5b12cb8379
+b8e64352006e2b0ccc46258b41c4200b33f4a0e1dc80163b346ce693ca83de975fd82525aa5312
+e192c2afb92fd46a35c9c7f050085284a0db54bdd2429d65388fb69148321e6ae8dcec9833f531
+e8822a732fa56d683a20d0d955f69fd83cf7945b559579bd833eb10cedc80b987d76285811af5a
+53e9cd47f7fdfb42f34d1525fe3eaec197c6443685f2501a6bfc2b6fb2162703eb2a59d9ee4ca8
+4dfef05dd7906b85bc2e1a13d087df9dfab856d75f5aa01c3c19aa689367bec9a5e384e2e27b5b
+cdecddbf17c35a95b62795ca6f8166e6616d75857711e1e8e428e1f1d6c89c1e748cf726d7af50
+225b3bb3392ad630f185a2fe1c2c67611477cdcc8f08ae8d90cfa9abe4460399713e8a893e13bf
+e4c5871ec13d8fb38a384c2dbf592b0e0b740a299199f3c570d657b8fae91fcccb050c8095cd79
+b861dc121a67962a83e514d53354ffb487fdebb3f2f238b85108e1c4198e5f2cd22d58c91fe0af
+d5534a117cf56fc1516bc574fad61e8e5d2a13f17b8eb838c38fb314dce972efaf8eae13e25336
+580d47a212fa1b640c8332c2caad737650a084d0d56d3ccf88a517fe6f9c5e8e1425aaa7b9e3db
+b1ce32bae19c71e4efbf9cade1b0076647ffd3e1dcb7a0211baa88946af6d16258b351e8875f69
+8fc5c95eeef07bf1e50c533766ec0e234c409bbbdf2c41181c49b1c95bf4a24136312b5d4b51de
+5f539d100f86737426c69cbfd83b4876fc8a9e07b69fa6197c39585a611143e5ff99a5eff321a0
+6890aebb1ac2e522fa56dafff25889365d6071b609f5d7cf273f61f81046031af419c45c08a310
+37b4cf68e2b0bf241a97ffed94fa8ad33c0598c71a08ee6657d5e17d5926e1c3d8f8f7f54727c6
+8ac648672f776fa4835a4d6828576901bf6472e799644a9072d9e1ab651affc7a124c02ff998ce
+2c97f57fbb49e11d0bce1e8a8c3b90541a86f3ab2b87d00d84b6d0d4d60837f83b14ef447dcdfe
+9628d698fe8a0b8eee445a067c182b4b85cf62cddfe9c508cdd40383668b841f8e3ac62b3d5697
+3d4e2ffd70cfc5aeba5783d057fc8a71d3ed512dfa3553ddef4481553f7727cab5ea16f46a7433
+8fa22ddda250d1299697be97c2b95df5366e2e5f2e8747ac9b0b9c76999a18a5c96cfb69c19ba9
+93423225f141e716863cb63394ba84747d3c38cc2e7b828955a9b5bb1758f0c3c9148e8b3e3f0b
+7ca95d9dfcddf67c1119d9e3d8ebc30547f7bea123504c1a70645719c6f08d1cd25ed1fe798791
+c8773245e1094456bd982699971db13e9a4f61b3286fb9c528f7d1de13cf855ebfacf8feced760
+2d1cfed3bd2ad1e53c88bda7e4d8f38d88daadbbbba0dc5a9efb70587a120dd0b6e805de4dec8d
+06d821a426e7517e512af5d019a8d3e1ca21561ef07be194bf6f050296ecfed8f9e0ca2207b70b
+2fe4a41cd99865ea952a2ec136392a6ec2f651f45cc360ced92a1c3e52c7cec13c102555b5fad6
+d5156afa766f0ce923c4fff30ea2ac59fd2f34804c5f86095cf4acdcc4ca2bcf6c577b211127bd
+88d8d42f0a7fa000362cf698ddb98d5edbf6f4c28ed5f45300da903f9fb9e84dd009f55a48c44f
+53921b7ff9df5891af3502ae6f6071281708b5b291062ac39c5077a66b6a2c819df58be7615284
+dd1bf24f80d0975cf3ec5662ac81dcb94e8dae6da905fdf5d997d1c069156fbb14631c0caf97d0
+7324ce218420bb78d2a34677d5eede8d294de409b764eecf460cb703f8ec81f0afee5ea926194d
+95b98083b29a8209d7599144f0f303cb2892462936dcaba1357305a1f971ad5a4a4d524ae84c33
+b51e004e49140c1f8ed083efd7f57dfd80611f8f1f1df0984304a89475c22cbf8668e3e44b4eed
+c2b4429c919e071040ef3f86bfe3775aa86bff464c778bea92c683813e9284a50ecbc714d51e6a
+8c8a74776de88b20ca2de56c1c8076a518db25ab2ccd79d6275506b592e355a351c14dac4bea7f
+b75937f7547a5fe0834278ad8c501b118bf60e673c8961d6fbe6a9942c0ab349408bb2729347eb
+76b1afbf0ceb6a0d5ebfae583fe7845d0626a2d0b173c4e51f5ee5505635cd59ee52d11d1a024d
+dbfe374359c8ada7fc13b78f836351c4e9eb709bb5ecb13fc48e735f1e222c5f6db604949cc48e
+cc7cb19f1cebf68d76a78b89881d1e6f9adb84fdc0c1390b29abd8b4fd4889dba77a5b34a9ec4d
+37169698b11bb94667d9e9e032ffea7c337be415942bf6c52dc9ccaf37136d9bee84ef9f624402
+0924b4469a733d27013a0c5737e50ef9a73b5b9e4e99e351a44a36e81975c0739c2b77406d7c2c
+57153538deb30a14612b046e6b8053234708c6783fe62d1a74313c4e0bbb2345f93e23e72751b7
+668b886fa166d33c57b74e2e668436e4c114321948503fc039feb875dbeada926d6a50d8a7b48d
+fb617fa93b70963dfcba6463365438431ca8c587e6f64f8fee8212cd7722e82be7104e5ea592bf
+4b5bc2d85eea61087ed21b777fdfeb114193dff9fd4972dae07a8ad0c767c6855d7d17286386b9
+547a17fa21d821331f53fa0fba97fe4cbe476655495e987a691ce5eafa734d943a98191342c91c
+86d5fb9ec4ee6d3312acea4314c1de21a1f5ba3cd3030b8255f7c59cbad6901add4725b4aaf056
+9e2e00e6acc5dc68bb2692b48a8c9697c450ec6d823eb559ea3a0d2f5aedbbaea7ca93921de214
+32b9e75e5656876c3465df7fa419ff87eac6b1c4ae7d2d3cc25cb6e989aa01ee07df4b8d9264ad
+0229985b344fdf1fc080a0ad5237a2f486c07caba716f660f326903f14814aaa1a9d95416fbeea
+99d24a1980c2409564bb274ebec4cc219dfaebe59d3ca242f9723cbf8774252bd49fc9501a1cf0
+996f7f1a33ba952f387c834857c84489710d6cf404252b98679eb92742b8ad0d69d3a79081cd1f
+79de5d9cd4d8005bf4e8b46ca1410d08162047f36657ae6aecaf3a177a62465cf214d38d6efccb
+9859fd93ab8a7965522fa13ff30d0554a3b14a5fbc603cd8d9a6bd665224f57696a585c96a5db3
+c2ed658d338cb51b2c5fd46a19c50dd0edf00270cd85baa56335dcacbc3f46a01f9b572ac23422
+b9242fdbc2308a6784899e3736df4df30ebcc70542e3afad4a873434ba54f03fc77c9b2f1f63df
+509ea505d13283c15070c76a6c274e4b600dbb9ba0bd3846e9972ebb66ca1f22e14cdb05fca1fb
+7d447bc084a2541422eb5532f875d1f8f30684a18690c8ded41acd313d783c2bc3142f947b1dce
+2d780fc2934b9fe4615b333609648ac54e8ef2eb7b40662d18d51be8fe47bbcf8d443db9e47c46
+bcbda07cfaedd29e388776c9532bc7f3f9b9e70665e08015cb494b34bebb4632f4d7e488fc9bb9
+7add08a6477709c769275d5ccef8b3703c2bf554abc57b8187f958cf2fdb9aa5fb0ea4b1f7cc88
+214ec435bdef2824fb8209b16a9b46c25efffa9391d387321b2a4a88c230dd4245bfcbfd8a9a9b
+3400dc817f80efc6bcd2a0538d69ad64e266dbc47a19801e8748c577b2dd7a9411b6207cb06c88
+d23ec992e721f47ca7ec3d7605e20ff47456c5fb9f92bad54ad6bb320145647270ea1045ea8fc0
+de95a1725c0703e4b93e79d10cd1c1a8f964ca4790d4960773680808a0440348cf4a51747bd5b6
+77fd082f4afb9c0226470b3d1619bce500f78a25f229f443b67c8909099346d2897d2d8afa0c0c
+27408fee94bdb3ae9f5c6f92cf2bfbc4b1d57993b0601ad84f598f64f293431aa8e948e468cda3
+3e3ea837d569a2da769a1ef1bcf03323228b622e3010d642c3e29adfe0e4007f108f467c066538
+c2f1d1e7f0ff604123d830ab0aca688409cd21222ad7e0721d9b28896bb2b826fcb9a6ba9d59a9
+d72aa4e4f2bf352effed45c30c66da35d8060b91b428bde367d124f502f8d1bab3e6cbcdd5b29f
+faeee9367a263f4ebb13aa7306a5af6ee380ffb90bf3e7b1d0f320aa8c53b05370831d36edea02
+595e57131fedd974152b68812552bfe5c23226c25e09238f2420262a6bd8c8c86d2f38e33e3d00
+360a381e2e49a27067a587bd803b0248e81325a66f4ce68bdb7e02118aaa25fc998752d9d6861d
+185fe08928cbb62fb46f1640ceca9d1580b695c39015eb5dd5b01c682f495c8d60b37a148ce5d4
+f8fe92c58b9511dd656c340b3108f25dc347ae79e3e09cf368fc67819b4b832fc15fa16a144bbd
+0543872feba04c16025bded4df2322fba22de2affb0d384bf71b25572f9a3f90078ae7f6b4b742
+d3611031abec466f56a4614ed8ff8d7cd85944fc96d0e547fa9dfdfd78f3d6231cc8db73519e9e
+7dc269f7880a597898dd9dfc45aee111e7516ddb4734da926210f711968d084e7067c584c97fdb
+a23c67a250604d6278e9f2240730a0207fd3d17ec52ab385ea99e8406684e775d6302bda82c46e
+560b2d1f378d8b3771e2dc2ce0fe5230dd458cff5b1619132a0b6f65be4ffec813191f24cd65aa
+20f2c4a267b85e2afd19526168b60b40caf5994c5d45cc1eed0e05a233dbe4ff5923031e7bcaaf
+3a0925e68a0e89c64dfadf602ea49cbe01f3c16c9942370cbb4f7cc2bd9496e28312e8842279b0
+2de1a2c96c256084d6da1951bee070a615ac8872f2f238208dac07512ff277dc4733e3d74fa623
+97eb2b24812c848afa06a54c5bdc8da9877793a4a50057b21e4a920cfba0a48b6d311ca8294cfb
+b9cc28854409cd3a2eb3b6f55c57fdb352251881b91acad9866fe03026231d98a3ebe6bf9d48a9
+cdb791a1ca9d765a8d975c7f45c1ab5931b01460d37318f0803ee1dc3c3f14a2301af4b4057b5f
+64b417f8e4ba72de85e90083e3453e4be4b4d7d9494385e98316c88beefa92c5987e2e5b66eed4
+35dff71b1463f8e915fecdcdb5731958f78f9ab8869ebe8c8fd9b311677c8b2ad55b6fcf052c1f
+976b0446a60f1584f4e3c63e3b778b76c8dc5c743037caf2e9b0f56d2224fa56b0a1d80c0b543b
+6fa9ad6a917ae8c2ef52728db8dbb85d8bfeff616d6c0517dbafcb56614d01adee5913d53dc53b
+23a6993bc93d7bb6f7c15b6ccb0836be28847ad88ca95fdbc36c97ae9e0b6a553966de21f4bae2
+007f12adbbafd83e00ffaecb80a4b5643d9b7e30f39ec79011391681dc0fe69dd8610e9018e449
+c84fb4a9760932f11bb8d4454554e52bc8dff43a5cc0f661694aea08440d9a23c65d6dcddd0030
+79a510fe95351142c59ccf5c16748114607a0a86c523c36ee2434a6fb2d3396b24705f824c495c
+6d0ba1c7479a88d82172c5e283f5dda4ed061c9f7118c704c67de72985041253e4df6c8b423d9e
+b885cf111e77d94657e597ff12cb2cbbab6fdf8b6f6adb91043ef00e1f8d6087ff8cc32c4d3183
+929ce4307cba11c05b6ad57ca79998ef32f04811db79605500900d069a3e731aa8cc0dcc4e52d6
+e261876517087f5f948296999798c718d0269e68c562bdd940652868e3d820653d34d6f93879ed
+ba6485c101be746cd9270154a976ba4202f844728714a3ac7375efcfb6a99eaff26a47d7cc3ac6
+07a687fa54aa29b830d5a3e4cd9af417c1a6073c48189aafe33cef42a3dcb62eebc587ab7f9d3a
+03efd3724badb50db4535cdf3834b8179d912aa88c9515c88d7bd2a88ab055430e6b3d106760ea
+d3460ebfa736e90b8a022ec89506b72d6e85af333e7f29098787d96d89d875483a1a7f5b5320b3
+dd3d509e0db6947acc610a311f3dfa75cfa6ead722380b85ef8221194afef7e1071f912646a178
+05ca26d516a30fe86df14b778188c576744c72f0d9826d7f1e50bc9d597217dc32f07a663e50d8
+fe49510e35c4f7527105a526489e2f32e257bcc3b956e6ce77f543595a3adde9d9162c5cd63da0
+0b35cea785c6a529039e985ae5e3bb876fe105068fe449f014a3287378c9e41b8140a112e18d27
+42b3f30c9d7caa718914f2d8c8f0b147051be6a86b01230ef38353333dee56d266ed8003e307e7
+0ca5162a080b89569800c1ee5203b19145e08b1ab97379ed5d7dfff9f0a41efc52ef51eb697b14
+e26fdd974645665a8560763c02896ac7a39651991e0c7b9f905fdda5f1e88df1d8bceaf68a9c74
+ec69f8f5c2165b139697869d64a20842ac77865702779ff2eba76224a365d9a5443b1b4f4ee11d
+0cbb2295e2372f4b7ee2653bc1225f005f18fd3a578ac75dce883f2d303aea6b40a99b310fe57f
+a8fab6ae4bbccd9487cb86689ad45dd77c7592758d2eb86323afbce6e65140c6ab20abab04550f
+47b37f9382a365820639c91ccf79a6d8e10568e6a1e9f94dc84e4690c302bd11509a59f3ae3431
+5b46ef06eec2649610f943f322c668ceb82f1172e8c6c8670aeb148e00c236a67f918aaf63e248
+e08dc83a3d4ac67b3416b2404144ecbd06411c7ba89b6298c2651191b06f159bbbe9a132579094
+3b44dc05bf9403ddf626afc7620472495f1936ded112448e3421e895dff884d14bfed989fecd65
+69fac59adcdfa75386dda947e50d838ba528fd90c80245839f1b605a0ec742c5186f78ce942d14
+e03c43c283a97827d2af5b864fcfe358c14ec759590ddf34277cdbe78852fa1dfc94b389bcf7e9
+e0c3e520c142925b88ea5302ac8ecead36454fa77f027f6cdb4639ae5279c188a650885e4dc696
+58c53efda87f0de9ea65dfe91b5ae814191f5d595e3161df3cbb0ba7a088277c96ac165aa03bd4
+b120eb460b4d6c03b7c248e4c9f6c074ae267ffbd679b3d4d4d2fe0927b49d2b8946e67f690477
+fa983761992cc451b5c5456d4aa23e3b732405d512ca3173725437030edb95ccd63b2368b9091c
+4fd4b5e9e26c70b028ffc2b434a0ab29d1f25c61ce30014c534b43a4be14488ccda3daa1e968ee
+4ec562cd6af153137676f264b3f288dfbc38390b8b1dbf59c0987fccdb1fffc3fc7f09bf6af381
+3ed713c8ff9807ab121d7d80bd02ea1d9ffa4270ce46f97dd10cf6ca7e954705e95da8aa9d8750
+55ad13868e7b03eb464778f35db755adf977f8b0b52c1a192a0f259dc8b20b47378259e8de23b4
+ae10f280d6ba0b38b49480d8518f86539262beaef7ecfdaa1f9cbf0202adca02c2c98d02acf9e8
+f37e2f835167ffae77a03ade439e129583b9c94830c6596f95010b062db9a1d527baa651057cb0
+ba6b7f9b34efbcc86a88200a58f71e641ccef785e3a6ed7969c19956e8f70392cdf72280db2f6e
+3bc24ab74ffb7c6e300939808d5dcb13ccc61fcee7c772cabb81b09d1c40aa9f4158f79ee383b6
+a85fe11c3bb2f2ffa1495493978223f1346256e2a53629ad117286383dc53f063ca75bb641dcf3
+863ce8ed6e7148984b7282bdc153e1a36519fb1944be728aab8f8d1754ac93219d38b2b7b65074
+350da6dad657d2fab457dad3cf25a187d5894866186c17a1f05df46c36d88bf0253cd2270a13ff
+b54f4feeb8de471ad18a97a745b43a81fb5f6be1d406efe9aaa6a96caf45a336b6afd6ccd09c72
+cbd3ca8f56a54df10d0d0aa9e69ded4f63e682748c504b28cf862a50c60f803157c589ce3de6b2
+e2ba19d8d7c0eb969285adc37ea18fc40502bce90b5e8bcdf0a4d8951bb0e6c6f245143362b299
+6810d2a3cfdd2d4266d3a73965c1844095c47bfb9b3321f40121e848daf85fdbee98c8ee858175
+1c4a3fbe192da8c25afb41a0b107c80a92860b6e62f875bba9e474804eb20e516e8aff2e3f90b5
+e871d06dc7825c82a9186b9ab815cbe800238ef2f2cdc005971c7f0663ea3386a657bc57ec6740
+ae1a9b10a413fc06480d2845302590f38c5db57582118d304d530bcd7ebe9c38ffc8d0ad52ee1a
+1c5b01666e5ceb3b1c743a0aa9be153ae959d42d4080a2a8e121f3d5ffbe2d3388f9c2a370b766
+e89f002a3c7acc5c1b3f983a6b36b24270de1f3e4a70efcc586c2770e80a07ad6fb9e76235867d
+5cd9e5cea887ffc56f020cee3dacb063c5cf1c65cf93ad15cb12fbe73b2214991bda821069272a
+6ae455b13c76f2c6013733ac20faf9fe65bbc0886174f22cd608a86347299c35061f34eb6eec11
+cba06c2cf8ddbd2aed74819d20c489aa2e3ecf62335596058d80c471fe2405773efa3e350a561a
+d057caba4e2197c09d383de1b9b40401b16528e47a75f0da4be251dd4fd87aa21ad05f7b68423e
+9f6a58ad287bd4e0cfa9bb0b031aad0ea5b01d2220ce02ffa3996187c823c9c08fc6a18444df4c
+8c12271f94c0481141335b326ca475d96f399fcb8c9888164933517cdb9a568ffb9728858d06a5
+e605301526e8afd188ee5985ac7df0fc8b65b785071b2fe841da1985ea85310b702086e2fe68e4
+ecbfc1fa2afdab64aaa3b83abdeec9efef7f6a91f7c7ea3d344b7a956660ce59c62b36a12708ad
+cb3a387070b0292610bd70888ce521333ad75c807e736fc6ca57b008324d8ae9fff396a3e6c37e
+ad9d390b9d293bb7430e78aded6fac09cd88b4f5b446bffcbfc52af9ac9dc7d7e80de77a37d880
+ddfaed0bc5bda5855aa0df108040fa5b9abbcecff353ca2b0a1fbf490cc62261c329c54777ddae
+8a767687b3fc0fc540c551a9c82656f7d54604938e2db65dfa9049d127ce53bad328e6282787a7
+f448d78c392a2cc9a420a0932b1862160241216a1f25af929b5268f5ec83f908d0f72120334bc9
+40c5182542f5c4c0838b8d797205e9680683772a67c6a3a8979c604466415285e0307f3a28f9c6
+44f3de3d26de23facf3c40aba21fc0fdea2049f966a88ef103b9bdd526401951c5314f634dec61
+14392b2f37fd26864f5488a939023629ec8a653d849dd6379a5f7708d65d9ce0574aaa5fe640c3
+a63850441368898046b66d3ebdf83fe47ecbb38ef3d5560271221267943a37569fe58108584c65
+dacbc3f13d7438fa597acb3c8f14456cf06fe7f15e872ff63a2c8c63a178725654abca1da344c5
+d3ad7ecf294a2a16d1b01bd6400fcc195c3ecdbebe072c2ccb03528183b06664b46d1a40459955
+8ba2968ddba5d1772c89ca9c6f5d276884cbebaff43982a4b19ba59cf85d4c3b0cd6b56e804a7b
+bec41c51b23c6a5ea4d6a2e9c43eb8fbcd99e9634ce20336f80eaf585195ba0f3ab7d8b89bc5c8
+3da46732d16ba6cd60e59b7f78205024d0f62f8fb67d20e08f0488fa7a54b4eacc23ddd466d23a
+f71baed473e84ac00f876298230c30e3c3ab3ed00a2790d3949d85a782718eb8bdb43518bc2cd6
+0edfb3b3b43ab19d7ab24384ba9c4265e89d6e31e95c29eb772351ba51d9cb1ab73aec5e4c6400
+c10c761de194714d9233d06e3671346fb7f549d17f80efef6f21f6a69c859010f2a9fee4159c90
+061f0f081d0105c23be043ad73dd8ffee47696bafc0cde5fb7d07cb62cc0e215ce965a662a477a
+3af683a528441bf4dcda61de3b3fc90737974422c4df8b56c10d3cd2e090ce356984c420ccfc8a
+b0ce68a9c12d133d1f3bb75a5b23a58ede27436cc76d96f20a4900f5dfe1389a8535c4a420f09b
+883d11f438dd580c06a7dcd556d3fa5bda5e4d35e0b30f3fd344cce8fb5605f25c592bc672c205
+61d829e49271d0eaaa2556ed8fc60f96da260a25d9c812d31312fdbd0e6d00845fe2ee70e89a7b
+dbfbac07a20dadac6034fecbec724aa21a3081aefe8a4d8d36b2480845dde4847ef0dc7cc270a7
+a38c595e077078bf9650c167d9fa0040f714ea953ff3fe7d903208eee0dd5e0a9fa3780989cfa7
+f47e31f4c9f695cddddafa9dd6b3963dc28641a88c42c6b8ef5f47fe20a48eb91601f87401cbdd
+7b6e2d9f92c88429e4640e414b9e52f471205830694cf862fd330ebba51df331375bfa4814b8f4
+5cdaee08c33ad29c43d03202fddf894ec2302ad7c4753473e89fdc4f64d7c583ab9d1b101eb529
+81288684acc8b211359378861894e467f68d25ca5115b38521a6a8b8d955c2f3128384683f5623
+b9ee79c8ad0c63c6348b1134f623fe53885348dc99116c1224ee53a1be0b7b91120f6e136721d0
+d4587054f451e5f7c480e87490789ae1fdce0152c8a4cc2a05c0278395938d798c2a85c9b8e958
+4c1e9a05a9c20723ba44dfc9a50f63fc554703d99ef15d87784b9ac49bcf4b5d70a928ebe46a46
+b2bf96c8ecb7d22b7bf2b0154f2fdbaaacb0229dd52c5759123d81eafb723f91afc0d65572a966
+24a09a7f85d055d87bf3568c42ec12090e3205dcf515dd68776ce055ecef6cf97a9dd83c57c6a5
+f8ea7039c5b03b0727e9288811ddc0057221e39df7d238e02777f90bec05c3b1b9220c89df8c74
+71d9eb8fa53c51280be9a7ad18b437b241c113b812ab1dabe2d652cb558155355023166411a611
+da3cc33df384cd3ebf2284a4f02e94f2a8d1394e00969150b0b148e0c800dca007bd36c9355ff7
+69cfa0d04bbdef74bb55ceeff1ca96f54d812013acb3236a7e2368f6935ad46d91b98dfb53b84a
+11d94cd31cb8519e68bd17cfb3b6e477c500a7dead963d4d3c005389dec6c4f89bce094d2bf7c0
+668bc2646e3e2a88eb7d47ed7a3b9af54c51cdfb93d7123b7c1f115825bf3968c8349267bea1e0
+8bf14e91bb2a5cfc9df08aa088c9420c4e716050d27a5508db4d2d4695a034853dcbf4e9247490
+0823be94b36fbe28c17116fb1c1f037272ca2ab476238286a5ef4693c4cfbeaf3643963581a94b
+689b02e2d40285060bfbe73ab7a8bd9d98d6df95bf1e9ffcb9d8e35864160d6b29924685149134
+84578fc4ed3105c22ed6c2db19cb9188c99efb618dc0a489a21691d05fbfe60cfdff3bbfee01ac
+58ed0f96d5722988b17383c10f6d958397e150deaeac04223832abf1f44bfaf834597019c727f1
+77b2ed5cd4bbe0c4c18fcff67333c87a1b46310e0a4fc8bca9688521e90bcc945b3c99a80e76cf
+38aa5b425aa33d22dc8c38ab373ec7e2e8a18c0af832ec547f72d0719cd49b1c2972aabb29551f
+9fa6524b97c08b9cdfb04fe40e6159622499f26c0932b41e07616b92b76493e65a39ed06942274
+9f599072e81359d8c14d0266d273ae392e2983e74671aac797d3715ff2936be78e90fdea108d49
+64c7fd5e57b0d018d421d92cbbede096e164e7ff206a5ee9b96131f77c707098bb898bad217491
+9e970c46fb9a72c3640c820cd9116ed4736ae72e9710bc9f42153a89fbb6ee8adb071fba6ccd44
+a5b4bc2dac5b65505165cbe48b65add7470d0f37e057d35f19e325a04afb572ea7cdb4a7c26847
+118187792d7dbf679222ab53e0ec4142768a1b4bdead6d954dd6715412eef57dd0e5cf66566663
+00db857f9c0df82ad98cb40c49202d5f45726bb1e0d39dc3ee53518388c17d004e59b9cb2253e1
+abeff8858aaec3669b07501748ab26ed83ed496e2081077a033b01f3b878b9ed35c488e876f990
+70bdb1ebc4c4e8559aa18e68aa798af4af7c807bafe09a242dfc81d935bcba46618fa0d1cabeec
+893573694efd258165a4456896ffc9ef7372a7028342d5da1fbb731e476b372cc0e85619d0e0c7
+0bfa331921614d1b091041285046af3949f7e3fd8b91985d68cfd7ad774be22b0ef9787064d6f9
+fb0330d347c79b1337500b062d8a4da5a6d2b21c7cb49529878f7e583ce387473514adfc52455f
+32d740c4f795d48ecc8a0dfb297225f11941b0469220eb56453ecbc27ccee5476b68b436b7eb4b
+e616a0d5a948ab40308c79328e7f164d7e241c98acffa156a535b0331e100c51fccba9e8bb5c8e
+dbf3638d8e53f2449a3833869e7441a9b78f1902057c092df2a73a69a1dca4299598ba481d09fe
+914d1b2b172c3d98d953b78c5b3d7ecba214ae1f07854fb99434e89237d0a33fbb797dcc73314b
+029329adfd5d2550200c53e98ec663458c94bca7d82a6745f4aca46819a8c93f9332b467d4cf5b
+f656f8ce9eb91dde8bc5512e227fe758ef05c22be5e7b6e3ea4dee33f9dbee49a265de6a2a5110
+5e2815e6c0f7e7e74dad274e14259a48571c485def55334b6935797e2013db991f4f302897784b
+3910a8b31f2306cc5b2e5b53b706e24347eb7ae07bf86cdf7b0806684c643b49ab9b99f7782c70
+a03aeacb67ac9a4e18c0bf5d5b7acf9086091ae0de58ca406ecb4f8dea1deafb0f99ef2c2bf15c
+c78255ab8e97e580f2377620ad08734723551539c52dedaae7b41929611fb7ded7e9aae85b0fdf
+ad5d4c423bbb05651987eb0729b02b8652c02a84581c976e6fb8549053963643b8f34d8d25fffd
+8a4e902547705e8b1c63980af8034c762bba800695bc910a9d3de173f0fca19ad27fc98102eb6a
+16588ceee0dc9c5defb401cc8f6347566581323ee3938ead10b23399c60886e1167090d9e89686
+fa2498c96bda4e219f28a9c1067da94f499fc1347f2324946881d4a179b0d1563e7e339f45604b
+33d5ac9fea3ed64f25a5d920ebd8454e798a35fd9a0b1a315d7b0af49d104ba1f89fd50d12f468
+6bd65dbebc2c9c99be09d7bbd1486ee6474b87986c309b75a4c37f78e14af97cc97b471e9fae99
+91497a922907e797322d8dc3d702fa111e64db464dbcbee9c842a4d3f0aae1403051115e894712
+3c8464be34db7e4c54d47c32400941983073a07c705e84f4b75d1193dd79617750d4852a040593
+f1e7cfcf279edc74dfc881c3a9cf853821782178bf6e2aea6543631c3f0d4ff695846c068d1b07
+06575b8eadced4c83639a9654e8b6b79fb40960952630da4459bc91ccb79358f55e42add176adf
+fe0121344e917034e36ae813f4da37611638e894eb879f8e32ef44834c6d68fe5762091c4a5b51
+9320fe11b2a16adf4d2f404ce4aae27076a21602a413514940e48990b3686b11288a51130f223e
+6a0cc26e766b815cae8ab2590635b7c11673b2efd1e2c5175e009c700aafa8f9cc52eaa19fec1f
+df7ef88482cf7d323ce2ecbd9ab3486dd31f00807d62c89770bbb52b2966f9bfc9ece6ef39e776
+34052ac72402ca313f30ce2b5eedd67d86797fe9e74c2472a7f794c7d4722c5b91b5defa6138fc
+7d0bb79e520ceef7db50301065e1fdbbd22bb851810d55d5bee1657c8ede90dfe5998c80fad9a2
+65f84d5d47407f10f12f7d240aa8271097fc860c35b844bc9a980e132cf9dc77830524d7adae49
+5a2a25d5a813d15ac65102154e1051a73bfca300164193de10dda5093dc8826fc44dc07fdbef7b
+089aa9ae9db022ea113b042d21ce273e8a91f60593a778b0de6b1afaab45e8853286990b7b78a8
+0a0d90e0a7a7bc2be4c47c31158ab8a86297f7d142d0e8d878f1a014d0a206788f2b92a99ab2ea
+9e99f487d247e119c7660d9f31b43be91c6d804f5ce91878bb246520b4393b876e9b06b39f7036
+68bcf8a88444f52624bf6a70efc0fbf28b2747791e4a04baa725927203bc1c659163470d85db4b
+c02b3a76f936628a48c7b90069b028f6bf10d9380a4aac6177ee27bad040c6676e85478807c3e1
+4616e85a6ae7eece36b526af5e90dde6920e0b85aa6ba6e3a1df5977e659fe30a271719757f1a2
+345ce7c08a24a5e2c8460db47ff1bd66d2fb55466dde86123582f655b10a7626414a7c82a41028
+9c1d6e090689874784031fc55078ef862c7ae4d27682f15777f45b9ef84074f350f57d708424ed
+597754695a4c9603c859d7bcb3f24956da4a85053acc2474d56ea9d08fc5510aa7399ffdd54bdd
+2f8e6f8284e3d1a2c8b8f103d9d2418333cdb752f3bc29526473596d8a34e260b497eaa36fd136
+40768b849e9385bc4f20eab5e3d7a0aa7982e14cbca59fd9402c139685e163cd774b33de2fde50
+03fd50c9f775d56494cbb277554b1180b4e83aa5306d95c0fa5bf2a1d38ab26a820e04c1eead42
+d05bb4e64767de6b0879b16a9d98e0b087b698901cca4b5f3694d820548b4f0ec0e93537b9c70f
+09530ae177ff152d480195d17216418027968fc92d3f463370a49133fb3956a8d36e1d5184f716
+f1014185a520bb1815c026bbe820e843608def3a08f051820e065070fd4d9f16cd86c236f4425c
+2e6d93cfcb448da1d72798223715d93c9f3c6441b4df332ca5e3b1cd5ea22d4c1e82536ed170ae
+964a3945d8f42c626be30e0183fca1b1b89bb1d748fba1901611cfb272afd4acce326491d64059
+3ce6524c5b4533b6dc6312410499b3378983bbf3a0f84f2c8b2749661cde6521332cb7a9639c33
+6c311d8425b18d5d84d63d719af1b3210961c324f206e923ec12acfe1a873c373709c08a368b46
+a22bc54f9d7ba4370d1a52845aaa3fca35b7fa56437e07d796f4e1dc7fc7d93d2d3153a2f9f20c
+92e257ea85ad823493e713e3419af0e29202b71096f8ec3e86ebf662c7b0589946a6d47b870c15
+2d8208f2465d908e656be75d1ce9e2cd6aba43c9913edb8a05884e26c1a54351918a99950e666f
+907bad03b7484c2d44adb95c4b5896ca7b58cd567f3e32b4d7b7c7d3c02792ee71481dce542854
+2aa131140a45388f8cda63317b94a177e7c9b6c0115c6d7e1a2064c117b8cf89a430d7c3d779db
+c8e3043f78cb6631d39d9109d7947366f5807cda1751eb8685b2f7bdc2d8fed8bfdb270079048a
+99d2571d9b5356cee8c9afc852d0783df2d28587c7528541c21c45444845989b3f0fe8645baab1
+b5f94b35937a21ea2d38d44af803672ebcd0e625eb029c1ed7f69589c14819593f6409eac480e4
+b25bac17362654485bc009860134bedc5848a3bb481d40e3f16540d567de4bade4b196de9e61c5
+fd7ef717f74a3155d441fe3075260e796957de27df4db2bc8a19bb2ef8e46ee46d4e921be8ca66
+bf028256cd8e22173658163a17f87be32764854e62904c0cb95e2aa83517fe5346bbb27f2b4461
+3d6ac97264eb9fb21aae536b55a8fce813e713adc6f21a885480176cdaca3bc49caa5c5e2f50dd
+043a43a2e7860e448f27d32113495a6ebdcefd816913b744504a13a58940e576479bcab6827730
+35661fa016aded29f9604c3f7bf02fcd2f52d4a3fffea8af35574664ae0a3807bbed36ea473e8a
+c134b6ffb7ac533f672ce90c9c1a5a67ae12ea919e93c1e108a4377f9f528b7c3fc72341359f17
+3c62c01281ddca09105c2aa5788d9a77fd6b341c775173e1a0b0f509a3ea2efc197aeb289cd56f
+ca068a17359144729404ff0b45f39ff0fb5003d4d310e335a36f2238c2d1d149e236cfd97dddc7
+240bb6db9d3fbb88a68cffc98df8cd6ec0705fed7341bdb8c2f50c4e8bd600d07d8a9f67c7875c
+ecfe8edbb2baec16644c9f5bf5a19e4844bafc3796ad85cfe536e56a20d27d6f630d0a3df28486
+07637e580eaf0680672778a30a39aa1477c794ae65e3582dad96f79205472ad5fe3f1f07873f10
+94be91c6f4d292301af3e28f3a4c054b9d950bcbbdb3cc4ddc1f3637be26d41ccf9ad81a401545
+24200e9f471e91fd69ebab316d8a62f9302c24a90f20cea8ede580291911a9ff594b047bf056a9
+d38b3aefb10d3f63c871e80ee833df2fd6c499e77630b7133d0a5fcd52e6bf9bf3098535d75d4b
+1f2268cff0acbcf63f3487fa3ed27a9b02e012b14910e51fb6118c9837826d3bdcb61efe28f830
+bed36e49701e4bb516d30b883ee21d8ed7f5c6f3da635c8a5136ec098bff50c0ea369223465fdf
+fa2b6a26a7abdab3a2ffb0ff3302d65bde4495a90408f84f7f40c0667c68e978e1a8910606700d
+1ab8e04bce992ffad808777d224c27e34857ba6ed9751e21394b1f4c40629a28118040d37f1f32
+8822c37f12f3e60551492838881b47df7e85039ba68b11c3385bc56a4f67963e82fe9aa01193c4
+9f4798cebfa037335d3369d34fb2399dae71df2a37e836c282e033556a55e4d24c7b435415dce2
+ad6c55e256c8e6ec50f5760d85db1cfca5ff24cb30478135a0f0ed6d8b38acdc17ba8b706e0f53
+56ad421c6218c453a9d9c1bd033f047213aec0dc5bc688c285e0b92cd3bfdec06eb584a2a68fd9
+830367d97be71bb21ca2b13acf3fc3b0c75855ae4e6168c753142a07588cee426782462e7a9cba
+94db132c75919ebc140affce06020d0f98eb13b34605f4ee24ff1515def6a234e78ab55cd88ab0
+11fdfd11b254da5a78080c66022b74b5e40ed85c8d32ac6a4e15ee88cfac40193fae0b8b0eadca
+d11d221177ce51770377d6859d5d5e7a03588951142a28319378a4666fa2755739e15480bc1587
+a89244f0cf3b224e97bcd0e492161a64a935a8b5e16f608052583ca789747e53110cfd79021944
+90a4c13eeae7046981315392deb905cd02c16dba7a2b4df557ee59e6685242f112a660aee7ff3f
+1e11b844173f1a3f1424fad062ead1bb4b108b223ffb73bd2c99763c2ea697227e622df0b5017a
+7bcb713a1378cf79b391841755519bb9b7200e03bdb48b707eded071fe97a72dbc788afb0bbddf
+00f9fe49e38fc642e83d6005317670332ef73c279e2ab4f425b6660dc1a965513d25b9264e3890
+a995ffa309e0fee780e037b24c4ad7d133ab99442604d769c6c92f61b10d1cd452b95049764973
+45c76dd2ee38093666513f32fa3401dbd83f280684a901bc87f46b2dd0ce7f613b1009ba5eee1d
+c26850e0d3d6d1e0aaa5c6b43120c20317595e43f7c0f5b440fb9a7cf38432b20378d221a48dfa
+6df603d9a6a362badf76656e6a870690b23c28ee10ac0eb0a313b2596f80b3211185ea110b7fb7
+d10cdf60a38020cc90c282d68d5c91781fe7bb8f603051a7765029b7833d4dee2404dcbc44b23a
+9b11c12af8ede96e89c12937c57efa742cfa4808cb7fccc6640df6c398a73d0d75a68fefcbc7fc
+09f9fdb79949460c75d652227e293ace5c2c1b5f1c943a02f81d8fa33b7a1c142d22499315ba06
+3b137de11425ea1e5697a89a6045a974e591706fdd3005ade50353c7ea6ee693ff1bc4555a8eef
+3c553b55f01777a65d53650228c5a195c586c79701bb359959fbee9525cead7614f3c96d945e7a
+69478b733c5a0abb6a29c48a14780acca71c9bb8991f8e4681c0a06c98a8e175a0242159e1b497
+24cdc9a453019df489fbff7196f7a4ae05ef1300aff904861dd90e4558b2309f04407cb491d695
+5c4d0bbb1537a0eca91646478075e259ee1d34345c5031bf269c1ac302de8f745516f1ddabc1dd
+c769c67c55463df538beb21b5655b41e62bb991e61a8658b141c5cad4a248c60aff95e86efa543
+3064207faceed85f655248ca68cef1e6c128a3c289bd0f4661097c9ff953b469a6a6ad0bd2c2a1
+c9903aba5ebe3405715fbdc44a9909b7ea30aeea954050d510221e35a60a99ec49710d51489963
+de5bfb2eed81cfbc92d9a33cc58f53516ecd13d631d2ac99c2453a279a44295e29b177a61b5984
+265ab4aa24a20414d52b0d7142fa0ac8fca9851fb1723fd9abb32d2e1fc3bbed168d0a58b62191
+94fcb800090eb7cf48a49f569dfc7e50445207920093ce7363d63d8d1631730421566ae54a27db
+df01531e3dcc99e7be6398316ceb329f51e65f9effa100218cce6d62dcca6abbaf2a5dca560db5
+b9ff4f500d11b15c80a28ffeed1e04e2eaa56ab95f55535b69bbd06be0b2627d42e07858edece4
+0c10d7d6a30d8dd70f7b4c81f576f276dd4e39bad3d97b8ce4a18114892a0dc7cce3b5cd0b4a8a
+b515da91b061d40eaee1b44bebd0412680b0806c27882a92843c0ec7b62bf18399ec680f3d129d
+ccb2278929bbbdb97149aa09127417ccb9e81c9ea891c64726580aede779b7ce169c4f391c556b
+7fcacc91004cd95724ae6c165a39cb2f0f2910024a95e855499ac3a5e4729181cc717bf29a19d3
+813bb3ee29da78461bb8b25a2a619356fcfc0ec8ae4e0e351c6b45fb1b62a3b6f36d2f45f14810
+1d997b01c5167239eaf30047bfe08a2ff856838545f542125ab1d2b29baba4fed0e9935d114b2b
+2dd8585289081ff4902bf22035e97d15f17fff2f351dab9b84dab00ca62d8a27fb51b9de9ed1e5
+bf5e56ace90957c2c70337ce02ac2d10cc726b74e8cb398e76690ef3a036282adea52d8ee1b1d3
+f8031ebd2a6c58b38795cc31f78344747a823799f5fe864df6a3b931abb250a5e410f1d7ff4a51
+99b53a3f3839c8b39126e617cbc1d0cabbb19fdd7430fd06c78bb93e862d17dd79913125c191fe
+6f96527001a69e0147edd75b87785177b85038f3254d3fc0935c5fc7129ab533181a4e3ffaff38
+a39ab6d69594db4a5e69bbf682d7a798ae812fc6b99802b1d90bc4dca19345ed81a7b0cebc375f
+48c727a1d4766a920929ca6e748faf5f1211afc24fc14174544327edf0e08f7f09ec07a1eef13d
+0eaa27d7e71a6c2afa7a9cfce22f2ece408e6e2c07e9c3049298b7371973ee143bcdb050a1f69c
+0493b82c69629ff53405435a09c1257cfd063e80736974ac94a0e6689b034ac5d48972fe2ea918
+1353199aa6d3a22389e83883118cd322da1dec2ee346d7e1e0fffadede5fb46f582682153b4fa4
+1b75ff1b97eb70de461bfe15a1fccfeb7ed1256df4cf20328415b22067f13ca4880f53267108b8
+a38389082f505690bb72417628793169e9fd628b806d89e7739684c8f5e68e8552db877f6a25f3
+95e2f702339470941c50e996654c850d4e164007a384477ab93b40ae0781b5191dbb73a3af9ff7
+d7ea5afa407900df45fe22c3d95efb995df0f5b1f24810966242774a0e978d7a40b4468753c846
+0dfdf5f9ef392f08d070cab872ffdd144f9c0718f02ef8751ba554ef5d744f33e1eec0556d9ded
+70e34eb3db174981bce69330643f5008a6db8f3d176a1bbef6499feca8768874811afde46ad423
+19e878c94afd2daaebe25697e1e1d81931c9152e85e6fabdda24806f0d6c6f0ea639cd14f08238
+ad01c6655297e7a46f011dd7e11f824ac2e0b67451d59f8b0544fe1f53798927a8ba462d417506
+19f236baf5211604ebd103d5e1fe9508ff787526a384064b29edc632dbf3a835dca6cb53340a40
+54b02e8a4019b215b838f8bab07ded8d3fb7adff3683028afee0c8ff64b1939c51c4939edbb1e8
+182eb840e1818f6f1ca4667033891551b749cabb23a98cc9e7ad46cd67e34c66823cb14d375899
+bf4c3880575bd9d8cf73c66752faa10b075837bf4f95d6d79ef2a4ab88c0bac0cd2a0686290112
+738ddcfd8b51961f3b18b76fe598d19ac35d7fa756b9c677ffbeacadfe8d623fb1f5af5175bde7
+32bc80da191aaee2b9205e3b3d323f319d95d79bec397744a8e91b0ae4d91491b0866e916e1946
+554f8f8e19b46fe18f55284f6bca8320084ab93f600b81401fd34d6885c4ac87a4204c8c05067a
+7b8a91e68bdb88214913d763397e255469c94b3912c9c3fc1600500aeff0fe4275122b50c085cb
+834d1221bf7711f0b04cd8dea7b1f375f6e1f63e89d9ddbdc745368a1637bb9449749d8d3938f2
+bfc7665435bd59670572ab37f12c8808197dd0c5416b918e9266cbb38d4cedf4b4dc6b857d577c
+432c33581b3183e34ce39adad8a153b15a652c0c90567cd731d77a9411b696afbafd40be1bf8ad
+92f2249f64347a6f68abd7f604185c509425c1038d33cabafcb69431093f880b486c9e3a31d2e0
+c471a5b0c8407fe99cd8439e0a2d0e7d03f4a1a47df455073f52d4bb9efe9805081c4fce2a9a9d
+df8825b97f7101ddcefb683522b49ee5275646b625f0e02b2c7344b84016b0d03687de61fdcdf4
+5f77e840ecb610e9509a5f478cf5a7461e461cfa96603255c8453245bdb50ce07238e99911c578
+c4771eb3343331fe30e6606a6cf43c2937d4d3b507a26fb3a4739a3200e9e9dc243420bdb32a6b
+08b877b951b900865451eb8ff677f063b5bbd68d24add95d448efb00691bac9d4d85bea1fa9d2c
+fbfe36df64f7b20aeac7f7af076cce6375f12c6d45fc3d7cb16d48d76706f0293b5d0d11315f9b
+3c2538a8c5e5f9b96942964d44c82cebe5b553709c0317e70c16300a0efcc5207d20c2f771504f
+63b6902f97f700b78912fdbdd4b0b3e7b7fce4204b54b69305352770b6ed2dc0b3574cc9891016
+11963c5e33782f91976239f8f779efaa827c2d3d283a2f57d1bee3f2798824922dcb45331fa72c
+039ea0681a1ec10b76e560d604a0aa9bae6773b9f4c9536c6afbcfafe26404557c9282769b573c
+b0731f67580094bb0d63dd7e0b58fa776e9b8938644a06dd8c404d5c170660f45570e255ff741f
+f6389f63a8c594992db23822dbd95f17836c73807b405363d10f165833ebd1acf4353eabb1218a
+21619efdbd418f3aa92c3c708d7d6706978f8b87b0746f038fe320f59bc683b5fce2be08ab75ae
+67d3aa77054e8aa7b8a7f345f9de48f71132f6f9f58272bafbb0c2f8b6d20632c1f21386b66bc2
+afe8be099a5f5fbdf9f3add2b2aeb302d5b78c2dadf071feea504db3a80192365bd52f54c08d85
+1d672f1833cae276a6a3e91e06cc3bc3f06e7a8f1c886c1ad9cab495e7aef25277bfcaaa68e6dd
+c90f27358349788653a0a0d08903f2f23f032a2d075a3013fd08d2855d77213bfa9974c95ca9b3
+f26d54ab17c151037af62c14c50fe0e138f1c0e9c40cdfe4998a933334686963af028568a0927e
+7b2a5f6fca6796fc73eff279ab9beb247da2747b13899e657e40d1fc5db3520145033778ae0b9b
+d7b2f8e84ef526371341a4d28fee342e274c16526edb696c88a047eebc10ae3c982cdf5afd74d0
+ca212946b5554cda3cf392974e876fe8a0577d44e560fc1b43714fcbeb5cfdd85a929bb0ea323d
+2dc1885674baed5077627ac3e497d7c606cdd1cb343734be142483170d1893b9481ba0943360b8
+abdf4186a0ad5cc818f3fae259267664e1eb786c8d8a6e1dc538a7be8f73a1cbebdfc61c475df2
+7ebdaf351cbeecd3038060942d21e60e38d1f277ae5c8cf6e97ab66bef99e743101a7a37a80c40
+0f87eb1f16bc20c2c5a9aed9ced565eb25d807ea3a33ea6b2e4dcc0d23e3d6887d1bbaba4ee643
+9f3fe48d6b750033b7f170f3
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+
+%!PS-AdobeFont-1.0: NimbusSanL-Regu 1.06
+%%Title: NimbusSanL-Regu
+%Version: 1.06
+%%CreationDate: Thu Aug  2 14:35:58 2007
+%%Creator: frob
+%Copyright: Copyright (URW)++,Copyright 1999 by (URW)++ Design &
+%Copyright:  Development; Cyrillic glyphs added by Valek Filippov (C)
+%Copyright:  2001-2005
+% Generated by FontForge 20070723 (http://fontforge.sf.net/)
+%%EndComments
+
+FontDirectory/NimbusSanL-Regu known{/NimbusSanL-Regu findfont dup/UniqueID known pop false {dup
+/UniqueID get 5020902 eq exch/FontType get 1 eq and}{pop false}ifelse
+{save true}{false}ifelse}{false}ifelse
+11 dict begin
+/FontType 1 def
+/FontMatrix [0.001 0 0 0.001 0 0 ]readonly def
+/FontName /f-1-0 def
+/FontBBox {-174 -285 1022 953 }readonly def
+                     
+/PaintType 0 def
+/FontInfo 9 dict dup begin
+ /version (1.06) readonly def
+ /Notice (Copyright \050URW\051++,Copyright 1999 by \050URW\051++ Design & Development; Cyrillic glyphs added by Valek Filippov \050C\051 2001-2005) readonly def
+ /FullName (Nimbus Sans L Regular) readonly def
+ /FamilyName (Nimbus Sans L) readonly def
+ /Weight (Regular) readonly def
+ /ItalicAngle 0 def
+ /isFixedPitch false def
+ /UnderlinePosition -151 def
+ /UnderlineThickness 50 def
+end readonly def
+/Encoding 256 array
+0 1 255 {1 index exch /.notdef put} for
+dup 13 /space put
+dup 1 /parenleft put
+dup 19 /parenright put
+dup 12 /comma put
+dup 24 /one put
+dup 20 /C put
+dup 18 /D put
+dup 8 /S put
+dup 5 /T put
+dup 14 /V put
+dup 17 /a put
+dup 16 /c put
+dup 7 /e put
+dup 6 /i put
+dup 21 /l put
+dup 4 /m put
+dup 2 /n put
+dup 22 /o put
+dup 10 /p put
+dup 15 /r put
+dup 11 /s put
+dup 9 /t put
+dup 3 /u put
+dup 23 /z put
+readonly def
+currentdict end
+currentfile eexec
+f983ef0097ece61cf3a79690d73bfb4b0027b850f3158905fdac1bc024d7276e0a12b7ddcede59
+e3601ab4509dfe0977ed5bf624ebc1f818c45f1350d41b052a72743accb053eb06ed043568d319
+6a30bed220227e2a15bacef508449221cf338a8666e92410a9aa91d5a31900a93c01ec21742cd1
+4dc46bffa111ce10b78ae01abaeba7f36cdf79a4733245c63f6d36234d6b0961f1ac295d617793
+1b9ed554bb5fc6741a63c493daabf03d753c7d2b8e8c01e3e280898f810da5985212c8c0bbdee4
+e8ab9b22bea83671c0460443ede9be044168f8ab50be5874d46660f1f8241cb261280a68ae2cd6
+0e1648cff45c0ba9b15cb42f86217172a5b855265c214d4b954937d11b94b7b98738393ce09ce4
+0802e512bea7714fe6f163d1b27c8ec87419fa91767418abc44c94a3a22f97f856b0a4729be697
+3455a7f7ae72c671542e9e74258c2b8b2ad440a1b69bc7de2e54ed6a96d0bfde08b35f6fbf739a
+e18676c03800ff3e63c6fc20927b3158e8d2cb6644eaf7831c6bf0e9b39aa14145e721dc46e792
+da9be78696808fadf24136f9da0c8003cb34ecb8af2b7de9e033545fbca53d881eaea40c638396
+c8d3b08b6e2b8f7d6188d055d6924bafb0cf7ef8bf2719495988b0efe373dd1aea97b0f486d055
+5e3a62cc1b36024ec3ada21bfe1629acf431928facb4ead9c41e3d4cb50ed2f651d2cb6ca8d0b1
+ef49d9e214e06cb029bc1a40b2052938f6bcd05f013d9ed1edc90bdea459c4483ed0d1470e30ee
+0a77ecfb585268a94a8bc6be7d28e5746525107c0a3f05fb5e34e0a2157214be2d95a46fdec2e3
+6afd180688fc710c92b27d69b2ff8b1fc7f73cd5526270e5bb585d7674a351d9bda5dcbc17b40d
+465923103f1d02e7446d949002657763c82c8fe0372afe94104d148679b4e5be01def615b295d7
+c25e24660b2a10dfb0b5b96fc02bdfdadc10afddd821fff6caf17f11d6a7cf157d3d7f1aa25a00
+cea41207c8e160663d23b16d2934ffe6a6c178d456facef20fd46c4b33f6d1ebf103b7cde86d7a
+ff74174d2d3f5820186c696b9245f97554b7f62411429f1dabebf1ce4abebcdd2a4ccc1c06d6ff
+8dd9d7f935ba5218765a81eb3c727a40dae317df89cb3234b1a4f1a0b16f88ed1684d3106c2a6c
+c18aedd3b052df1a2ea7ccb8c6c6111abed60277aaa2b91f1da4a83c0b2d4fae8cfbe2873b7f9e
+c2e9ad05045abd1133b95f70185dea97f1081565ac65139ff102004b00e1e77023782a68a75208
+8f8d8cd2393eb3f649553f0be59b83687f4425290ff1e334794e59ab4dc73b26f1beac4c5d6d4d
+507dd7d13b8721144d28b82eba624965e3d8cf9334083a6a461277026b05583f96e489be17dcfa
+ad73cc5b9c6021527879f2c194a5bb18699cbef3ea4e14950e1aa56abbd38bf509629e8a4f0edf
+0946a47aea100a088151a9e296d1b5d7688aa0b3b121fb93bd52789d22fc32d645230419d1df1d
+106a9a90948fd443eb64a212b3595a133a4a30434b5074ff14f69368de4e0452515257aad6332e
+d29556152c71240df8a6746486d28c6a1315bc5c5ed08a5192c2fd7ba4ddcd7496139ae2e6e47a
+c4971edc88a81e2056ff81081b72cec34df2e6bf1720bc5c6753ae32e31ce0db86b3aba65f2633
+5a57f2f12827f7495183427d3e861b6ba27f7157003a92a9405c8755f71dca78e6cf0730fe5950
+4cbe903beec22765da1f35eabc756bf32e9980eed40c0d1a201e12a71b63171df7ca971e36c03e
+8137e0213fe675b392ad8b3232752dd3864c82f9ff85f814becb6fc7510a1e9917bcf12a90c4ee
+29e036db54278f2413731df21833d1f8149344b46e4c3fc2fa9647e76b3cfd81b4fe88643e427e
+7f6d9b01f99659e531df0c43b4f44ed236f117bb00830dc10a5b1896cbee06fde9b4fd9b0b1384
+05a0bb83d78ca5546a2b41490f5322405f0ea6276d9a13a63b98c59cc9a0428472759009cda518
+c4dfce2449e27df9caac365a6ee3a8ac451167c806889760c404164f941d035b6a1df55c44ebdd
+a9484f4da9b07c059ae59617c0e86ffa71b9a70322acb3b6007112879946f950e04e6b634439b0
+6e05a9781a9ca6b9cbfaf508a835e2daaec957d95fa0031f9ae42c17cfd5adfb81766af25ac523
+7818909e284ae4a439b8b2a5050ddebe0dbde491d135155e98ab579904d045797ea516dbaa4529
+675a381372fd437e53f9372dae38f0eeece282771fe7c3d1e68061cc242e4640131ebfcf340b45
+3e4868ce4825067dfcc88c7d84aee3f06eb202a89979aa520e501288e93f742fc86b6f43e3bba4
+430be40b099cb0535504f966cf50fd9ba9fd358fa184a39eccfd4d8e5c4ec35b448bad9cf5bdf1
+5b729a4137a9618a5a44db7d9740a15e0da9c802b428d40ed5401ed76095c73512cb626630608c
+74143afaa7be85562aac8d8148a5e603e3b69b89706b0c1cf5c85bdeb32611221c13325835238f
+ee492e4a08bce9741094c4cdc3edd691e82d224c7866590510e2c7cccc07e11484f62d79303fd5
+59e4e511eb67bab756f30acecc560f5def3902bfb52abfb7aa48e72f2732b7eb73c0123f6dfe97
+cb69897c1db3d57ff05466c3cce4730e04e921a5e56e8add31933536393bc00b3ab3435ab95096
+5a752b913bfdff22a8e7df7bc441e5bb3a3192bea8a17829faa529e56ac69e5a25a6797615d545
+5e4b430627f9c219a364bf0c55669cb872e403ed1cdffc63cf9223ab581bb9d7967892dfef80da
+723f18e199e0b57f12ef0210326aae328882d982392dfcd40e029ad3f53dcd820b4a61b580bc3f
+1b492453f5c752e05c705bf8bc05485c5499f804a6ed2a28bb63bc7e80759003cc7ef0a1d9d51d
+ab1f785d14eb86bd9a4f4221951da58fe7263e23e58a2414dcedb6ce1943f62a65699080bf568c
+c0c67134d8728963466de6713327129138d203ab8db0079f63349ac8ea689ac7615d866b7f600b
+2e91333b61d73c98401b1cb0432e90fa7bd87d9f4fdfecbc2dd5e5eee5daa7d7bd959e41817e17
+525a472ac035c391b918d549c38bf2b2426798fc27af235a725ddff5dc79afb59198c94528a36b
+8c7cd5683f8af50107b45e02fda4c787b4f14ea4e663bbd615be5b30d6979456f6191b5051f458
+bf19c91ac99a9a8505a03abedc243ba2872c3305b81288a79f5ed8452e2a2caf3fa51208946c72
+b97e6d59ef74bd8b96ced9de45d7cf76a6891c7c0691298855a366737da9be57d98c25c7415122
+c898a1564a052036a3aa550c2bc83478c4e15933de6e4aad64b2e97c640a2e8a14933abaf85907
+f09588cb05432f716f05efe4a669d16c881dadc0faf5a704dc91f5006e512a61372579eeea5f60
+76cb8048d71a1e4a3097bc27433bc3613ebd8291e427bd9cf83c0969562d5363662f74f2ecd570
+71c4d331a26559bf3e307d0e2d1c9a90a3fc92254d2656555dbc0c8c3502985a00e705213e4522
+d5eecccc5f94af0f196501250a4200b04b491f64388f7c3aa37970a8a5bf78a072bcbac61cdbf0
+f95dbd13b8defacae1a53277fea4f19f829fced3b4cc6e209bc2616b9bd7312c87d78cda5c9f6b
+ca02595086adb6dac9b7bc6c9fca577169940fb58c818a37575de491222128989965657ea8b5db
+d96a697ef71778109a1781bd7ddb9b2132da71b3bac95f6f69fc615b7733d709402bc7fa0812d1
+8aa22fab627f91baf4a346d8f103362c0161a3b57d83856c63cc7150fa2ec1ba537a4c608bc28c
+85d388bcf4105158f0c9d40a573bab28148104e2db167ff009d34134008cd1ab4cea4091c04dd6
+eb2353686278cb190506778602b0a642d3997caa982a2b3c84f8bc97e83a177fbe6c69512014cb
+f7ab75d5a35a0521a2d1204d7877f75a8b0816da0bc058c0ccf411b939931bcbbcd1d3d92b0fee
+9e58012677b1db645c14ae63b7c4c3e4b18b890802aaa72c0d8cb771ee4e46ddb6d714894aed78
+16d7164799b70d7b64e0a50b979c3616590b871cbae60b9449d02fab57655abd48843da96359d6
+087ce297a26e192491d1cb8420d7cbf1dc66b68ab4299ed1c500ebb26de35f956348d497c3c085
+8e812fd3d43cd76a41e24f19752bbc8a4a69510c9381cdb8a23031f8c0a914db40a659a5b51e19
+fc9024471cce4e65cbab05a3562a292939887967cbe49331cb58e936a2b6873d3dedfbb3784149
+14a2b78db4daa180a4b40a972fec68f931b75f2109fcf824cc7439ea693c8c080abed27376461d
+d5f86617d1a931cf1caf206e872adf0d8b6e35499fe3df6d3833dca2daee3805fd76f7cc5ef2ac
+6f05134e8da55b15204896002803ad497e67c2ea83b2646bc13a72f73d642ebe4b1d5b00a44474
+4160f3341a84335643e58ee6c64acdfcec21bf506a6a30b70b1fce06b97b23c767e7e429892085
+fbff2996aa68e4776b76de0f66edfd89b015cc3a3e4d70cdf3bcad9d48b4e17b97f568b0f3b155
+7d003cd6f087aab912a15e88e51f6e33c8c8b2ab69fa8e81f09a75e0059723f1de598a20c567e6
+81b60e954bd6d80c7515870bd6158eb93e8af8ae71542d681895e2b32489694f090ebc5b560515
+048626f803b996baa342815b5adfc437dace01d549a6319eff57096c537c9aea7c3f8dd978d426
+24304a68ef2427dbc0acd85a26960f10e348a30cdc46e46dc16700f62108fe6c35059759fe69c7
+29edd6c91e83cd49535e16746b6dff037927de39b77eeb86fadd9ac5c89268c3c529fa1747650c
+f9e16c7626aec25817ea46c1ab2b0a7a9c7ba33087db199adf7594c297a938ddd7ad595c694255
+2ae76711f444b5b833a92cdfea0462b6766685359cd4c2afe4114d884b230fdc86d680a9b10a43
+33d68db6ebc595f86806392857b55452e44288a42f924754c22778c6d7bfc3d4337bb3a8f68055
+d0d6f5053700b784c480509caf63336c687c5bd339757008be54c289a10e62d5c83eee133f3216
+8a68aa259e8247d6afcb25243df6ca8c238ea64082265560188e73a47db7603a1802e7ed3693a9
+b7e5ed7b0332171196792cd5272b640c8a5363978a87f58b9d1022d5e7af38d1e45dbabd89b095
+eb9e581ce8e9c314a8152465a4663fd4a7ad1996c08afe96d3975d67fde3aef4fdbad38c739d0f
+1bb4584f919b4b5b8a06aa94bc3a4162aaaf01cf607fd24e90dd4889795aa0fd42e4cce9b0c432
+3963e288dab83c1d1187c1251d77da1c6602311cf8a73e16699d6646bf62cf68b3da3855648508
+edb97cf3614ed1141d158ce8f86e055e9034fcc9c77fe4f592251dca7e61952859567c6ff4fa83
+15b554ff50b48bec4d99ad1221b7caa1d47a8f430a07d49f561296a74277adb9c21c8b4ca1d3bf
+3b671506f71d8f88d37ec1b03432c2bcaa337659c35747b0eb1721073e4e60e93646c719bc4e27
+c5b5fed52f456f43158ad6ba09e9db6d0c17fa75bd7a80746258f7725116c37770e261c9bcf7f5
+78f3f12ec7037c125fd86e4d38ef23886e18f4e206397006c8c4ba0105e10fcc254a718e3c8ba6
+dd71218c4768fe0d8efe2e01454dd52ef33080a1313911ce3e0afa57f5b74d7caef2440ff148f3
+c8bbe0cb2418a0367dddb217ffb47fd5766ab6db331bd9d2779ceac6e8e3e6562b79d947e687ce
+271f8f024c5cfe61e3453cc7ca45efc6b682d2da8acedda708fc65b668e285e6f542b9fdc07108
+2076c4ec2312de40214f8616ac615a2669bd490e89d5c125d6c0d6378113f4d37f1d6a06c225c7
+b0e879746f13607c0a4b98b7d77ca29572495f4edd58f292ca28417808c8e60c3dd8b1a9d185cc
+805784e9a1ec1f290197637cb2f1ef65d1b114bc0e99a9d3070be7199f3d30db85cb3b65eb8cdd
+60b44567730017f4f851d4b15a15bf4312f79c05d5ea03b1da801149fef5ad43eded70f470e622
+81fda1df9ef72f180630b3b1509eb5fd9c73e7f02fe23f554e5b74007d6384f6255ea4bdd2a6eb
+a0310eda07327884d26c59d53d38f02b11815e8adde0804c621d6cbda143ff30856063abcd0059
+183828625bc486f27c475059855c9dcdb5831ce58532e3e6984b63b690a27373d7d5e613be666e
+d52d9f743fd3c373984fbfb8ac8040dcc222ddff4a2e1f6d93f64aabad9a286e3e07679adc8538
+85c8658e37b0efdb68fe51c09ec2b6b69735b84d2aa481793f0e5982e006d985c0c2b8d394b709
+3a210168e58688ab1c07b99b857e90523f90ea3f4f4202f7751dc55dd7cc187f4afacced589cce
+0189545f2a26c9d283b14ab2aae2e5393d416e014ad99e27f8814c0b1bccd6f798865e243bdc94
+08dff7e6fca3b515e5edd3af9ac11e4bf0a7b7a736959a4f48d4e519d069263b0af143dbf431ce
+df2ab7d4df2cacb62627ea46e77e20233ede4166f291a3a19f62271ea68be133a61b6342782ab5
+8310c4e2b08782800f48d311a7c15d1a6d3f7c6b5bf2d91cf23b931793adab17d9f085a9aecb9d
+4df2c4c50c5329503c4a8ad83fdf446b306c56a2ca97bd50f359280415f8cd4bf01817da0f01a0
+e48bfa4c7a1e85f052a03369b0ad7eb0122585bd4445dd53912b2d1ee8cbd9b7e2716166790c32
+f4e068134102aeedc6ade4d5db39ac29f424b0d5e327d081990adcfad18f6ab64c7f199cddebf0
+490b10847d158b2151a8e79b707af40ba4a38c8c02fc49dcffa7e2813ad7741ab7bb29c93e146d
+81be2a2494791582618f49aa9f904f8faa1ec63adb809cd473ea6743509617fdbf260d4024b410
+1d962f66f361d7257804e354e050004155cf050ffc6adfc28c4f742a3231c5fa37c7c826985c50
+99698eda86f0a2baefff000a4e74597e5bda20f8c36f22ddd94ff45e16ac91fd250eb9d8d0971b
+c4bfda5b6c0c14d850822031fcc8f231023a579c09493ff2ac9f72e81b4c0eaa64fc3401b7e128
+b2642aa708ef990878091956a777d908fa0c4e1f2da3363e098a28b6f141ef68258e2f6ae3ac08
+9b3b89de4379a0da96cfaa81a7fdfae2fe9dbdaa3b21435793e464baaa346a722c385e71398949
+d32b76c6cdef0b05c752130d43ebc45a1738f06281097150423f885470928cc1153cb01b2295df
+e17cb19d3b4d576209425a806b98d83e80158b67120d6ea0a65d94582e248d3dd8ad826bbbc00b
+9b9dd0f4d606a65b1a0ba8eea83cff745e222e6f4645055a9cbdf1d99160e0e4854d989f07cc3f
+393f72af97c3575d6f1d8d4312848bc72bef988cc436c23f4c6a2a5569a79d04a0667611a3b0f2
+e2b8ca0a6ce0536b0e459e21dd3d74d8a94be16cdb3d65a6534be608688944c0d68c62e3989910
+4ad6e587ec0f3fc097ce54d3e25c9f081dec3be6c71b714b9f92c15517dfd763b9bf0496d601fe
+4690a9a815e803221e007a7ca74743f679daf6a626af5a6525b394731febbe7cadb5de910c2163
+e640acb041736fe4e508dcb5c7d87d38e12ff80fc903c26c480b567f057b193f5d4ba352697b94
+81d780d94b815a7d96ba6dcc34e39f43caf780d101bd73488a88d213063432f8e6bea7e7248d85
+ab48b576ee702af9364c81f7d5c74ddad8315ed4345444e0cd92ea23b4394073178807892d2925
+a6a43a75c68881385a78d9d5582d3f3f8bae87ae177ea46dcba9af17217906204f751a358cd8a4
+d8c95ca76651271963b6d2ffdf282b653c85ede30f9c8bb5f113528e221aa1a6507364f74ecae9
+22bc09e6c3f42166b2118a819638a85560c6e1eb7bf2893357a81571201a2bc31a91ab89489fa2
+050d353039a7085aacb83609825ae7392a84b6325bbf17af46a9a3eb63ad14bb387987f6d756ff
+c59a2a08937538a0efa89ca08f9785952d2e8bbba0e6023ebb8fceb5abcc3c0c3c1b980255861d
+991fbf27e70686fa238e92ca9bffbad61bfd48c5b8e8aa8fde96fd9acb2d946b69a51137c90595
+5ceafeafea0acb8a0c561808ec2e0d4fbacdb7ef9f9abfafee72f759e8208559c232ffe5bf6cd3
+e7cbe88ea579e795455f7c25f434345506d98be333bffa7f7cf1f83bc00e38d2503ceb483519e3
+b1e5cb7751c00bd2a13c385e2f88ee5df92086b57fadc621a1a539ff102d4fc4c075ab1d800eb1
+efc6fabdc04f81065f0ef3aa5b947d904410962f6533c1aa49b86178ad45e35d44b866c938876f
+2bdf1dfb28d793bb5d049df0cc3e21b8ae8f9b75ac06f00759d48bf39c61125641612bc6032f5b
+6046d85ae9c7102b99b93f7674e80f96a1d74c1368d2fdfca6e8535a9d80fbaae20d681e1918b4
+af227270f40ee97fbaad4a4216908272cd9767fce64130744d0ac38825384bd51bfe19a150b55d
+d390020ae35929d4026d4d8798cf2fcabc5ffeb88f20129ff22baa1bf3fc412b4042345545075f
+c332a91a87c3ccaaba8c201ac784fab723c1371991d5a4c5d865727dc7170d876a83dd01b10c29
+4e651e39a2d3a7c7de70817b0508f612856ddff87bf404f4c750437a96608c130bbdb8dc140510
+61957ec0976ac3b58e117b85cc17f7be4dd59a34a81ecfea08529704d8cb73176ea03c1d873f0a
+7acb41d533c8d68dbb3d9b879448ed2e52a98957c41682fc30a002015af634229c4d5d6b900586
+a0a0b06b1fedaf188610cc3bfd97eb4261460ce68154b3a5a19a218bbf3035fbc6477889c2be39
+7cad1e44c4fbbf3260bf85eaea01ca97d02b4c366a44fd08be6f197df8243ca699c2b75b54756a
+b361115fcc5828dec91dff364db969960569e59a1c3fd2b76b4f88fd9309f8c9962d02ac778dca
+69f07609b0b9961ffac6d942943cbc2e3682879841df4f1d05350302cefc029100f934704dcec7
+e3f153871533258ad2b5b5ad89d153f53be6390ca66461b84fb405b4722d3e3a205ce3bf339018
+b339f240c4956edd92e16ed988b46813e5e39533804efbc6e426304523b82073d9f296b3f8283f
+12dbb66157440222a888acde1eef4dc861f9e8d0e20c5876f74e99c1dbb0b5fe81eae326545e84
+285864f90353f9c1c21c166deafc24ffcbe1a19522ac8cbabf3bb73c36bda0238a19da380a6ba2
+63cb28f99d3643ca4f4b21ebdb9e19f1d53947c8f43a22320f8eb83f152580d83dd6cf230e30b7
+4d2f0bf26d6b621865797b989714ddc45136974dccdc37baa1a52d021544aab74521e9e2ef0607
+d951b1e4cbe230a9a1095df65774af0c2a0c0f1770dad9e054dc06c81d30801a927e525afce8cb
+8d753bfb1fc2b5d967b9e25c7cfa39bf6fb86dd482da0d871d5c8725cac7b44dcd5c3059f39a4c
+b216177100c0f99572ddadf8d7d53733db55286717ce9ee2a12357b901b675c566909a0b4c71bc
+bc7bbb7d36aa72a7018895b617ed93853602a5fd52daa01da6d6e3b713b7fd9d6f75e05f218572
+11d6ed29349ff0e628c26df07d1c079e556ffc60585ec8e91f38c9b4ef0a708559b4cc4155ff42
+c48c18731bd231b2dcb32399943e3fd64fb66d3011cc85e9fa20e28c741303d5b1f3b7178753cf
+97364716e6bea337a89ee47eaf9b93f938d9d10d82d4c0e3927af3c34927fdd5fab439d303d997
+637e2d21725bca942bad146e4df93b37e5a38e4da57cb1d6e6e278b17a82644c800e6104eb2518
+c03ea9b8e3f9b7611066ef9afc58b893e3fadc53835440a47d93c7052ca4b617c1d958c693ceb6
+0f9a2814cfc1b4a24b32783b389678bdd14fc3ea2124f124afc5ed977097af7a1d3a4d825c55f0
+842b2ac566e43458495b6f51c011d7e78818f6d934203a74a961618625a380923926544b7c13c1
+4b2180f3576cdcd4f2140bc90b2ec84f1aca97f147781866d711448c1dc8df1fcc1a1769ece2ed
+5cea053795c0cbfb7204dc61065c87be00d9c0527d5df881708fdbfb7fbe01a933775548eefb73
+6d014a560cdb4313678581a3b1aa73d546869301f309f189c2df29f3d4bebb3b5a72046354c2ed
+d273c9794c3659bc72fe7fb7442e75b04fc197a49efc2ea39ae0b5d1dce9bb509b5085445a66b6
+a59979c26412f1d6f5ebae84175ff08a90c9be4406797389c439693e2fd2f2c26d2e9dea41c505
+c32477ca50fc01dcd53d388e27cdfd4d73c2ac2fa03b9eb934479f0419ef50036b682c9ad8bfda
+a3adf80a03de9f29b7021cf0441deec0f002fab57da0f5be89f5da4597a2523a2e7886589002e5
+cbbde0356b391148b5502eaa3b3689871a1cebe9b8214992f5349ede7d799a57b85d1e2ae706f8
+567efcf24081165f53810a2dc9568a263f69c40eb55cf31782da10dd970dc79f6593f1cdd9ce55
+2de6c7c9fd3ab21169a2e487d5fa959d659afddd071a0d756b5c7debd602cf9ad3e6b3dc3f29d9
+54cad22ff28cf333ac67b8793f01c6f13c4ae2b6732d60633b59c2d9296ec77b6ee630906adf73
+ef86033317cf59b6ffcf42fd7a68133f0673a5c91b8e0ec7b88872e9ac8d0aa904af6000799d57
+e1dccb74496e345dfea868ad7498f3ec7b85558a1fefb6f03c7d5365cef02b044b220c162c530b
+8cc899887f8846084c7b4fa1dcc631ba3a3773fa22443097b47852b119b42df9d58ef3d55ca10f
+38b04f378562b3bf03140e25544a77e66cb9589e6f9dc0a11b6c2a35fac32ce9bac552dc54270b
+fc025baf639b8aa5e3dfda4908b869969bd633a9b171ed6a04a2ee6e3744d7a348cdf09dacda62
+5269181d8d0fb84b468d2eea50fdf69324bf64ab1db3ad0fb2fb9583937f0be8b41f14a751d711
+5adf2d329db753cd14534cc282f2b4a4bf497a4c7b69cd25a1fb33c5e91796b885176284c77a11
+9b50b077001b566328fd23170e4ae611e3426fc26443587e3982cea97c79fd63a4dfa95efee48d
+d81f90d67e40f283c27947d0f0823d2d2d26210e5243d2029b2ff059336b57b9b1334b0b615bf3
+57c6a732c8d5165f2c9a6f310e48a2e4d7dc965887b45c14c9b744bd98de8f33071f0dea693ad6
+4a55d03b2891660d09775030eb5c0e6e868ab1b90028c373d3448851e225dc9eb442aebb5912ab
+0f3b1107a7d96f9d23983d8a6cfedd589e59fd355ea0aec2a448fd9d254d39331cd80dbfd653ff
+fdb2702cb848144c33c28d207adc51097c28f754521e715be8b7b14c4f86aff04fddb0bd52247d
+814192a884e5af3a8f675cdf0c9dcdee0668773c3a3673af8f51a71bdfea19d0bde8a2a2345316
+4edbf01c932db93128b686cc6fd9a1dbd506b6c52664c5aaa01901c5ac0a8275e0ff4ec66ae332
+6dbc1b3b60c4488b6af86fbf30ddc1e3e3a8d63d7682c222e74605c95af3327e694f3b3c160008
+3f9cc241f97c5013c9a0588c715eb4dd00944e824e43a7a1c1fd144d1098628139034731eb1cbf
+633184cb857a17855f277bbc18751799ae28f48130cbc1ed559ab1a5abfa2576d59fa35772557a
+6fb3d15b4ade8bd38b763be0f8d8166613cc37dbcec1d65aa06c7b9f171028fddf8b55093a2fa5
+09ce882054682fcfe32d510012ef5ddcf39f0ae5ade25af279829f8d47b65b89a40a71ab70c2cd
+961aefb7004d3910c190bf32137e4d9733b971db4616ba789c741efc39c26540d3228884b4bb49
+0bea1ab957682d250cf95e1d41c116623925e7778755c11c654d42dfff1db2a49c5b57c3df98d9
+42373519cb02f367598997028e11c513a99b4abf115c61e2daedebb709068ce06692303cd0be48
+228918a12dc126af0e4f81766acf9a84526add4d2fa145cb5452c09547de307b352e141233cd8a
+ea9f965070a2e6321a795f896c0cebc01ce3a15a81f14c14d74aaca4ab090125fecc310410da79
+bab5dbe07e9eeb2189788f491c457a82abf7f79f427932c8ad38466431e28659056c3d5a4be02c
+8d0d054bcd4f9170aa7b7b0d2e9a4564af66eb7372fe981bf441b68cf8247d11fcf0bfeb6453f9
+d2210dc880b9b9af2bca1dad558c1be18eab687f453d4aac976fb9466a6602ffca1dc852a56c50
+556d777258a7bc26489789fb4fbe2f70034eef6174244ebdcf514c5ff72391d097750ac8a9fcfe
+6c94af17b3a5f2667ca2a02e7f32424ad5a7d902751f7c41c9a7fa5fae2d8d7396f8e586be8ba8
+f960ff3fbcbe783e5ece80def85cdf792e33459d996a28775979b335a8448523c0a187dd8f3c08
+31231231f2a158a7b7642593932c9e0dce8892ae708b9458993d580656e1614f2d076f256a680c
+cd3d370e37cde46dbaf38f096b032170759ec0619cfa0389b17568017f8d2811727965c75eacb1
+bf1b179b69567b0ed8bdce2ce95e98ec7a9a573a79ccd5b4990e46d517324a06ba418b34110fee
+abfb71c1e43cfc1650179fc1e5f65fef017498b83a1eb5fb5e340a1b19ef7f10fd0422f6e7f640
+db9a46762fbbaf33e2eed637ee9d93cad018e33c4fc821212bb0f38f2251827a46f38c38c128df
+a891f0b8ed14054c651b735837a0f862967c3d39912e288dc3939816e015e8be9ba798f68c5e89
+a4184aa18392352bdb53119115b1a100e0941b80fb8017dd198c7d0629e72f27da2d8ebb59de72
+ee46daa03e57b12513988f2023484d9f0480126a378ac134a75c2bfdc4df5b8d8fa77ba3fe2da9
+a01ec9427a00487b3a81b50a118c528b77c22b57265e5f915a063fa3e8bac0ff7cbea9ddb19ab8
+390775df6049cb85921457cfae8a868bc6584a60223fa19a363f98876ea3d1e8a69337a58ffd75
+c9b296ea5485e343c04c72a53945e21fb479495d4686302f39188c01b036253ba0a18fc87aae33
+5fa522a435094c3608cf6e2e37fdf5fa3f59048fdbdbe6c58dabafe941a7af5aa4ee7b44d64df3
+74780e9e2d691b4639e2aaef8c52de72b51f2bb6506e5e98f8ae236d183c9cf250dee46d102d96
+4aefb7b82ef32d19a03aa88ef2ab975f04a6cb5208f570af43f73d804843404eb835e5efe3e348
+87a37816ed3cb02b13e91be5bda75a112d1d27e92e462ec516100ab117b2882993af81dfbb58eb
+b2f5bc5d5eb98e48f73e88144889677b31d3c660839854a5c611a52bb493b644553e6948d71f94
+f04eea57f7d458d7d78bb278d83065bdd9097f252d39a9ecfb408f2229ad5edaf4afd518c80421
+4dd2458b085d7bd382c7a1e697b5e0c1a47c25e2cf084d63bf186635783b56e6b36e7da64e3f9e
+3e7135d74381d957c0c62a6d2c4dda1c21a8e49979dc4946c3bb84680e4386750d4b19c4011759
+d84f90cf31b268f0af056d8566e84939388ff4cda569118ed71a2cd82d28b44e17c84389795a43
+57f70f976891292e15448c74ce895be53e4212079fba23793f3c247827b44f0e39066964e75671
+9c628e6bf4a5f080de8402d5d1c154785564e019f13ca5b45b525b325e29f193557770f88ef82f
+8d7704631969d4ad624206665ee1d38d7ef7a7979aa05d39528beb6b7764d88da381eb63f0cca2
+f797dcac11011445da21da35e051c1db3da576e698451a0675944f5749e465faadfa4bfb09eba5
+177ce8cecbe67fa06b74d75278d7f28c236a596a17fea5467785f345197a43ec5f2e1b7e7e2151
+f287ad9181ac39c9771a1713f45b5ddbb402bf674e3eef369647bbc37b3afb327576831021a1a3
+8fc4840cc4716da8026d16fae600d543a3c4dc4d7cd5baf19f1db2a24a0757ef6c3bd8047288c1
+436eda2bd3f9289e6f8b003dead7b0cf49f3aa8a56adcc26ae300976e1c84bfa04d9a1887682d1
+9ef68f52b76fdd0e03f64cc92dbb3ebeafbcc56f8a2a99af870bf7f0153dde4202ca45c530a056
+2dfae59234f4e3287b93bf427fcaa8d236606aa43aff3862063c0bd73dde6bdd3ab4a8c4d6ad9c
+24da288dacffd02aca90dfdc72444c9bcbd331755876f649e4b665d69921097c364eb8b0562090
+e10f4d719b2b5afc9312ed39c77e91ece761c6c940133f940a74e5ce3c05d9703556d28a583972
+7c54800ad0e496885aa4052f65813ae552e8dce8d6f73949d0fcf5059e85ca8a1c137d751c6b8a
+87a52b198254d01258074227501dbe50de2b82bd2510e5788c46ac997c65bf44dd6928ca9f7a90
+2bb957e277e7380123cdd93cf75dd6c7e5a56f93f114b6e46e0407d3ed544d781ef6fbfc704a03
+5b7b737eb332457977f223d87ba6e3dbe827b4fae9e687f6975731d42a8977cfa67f94e90df98c
+a790e89713dcbc07cf27ea8c4584cc933fc342e5c5e740ee920ac3403d4deee426d35e1062a2cc
+7d5e23f568b49495c8b4556a8bbb0480ade618566f537b440ce52ff7d2cd89fc806fc388e9d7fc
+8bf15882a38ae0e11915ab03c272c8a312094938b9b4282ef3a321e3bd82701a50f8a4380fb325
+33cf4a100b0f96475a0f12fe9ce7e6a41784fe7c83f05869d42b70febe4f60bf749429bfc4721a
+cc4e17a961bd7da411471edb7a32f4479f2f079239c9bedcceaf35119982d686545cbb1eb0e9f4
+29e9dbac1b743d28d12c6ffaf8f98a3bbd60518803d997a56bb515602dd3a75f7ace8adf16a6ee
+79233fee1d21bf40914f29521638aef27eb796b06b5fe274444e0833ab9a79bddcb334435b815d
+0af72964e8cc297d246c6bd6d78e0e8394d8359084963b01416db54a3e3a6d9784320814c4fa99
+aab6c4934b76a26c5e014d3fd202935f2f9399dda83b4d652ab89936578ac2c70daec483f69422
+b25472458417b87f2861ff90aa37e45c07ac19fe09a4c2d37c917941f01682e650fce1785d114a
+bd5949ae733bdaaad98a802437f465bb7d2d1e0d4118d6ddc9aee8e08e606d9703c319001725da
+095dc1e3a421f0c5315e28765e9571982039d5313efe20de55e7b614184c4a1e4eaf4a89c62331
+c6f2511d706c2c4248c626e6474c450db1838f1d8b264e406d6f85dc63e78936a3f7d84baaf49b
+bd3ba15c58fc4734fdeb13d1f1557f29ee53fdbcca5d008c60f868ab756608ce889de583309a30
+3cebdeed91e7c4922526f12558d2e751ec11b3c0bea88065ab0241f9d1e4c6144150f92f917b62
+9295da2e8433a66b4a6e6c8571b684a675af7e77cfa6723f82dc6ac13a8a568ed06a519ea0a272
+5cdc99096ac0ce941b93207ed3f5991241f709ef7f9e8b2acb77100cf293452a1917d32c2f2a79
+8af506a827be2d3f3ce87e3d920a0d8cf8e98a4bd3bd99e12f4374e0f6ad25af32793c5f85b77e
+213c7805156d53eba08d9a84ba43abbba8202d43091436113d930a138dfdd15774397f496aea91
+72ff0302555658d3b4f6926fc115bf3de066f2d3bdac9738ecb824713de70361c91374fbac965e
+d71ee2aaf3a27a9cc5564dd26a4bf30dad76ec5f955915b1363ddc6bfb706b559fbee46f6b6338
+dd6a07ccdb23b33b0237c8f0a428fcbf6db62fe6906e4a593b4dfaff151b2cd167951a70f53539
+4d84b7ad727bca8403cfd661abf9a72ca0634822f0ebf66ed148fd7b29513eb151c8d76ea7b749
+02d76ef7a88d5c571873bd219a9f7e60b5d6b77bbc1afe19165f88bbcf45cffa773fa9379259c6
+1a930395ce89109c5e3a14066dcf9dc8387209c84273ecac6a6cb033d54cbe4451036b0b5335bc
+4b3a2c6f6a4395fdecf9c1b88d3b8840e0a94b0516c5821cdb3b15aa06ef3fe3a2c4729e258156
+fb7ade7c1b8f673dc87a8c87d6229df03d88fdb8d7e122cbdb3c8e9eed4ddd03ef86bf2b6fb140
+187441e7d3ad4bff4bb61e57dacbb792e9f4263770c169933f99eaa94f686169ac46803bf6324b
+8498c154ca78482224ad28253607ce99680a755c573b8cc5bd9840b2c8a2518cfeec51a396ec8e
+3b6c3f980a3896feedde1a0605ab8d7891736e2c9502b5e2b3de8d76da62afee99a77e1b079bf6
+f92363e8a5b6e605245952f9cb351206b65eddff62ab5730b81d85311489f9b4f4eb4690844b47
+a8a2cc0881180d3b5bb8f6bd73afcef9300002c1680503cab52a1c6c10b038c312a0c5e59c6007
+2d4405937a8776bffb1c07d0a8761bb4aab03dedb634ce0192bb51b07dfc815073beb441be59d2
+a5b29a64e559a0d0f33022188ca9e9ee43530036e15604ac28bb7349b1f6b57ffea79982da0f9f
+ef3b0447ce31ab3bbfc0c03b7a421a836b8bf793fccbe963059de30c4ec0ea18bd7f3d00ceadc9
+e611bf4c1376a64087008b5941734d404646b9f698dcae3c906f2208158f670d807d7ac8509a38
+a95d16679d11cc23115fd80301e84f4b200ee160fe96e54346be77e24998e679a0e1c0579135af
+c37c68c5163028b2c026f5d22035539795135e468f192814b49c4967e4873799ae4fccd31cdf23
+f754ec82068c2448ee44a452a0b4bf877a7c420006ce3e9e032d830e2bcb814e447b01473cf593
+3f6d82cb74e6d1d5d6211484ff1ab6add9a46397b42fe3c7b7cf6357ccabffeda61f6aeab2ef6a
+84ba261f837fc8bffdbfb3ca6901c2b4b29834e08d4d45a2dd4e8a51c229d30915ec1bcb1c5486
+a57eb7490c70c0dbfa01fd1c53c99832c7e26e50265f54b8197a0316d30a5646f6e4a71d475e03
+460d81e8b658327db8a1b1437334d3a907947b2c899e4a53ffe9e8227b2d5420ad4109b2b136ad
+0292b5ccaa83556e85b2018e629113c3e0d4d484bff995a484643f661975737cb0eb80f2b1ab31
+9b1ec6251c49ebe855e2d6ea533398f9b3148316210b46ed555ef68a949b73f31a4457f4558865
+4bf21d554b39eb23850e3a10c2ae0e7369c685641f6d8f43936c9250768af2829cc655bc027fa6
+40aa14b18a70aa3a7552491145e6a7df0d81e0b7e1f3587ff086712368c48351d661add7e96a25
+b33f9f1f777cbd3ad42b6786c8b0ae23f5e61421a0b660b7381809f13664aea3067bad45ad8451
+c40e07f38f9b6185867caa2a9ddc8c37647c6b6a77d281185db7a56c39cdab0ace10890f5c0d78
+07fc420a2d0948c3880dd22e0b6aada2580f9a635d12a305a89415a24ee12b834a6d01e9f1a756
+b492f4aab442368cc18c700e1016014b12e2ca27f141ac3084ce37b42a4c41d41a3ae37aa2e400
+28aa8f3dd3f0b80df124f33e60d97ee975dc98338c7d2290544d8da601fdef3da00db855237a17
+4cd3dda0a9a404c749c849f5592390320053c4de8004c650117289b8f0c44cbef09e2fdae18a59
+3f2c7ae524cee7e3560e3116bba293c02937b0e95fe22687ee328feb89d6738ebd1604031d248c
+eb6a11f9ffa7b2625d3ad21050df6f25d1bb4f3d5d269bbaf8d56d25ac40905ba0adab22ccfc77
+33dcdf3680fa85a94f65445951e960e817427a9126a9c767f263f324dfd34841554bedd86841df
+ba7e43986958d688da35786f0497a6d04fcbb6eef0d1e8d9575af1fdbeece6cfe66c574e615834
+6774b185fb5c4e3bc71b45b5202f79210579b4bc35b21f60843b811df3515cc0d81d665e7eb018
+619a243e72c29636b8d9366166797292ac7023cccacc9401999bedc5920fe7f51458d13eb772d6
+500f471416f079bee7c9bfc25a0858b10dc043cc9a219ab9a71ad62d68ba22432e1dfa7d7930f8
+73a9af0ceca0cc4a4667d1102a8a685adfdbc5a1b4cea2e9a94d1766ccc8f9e74213876f3d7bfb
+e0950006b11f656a37641f9cfbd0b23c19dcac6d9c2b5cf0e38d8a58ed42c7d37d88bb9a96ad28
+64fcbc6033bd464ca519c9e8b24e1033ae844ce27b866f2fe38b09d4a262867f4782f15a5a0e76
+2f76e1dae8062ba108e759c6d8f00ec4da4b4bff0e3b22b22fdc733b708e0c8ed1acc316d8677e
+488adff3fd5d912fbee47a55e583d814d6a77044767539c2a1b964f5a2522b482186ec9f957684
+f090862afac4707e5b48722a97df0d272c713ba3b611aacdbaa0ed665ce873979c55cd6a9dac4f
+b8aeca0b0cb0f6fe85e7c97088ac6f4ed2bce9a0d16527d001507702138709bcabdb694a61da95
+692e67999aa628b73837f53ca6892788ac702cd6eb52f8c79b92c866213a6126049797a48454b5
+3318cfdebcbe1c50fd139abe01c30feec51f0cb7e9d9a863250021dfe7c27786e88b6baedd48d9
+49dc481684e3faf67ca81ee76cfbd63b547d7a43f3ec9ad09b1bc9e31462a43245f40ee9f0cbe0
+70805a1abf940f2ed8300be39fecb86120ec4b0e680d890903458cb93153fd2ed736b87307aec4
+beb473ec4935bfb0b8c01ad84dac20d13b997a884930e3c6abdaabb083f6f66c5b936ec4624fd1
+d1ca39011688ef21faff4f69b93f7fe73a7ae036c3d15f6f5da6838536f3fe0f7543f3f9460b19
+7a7892d6424ba822cdcb26e2b3dd7ca75ad2710b9ab49c6d5810f68d1a0426987f1e462034ddb4
+aea10e8e04be42ea10cd8552670f9251994dd8e844245e97a5902b65d08fd41013de3f3cf0cd6d
+fec75852ec385747f789cb0d846d0d8f4f0c823fe8a6202101f2cdb1811cac9e719f54bffb04d6
+46ebf824a17db7d78137f4e962f3fe6a19fec02697503d1f5c1a467799d2c347e8f85395eb9bd6
+3f4e6a52fa05d4a3e25700b4de22c41d97c719cd5a7576a3dc797c96bf68c5ce7922a8fc928d6a
+a344fb67d4115cafa38e82f75f621c9153f7f2f9e5ab5817e000d5eba9a789eae7831e1a75a382
+c6181a130b0ae6aac0e5cec25c567f1c3eb72caeba74fcd4ab5da3b73412e76399a56533ca6044
+f2c2df96153ea47213cdc057e3cdfc8923b80543e5c5b226628dc0bece91e30fafeb8d4a860c90
+021c1a996d178c6c85e9be45f28edd3fba26d6ef2e486c477670a17494c453ff09074c083aa8b7
+4de9493f207b555c56e72fdb8867ccac10f060675e0393d1e5c6b2f44f08458dfa45cd4bdddc3c
+e3aeb5c7afaa73086cc7399ec8874f529e4af63bcb4df147edda137e552ca22f45ff9fa03ac41f
+724b870d8656fd9bb93690eeb0e7df81e6957e602a0159ebf6692fadbc46c9ded8ec229d9bb5cb
+617518127e557671723dd8768b1ee594ec29c4a096ec4fe6192ec5038eea033d0894c70de3920d
+1deac65b4fb001ed0c851779ed7154ef5a848257c973c7f02aa72c1067dd09b13575a33d313796
+9d683ebd38e8b61cf62fd3f4e3ce98c266e088aef330d9acb450ebbf96bf63600e83f13152eb03
+53801d2fca3e18eef4f1fd438afe54026028dfd703cfce0bca12b0d2fdba236918d27517393dc2
+ebd744f78e3dec0ce74805418f1a93252abef1ad71acc1809460a8dc42380086a593b8167212ad
+7ee18288d203244dd3a2025b8449c47021ff7620fb89d3ed41f8547bd5328e7ac7cf5f0ebfc314
+bd4afa8323d0cba57e98058af91ff4002edb452461e95eb2bff94e464bed868dc3014915a91070
+4c5740a1ffe4eb3caffe27c199f573a2b8310ef7dca5dd1baaee4eb5add21887d9b65246d93e36
+a72766e664b83245aea45114ca3c11b50d51d218eddd1fdade2aeabd385ce371734446745552c5
+322e029c892e227dcb3fd626cccdbb1731d4cd23057686833fc20906fb3640b2481fdadf09ee20
+e487556f5dafb429d648d74f57c8f6aa04f2ef121df2fd850667df1668f97d7216472070848408
+61f2627f31e8858bfe5851c35fdbb4a81e41645ceac4873fd2447ff94ebe8b83636578eaed2be0
+3bd8f283fb6832c10a917d9ad056ac7ce149186b5664cc52cab3939ef44f35b43bf33cf06416fd
+ff848179580a7c39732e7eeffce44f7b24cfb288534f47163a273f2a5d9f30ae802af8ca1dd90b
+b7149e3c3a3082fa471257bff78019380b1ac8238b735666c2df052ea0b436789bee7ad5dd407e
+9c20774d5ff3e0af9187e24065dc9a119cb8842c5f37421d005f27d787a611a8f52ce76aa34ee0
+ac7236905c28d6d9841415387be7eca5c533ef618397c89f3df4cb86ea2e38ec497e380efd1274
+3f6bc297629e86fd88cc269eaadd0dd63984e253caa270ac816df54077f7981cf1f1d5a77aa46b
+7538794d9d414db7f7eda8831fd123f843b4b6a963648b2f31696932926626e040cda63af93f25
+d4a6e304d3b05c171c7186f5ba239f9e2156a0e9d30fd016aafff969eecff0111120c07706f095
+05359f63199c3e19e8142bc84b7efccaa61b1f13828755bf18cab9eb638f17c3f20342f60c1e18
+50332c16c8d21c2640dbb93652c7cc6469486584f2e036160ed2334c5cbf3b343c9c20fb460fe0
+492ac14315bbe89139796ad76f219f2f78aa252aba529db54863fba815857b4369dbf510ecf4db
+2255912af8fb0a1d7c1a2d176fbfbbff0182b969c8b02780868d2267b49d78b449702c46d12673
+19d79a101cabf6afef50a912b2fcb8482539e49e919f3b1270599e8ccd1becd4fc4b973bf1d412
+764dcc3013c707039fc5db85b8c4759f7fb9be1fd2fc5d972e117af55ef2586b4441a440f35084
+0210186a5ed1e4019761f7b460cebf431c6d564322cc22362d93433f843166133fdcd079db0f03
+591ae83885345c227b918e762e71db2b5e86653898d20f80c18c7f811797cd7f4a0b3c6c5d3289
+c5fe808a7068f3d19e8c4ae145fb822d59d2344bd47dd56fc4f2c7237119a44710846bae73c9d1
+3db5f08114ae8fbf644831e81dec6206d933c007f15c0c0ca65091a451a3f4268529df3d047f8c
+04bfbd7d7bc02b76fd3aaf76991f6f0b2b4b6a4fb87dfb7281a260920f79aa6c0cd16bd15de94e
+8681fc684280948d6279ca994a078a261860c868d0a029c70f80903265db27ed97912c5a80e648
+aa078a321e5cb431c0bb2a9d21e9929a4ff4b1f9dbe980bf7ae713f76ba86fd6dfc798d7488b11
+5e7c30d1068322010037fc6c9bcc6182df29c66b2477dc0197f1ec7f48a7473b80a284d917378e
+89b79c9aef1e975fc3edc7c60ba3afdace73264dd561ad9478a3cbbf9858978620c79c09d660b1
+048d3ff8044dc2bf02d1282e396f5c6298c30f3116285c16d3262630330c4fea515f629d480bcb
+aaaeba211aabcb932c2c8c9cbb2d48092f69f11c221d9ca068c529213b4303e7db0af9ea0ecefa
+45fdcfa5478312aeee4e7ab6d393b8b578cc181bde18d1386eee5ecb8aa46d9c62eb8dac91fc33
+75f93917170a43c2fb48ec5bf00d15c5fcf1d55710b6801ba04b406ad183dff76e19ee9526e6c3
+8d5c2b084e8f36b7a9b168ff8d2027c20b0d79d120a0785a35f93ac1f2a7319c65e68a4abbfd0e
+e8a3e9b14b3c5f230482032323b501a82424aa3256af1f7b5de145b16848b9bdb70bccc4f83c23
+1aae58de03afd4b7d0c7cadadff17b2dbe285300606de214cef1c6241d2f2969f0b9741dc34d8d
+fdd30331d8fb2b12d3bffc004ad1e9bccaf126e96a5e340a89e8a91a9eb19ea03d4886f768ce06
+3c702f25f5ccc8f473f3a4b85fad95d7a92d2e3318f635bbd79a8a4eee3f1208e9e69a7d63de37
+3262d38eb8ac6121f3df1bba843a961b5d3e7f8735ff641ea99fefd347df900b678758080fe745
+538c9d5ad428839bb6840d084a49b2cc475319a99b33a178a4b4f24e56a9c2519e8c010f81de92
+5cb895a446c87b63ecea312c8b230151adf735c6b7b158a1d655e44e2f5c77c2b461b97e494dd0
+98fdea07d1940427d2a3f2585abf264bc4edefada3790a85e0889e90e45c38482909b802b8c4c6
+78e1129af4382e479e49a9e406e7120b85955936ffd8a40f41e91238e4d11c7e660b902897e974
+6f9948ec29ed59c91597ab7d2137149edc67bc432e470a404bb9e6b1f98bcfdf1d49389f828e3f
+35c203a3aededd8d4d3e6617c959d5c401fae6756223f2ff5b52134cc2804d20bb08498b8d00b0
+660fd27b4511a9a099a8487b7622184d781b47453611484da293aaa6b7e8124785991f755bbf68
+9c4cd86e573f40e4f9cce9ffb6c5a84a419e32002acd3392e677cdc2883bddc975bf0550a41e7d
+5623d745f389fab05918c7cdfc9f49327eb8c4a59fad6ba52b0f075fe0a2851fde85910cf5cc95
+90b7d7bea3a1a8a251e37f6a20205b946b01da9adba76d14506850b6e634ddfdb3c853739461d4
+28ac3349438634bc2c4577fa2a337990eb7bec05a6d9b90cfe70856680d5e822480f77f580c3a1
+e82b87dc2c2c554235da6133e79ad708786a8fbfc34d813f4e4330afbd5e03f7ef0875a7a07aa2
+01c7e71ab6a818afb9399ebfd88e1d438e5d4634172f2f7000c10112692c4e9f0273a8db1c559b
+2e8d66fe93521514d2896b7321372d441e1e7c63edc272b30b6735ae53ac1b08c352aced8e8e56
+9d3d3dc4e7b79c9a58310d03ac8d2760522cce13bb95bddbb22a13b13cfb78bbbf43cbee6adfb3
+33ea66621a5616442fb9eb4d5855eafb1573075650d05b9b36e80e8ee6e5a4115aa1234ef0898c
+52ba94d85072c4da759dc246ae56ea526be02430ffa280c4052cf73d6eb4b62c3282d829291772
+63931d89f27b1e1dc8de5ecabd3e348ae919c983913e6ea48b21bc0827807fba233c132aaf170f
+20b33ba72160f184a3df9b130e3bd09301e12d0b22dbf56ce6fc87ce156de4377498cad735a6f5
+e57840ebd7706ee44c6b44a9bc0120cd4f50720ba4b4f4002e11db98d7db9a31a5c300d81546ef
+990481b7f9c278f0853c05b0fe5ef2586b4441a4218a64a07ed2bd6c547de31987297af9e99f16
+ecc361ec2650cbfc0ca9b55cb8f5b11408d58fe29e46eb31a0537fe757800abd0f34398cef4e77
+362a140d3ef6b00e83e143656b00cd218db158d44f5df1c5976fe708f15e32642e629645f1dc1a
+3d22742637a809f2197ff9a60d1f58e74d0937f8d8cbf0b0de616809d91cfe77675bc90ebd5cd4
+4fc09ca0625e8cd6144b620bea2183744d33c42e535b4879ee3fc032610eab99688a6e80081516
+4ce529eab33e85cb2a84ca3cea8074039a5b0b9e2065fd72389d02c6608660adcdd7ddeb2c4feb
+5a32e3276025f5c3ff65bf4b01473897164745b05a4c1e1dbaeeb2506bd306e266e613b16b93ac
+0f869aecf140786a639f9856d2f47dfd448564cd6067590cd7c75bbe8b58eef67d2ea38c965e69
+c090c242e29f12dee8b4335b8ecf7ef341de3a30892c09ef87913cf5147ae0cc255e05eb602420
+ae22e8c2754976dc6ce94fc477f330dba72728449d459b2ecfecec62d0be91a9397b312a7d46b0
+cb7cfa2fc664397dbf9a50bcfbc63ed6fd6a7941d36a37a815cc9290c79fe24f19d1a5c1cf0671
+a73c6c22abb9525618c9a3a9909f1850a9f470d2fde679c254bf516641ef96f46574633a94bd7e
+c9890023100e55c6a51f1124b3dec6a7fd42f63499a1066d8d27a25819a7ca1a979e04a8f1fa55
+d4aaa3eb05d8205cf93fe5d372778e809ba05dfb1e0a1e60ab6d1140d4c0bd8e2db88e7d68eca8
+e3f3e2248cb6fcd2919c12d60bf4549cad356000877d0241f7f19487e8c2b17a522bac5a91f864
+630e2ea4d2f5b7bef4d091064ed22d2f597d18c9f04e2e2e1be2ed884cafd31231da6133e79ad7
+08400c02fa56a3f3f5eb56a713fe068d4cf564e7e20dec5cd4696759cc35d34fc0efce5bdda7c0
+2eaad828006036386ca3432c6c005aee97bc884afccd3b642c0a17f418e3f2e436dd02237531cf
+86ae391102b2023ae0913471b6797a8e71031412ac87b96a7173d5a56332ddc5811f8672b37795
+5fb5e39f90d787ed2b0cdb81866f79165c8353c9cc1f0924b5f4ab6bd5197ea6273aed03c838f6
+a78bd9c40eb8b71b436c0803bd569c3ae55ffac24dac9de63cf6f851c5e2199c11d9da77009e55
+3109e47298f63c44644470d768725db00743efd4b012665664b3f663da65c6329da22e64b466f5
+6bb45e7afa47e1d2e8680a49fb4948a8c424c175ebb3f221a458d75f3f84929ba4716c503c81e9
+baf81999337a0e74d9c386e2b46aa7ecaa0689e5b00465cc49f96f7003d7d0bd1463372602a5a1
+8bdf3e924493566ee07b37df97814292f85845f2cdae528cf8e6d40b1b4c7ab83c276f3d9712e7
+cd00e96f8139dee7bc8d17b48a57a39210ae727a8563319091fb1944279c1e670a24093b0d03ac
+8d4a479d2eead32e98af57251eaef7a6a110493471c97c04cb50fed0461db5d0f89df4f461b67b
+f479fac30463af0eb0a5c40b3ada200bda798ca929d04caca634d46b3fcfc12980c2ece9439363
+ee588b4cfbfe1adf3520a28209e59572148f5dd6e4891d9bdfb2525b5d4e16fb79c13a65e1d687
+2b1e2ef1c761d1ba66ea1ca508c2a3bb27a32515269ed4377d1ee7ddc8c94c4078bc4b352211ce
+a13495326faf27554edfc3a8854cdd4ed995df19dedd2beaa478a9409a77f75fc1f4d57ac4352a
+faface9ad01b0b621cd8572b3c65878ea89e3f43269e8a0c3854c1454418f7b0b385044a15ccc1
+823961ceac3f500a09579e605f92f0bbc9f2d8168c50cd9e61b84e0fc17ad73c36227e22447b9e
+f1296f2fe302f23663deef0fc1eb759acc9dd1909f369fca5564adb3f0b2ed33428c75fcea4caa
+c27e7e2ebcb3f50fe19f3a3904eb94baf40c40bfdf8a787e622563a2cbf6c32de0eb309ebbc440
+2e31bcdce135d63f42f314928df9816b69e19f732539bd00b5950b5aa8fc6cb3bec0f14e60c3b9
+7423680fd8158fae9b076f3d25aa3fd81bb5132f9b1f150acaf2cbc0744e0d4f42b186af0591f1
+6f51eca0ab48aa2525dbbf629b4754f23549f1f9a88d2ec444c26f28ad54c9c388ed9c00c9b2f5
+a19a32fb8880c47ebb8016ceb36d0cc17489b3e4e552984ff17ec5388f14541759ec95282eaeb4
+a2d6e3192cebedc3526f99363024cdebb040b3da29dc93b58f6090f2f5bac6c67c8ea488b3f0ef
+f0d6228e20a5b865bb2d1870e9e76c9663fb32e899c3f1f03507e174af0e77433fb35748aba9dc
+78f419fab7c9e508f73824460a7fe6ee23fca964a2839043a19ecb24b15b6406769b703a3b831b
+d6c4c82ee4af7aad7e5295f85353c7d3476119fc664568089a3350ca986913f16002e2889a7f09
+1e02e3a400cf8b83ece85176f96fc41efa93d5d658f45ac91e6e566184cc0376ebc6c8491f09c5
+e6b12eeea7e4e445a8821e03a381c468bdef4f7074b631a3146675b53f7539b211e0b3b1885eb1
+73883c4cacf1223ef4f6dcaed8054c8738fc3dd1abf1566be3b4d8e99bc538504742ab18cb9e5c
+f97c9e5284aba6f591e2d87f00952d0388baee7c3ba1182073481edc7b9c0e761a85a1643941fc
+9a0bb39252d59c5b0abad385ca9296546fdb9faf2bd384db91bd96c59da8250df2b5d125d0b254
+6bc7e2c50ed4dc568d8f1b65b6f327842bed0e7e910e44ddfa302f5b30ec127aef3f02f11dc0ce
+8a94bd9a77c33c8e366ad06f6675806d7f4e77282f88376fcc8e1772e41ee7f1e9cde177b826f9
+069ed5c3d3d0b4bd54bd60e01d4c768cb47b27624853fd9e3760387debdb46d9dfb6da0f7afc1e
+1ca352f141b9039c6d2f3ee7ba88dbd5f1a0db0753962fad600b9245a3a6bdb0bc0dae1e65c3b2
+7bf95a52353bff9d34d860a5d9de8ea0547b9100c160b7b631ef5d8e2bdae77d7a915788bef9eb
+9111d4d7f60f0329462d2ea14a7da9289922a575fd88a52c1aa98cf1f4f34b705464336e3ab7cb
+09d81e427e3bf24e87bf7147dfc0c52e6c67205181ad234ca1ff0dedd467d4a13bf9afdc6167bb
+6f33a47f1ab1477ab32752c256286b25438259a143a6d95b2c6e5dd38dca03fd6c803782dd7dab
+0c7c0647f48a84a163cfec2ce098a2ee99d2b0d46e0afc85091c8402b36b41cc096e733d3e7252
+c2a4b58f54369f049d0924a6903f8ad3e1bbea39e25bfa05815f79eef03e1748b2d581fe117ab2
+e3c7a8f520c194b3c5e98fdea58f19b4e79d677ad54a7fa485a7a9712896618b0c33694a3c3467
+a245c52cd39fe9730e7c2634d298c1638a0c7109692cf258f8a6d0bdf578cd28f72e48176a9599
+93014e050a7d060918fde0a223eab19396cca9c895a0d5bb26eeeb9190df3f07e2d6243d7a8454
+04be35983125b133d37bf15f8c7cffc8ecf514969e23fabd262facea11fee56fa69682307719c2
+16b7881b733d24403eb703c288cbf898749f3e81fe24451e063b3c02cb2ef8dcfc36179a525662
+d47e0e6325b93d885973935c91cc6c52749a939d32fa1f5a74b689d06d161914dffba8335c544a
+d8c4e83522f403157b7aa2ab15593a7583c684e472df545d24a4894038195781caa9f0f49a66fc
+62fbd0a5155743b7c17c9e6ffae86076684c20a77b1e74abf75aab577b93dcde8c3ff60aed1a87
+ec006d276725215681e444c21acbb6318f41d175894c303738994c15099f4021950a8b389dc2ab
+91b74ed57317f7faf10f00bda6be25467f05676ac4192c369ce03bb374617ad5bebcc56ffc07cb
+5d8e7da3e17b7ab3d9d5dba4b8354c03a64f02be62ef5df14b9b9376e79a803423bc55c5cee397
+2f75faf61dc41d1e8415ca55d3cf7036121cfe771be80b697389c047c601dbb8548f0d58ed841d
+25531a41d8664730f34e2b187bbeb8d9c16ae7591ca61fb2ab36ff3b6782c7e97833827a1ff866
+44ae56f463956635883b55891a08fa707e90c392ae4721fdb0b2311f8cf00a4703faad8114b615
+eef9737684a3c53ca307abd11558ce0810db4d94a444fc6babbbe40f3fca201d7f66ed5f834d33
+eeb1189648d68efefb7af5a080f1b6297b75e7815b4680e3c4b2676f3c763fd9d28fd00374c2ff
+2697bb8b96ea13cebdf68eb17001c041d24e19c97d33d448f4d6aa3d50d8720b0377135f30b479
+d973ebebb93031aa1faee6c275b21cd88852d903f08e2629066e18bfcdfe736b208429a99f7420
+7fe3f156e82b16cbe3d401aaf8ea2a417a7ded77fc22d8f047685fb642b7e25a50c5141c1f1f38
+a14ce3c0b8b3447d8f48de07c687e4c4cf69204e85c6489a3cadf29ca7f2363308621dfd1f48ef
+e47d7fcb3f67441ce965f04f42b78d23500d25890201f30d13dc767cebd955da0ce6f6411001fa
+c35b8ff9762eeafda44864cf1fd2f8c5c006ae8afaea913ae1c75765e4d6d77b7e21a6d16daac8
+1366f23778d2c5b9a64872015bbad846c77d4a9b93353935d2b6e57b39ebbb02993c18f5228d99
+a76250b85311629162556dd299f7eb2479c705c6e477167faec90ace944145a22a5cdca376cd2f
+809ee685329d8ae45f3d29b2187bd4077b1e7c5889aad999a67759f2b649e82031f198bc592bff
+385a196f4b9943300e1c9557ccad85497b9f2c5ac963b85527302a1d7c42d5d5c8c58328318a64
+10df0437225eb017494c3aa09f129275a02d0f0d2d5e24fa35a6b0112435d63cc0706491cdb6e7
+5dd957789831d30481e3b8e52d678d0990202a4310255adefea4a4b48abf4b835d35c66f7f279e
+1d7cd4887798ef065d2218056e2374c03c99fc2e17a24a9e70b49440f5e20c8806dc23e1b1b545
+716dcea57adc5e40d7df2a7a259b559cd37c2d8fb1eeb6731601ccb46af23de0ba8c1628f4b88a
+9b2d468c96730bff946e66a5d200ae32702e6fa6c907ca03518731f60b1252a5cc2dd1f9bd9042
+8c2e0f0a7c54d92afc89333da6a83c324af0629a26996457d6374437d9cef97bb99eff0e98a22c
+6b0deba1062f3c48226dbc9a5899cc864b975bd1f082d7e511a5b4cf9c0d7f30d371f689da42f1
+1df7c18389941337b9c07e1cf5f5cbf33e400feb6f4aaee60a026da25d51a3bc14d427d37fbc1e
+64e938a4de50f52578768bc70ce533272db34369f898761aec2c8dda5931f895d28872ec6f209d
+78be4f4ab8da35f65697c57405ce7ae5541c9ff509d5762aa6297e7a0194059eef3a2ae5d59dfa
+d4e9807cba47217ba163742c83f8205052cd729ed6f8c452af9712dee557d4bf8a303209d36bdd
+db790812c4e532165f955c981339226c4ccdb89f78666953c02eb2f38c4cacff62da858e16feb7
+bd379b92d9420a26fe2a0aa0c71e0640001644137c538d2da78a5403cae324705be07519a4c612
+4f4e299c41497f23ab3c479ac8e309dc694cb84b693a40ef5fa7d4eaeb84e97643474253f982e3
+8060a81ef3deb08144992e048e8fe2e9719ee6c840e5be01142f4a62ff3f2f1b1d70997f1fcd18
+3c5cdc04d67e5f46f946eefd6abbcf0170141516c7bffc2a07efb440dce1ce888a5acbe4c407c8
+fa46e28d20e7774d2e374e224b991242df5a20cf3be574c410a1a88badb054b812e7f3ea575682
+e6a86792ff4ea12bb43245bfdf588df7ceae590954e88607c4201efb34b2a9cffaaa392ab52f72
+ec08de1424d2420bf7b82f2a0dc2aa083310b4a6f2a68ab5ee8384bbbf4ed9f932308c2836d6de
+8da231dee2b4f08790d1653490b71ad5d0bed41b06f659f8c3a771b82c8e58ec4e0a0c5a9f7f98
+74bc6a1479b918050f06e4d1b49232d8b44f312a5f6666b49e54389c18e7d89a399fac13ea6ea5
+84dd48ac68c0ee40d26e4f2ac32951a3aef14c503c7ca2d05701b756990b9809e25384b0815fe2
+bf5084ed21d8cdab1fe3cbe15c41e8a94336359df9ed3a43c529529a9e7f63d8de36720e108d1a
+9feb0b9ec91379b57d2ac8a6799176ca5d5956ab877d87050d86ab917689c93652b729d4746f6f
+34de32680d8ab5c5a4565512d6ec950a60f5b0b141f348d1934b4f3689640592f22d1c1cbcdd51
+16b204061afc1b8f15afcb06f4c44905d17b8e44ec96ca2888b34eb85465ed2b2620756ed963fb
+b9312883c8aaf4870c52eb032bb5cb7458b2fbd796b670e972f576dd3941c76cbed5c40b669f0d
+cb34b31d295010975536989bd2a479acfcf324fd549b3e41bdefd06f42492c36d8c0201d2526e5
+3ad34e552b2384e39836743766e384e5858f33ac842cfedc28022ee8dbefb2a2c3a408a6be8482
+6023124f7eec8295a2e1079480f30eb64479f2673da8f051267142dc54e88dc8dc4ef41036f1de
+1b9a198e5006f8336b29720288c9f2e545ec8663171a280273b1626f882c6894be2fa2532c2f20
+e4e24f1406c0627f9cc4021cac67c83a60b39f1849b483757f18ca956ec3bbaea96cb0e2a10477
+e69a6040dc3b5321391af5478fdded8730e825818d960c6f4a305d653a732f1c51c2ca3e3adc4a
+3722958d50a78359cabcffaae1d75ce79e72e09a354c5e805967e30ae708c109ee75ef233df667
+82bebc4c5dd9ed6ef0a50eb2693787576a19b42e70e3d0c073fdfe1b3562083bc01d9b38868e64
+b8ae90b9f3164e2a29fbb1f1bdfd8ffc2a842ac2f9801d4839c97f4bdaf1466038eb4b6975e777
+acbdd875beb59268f0eae6d3a03c2bb60bda0ffaaf77c4f33d4671ee85f301521557a6f323f1b0
+d060326fd87c60f65e4220b7fdf85de8f0ed64661fddba2efd3374fc45a507437a1ad2ab4938e4
+ccbe2411ffb70718397e156d24ab018436fecd39af252f3f9527397cdab675b261045194cb3d3b
+5aca47c98f1177ca1322775aa8c29216fb7f8ce0fbe698479abd173b9541fdebbc3cde6ad12be8
+16108a049d5462572544912ecac19e6e9fc6dc06160904e7bb14796e5becff4df3a8f645825c9f
+59fb419bfb5ced8e5b449a2e57adc9693e9d34e6bb5a600d16189bf146f3dbaf4f75d16b303a32
+2048ddc0de4a91156aa427f1b137a714f7ec2a4aaf612de4819dede79b78c90a86c901278125bf
+2999c9acfd90a866830d00a0f1c83a87cec69cb2f382c935bc571ea3b53fb22664be95d8e95d22
+9b9985d992dbc6439f0ca52762b3cd7a4a50973c17de473f987151687da95caf1457c524a4406c
+98bd025f353124da7e6389a921e56de4d1ca7901cb37f051b9d3b78709640530cd549c9907ee6d
+ef35aeb2eecd1c9a1a4ae7686da61b848371dcacd9f02cc320f29ef144a10803df5dc462188709
+a85504074b8439c1a3a7c253581597d6f94289e7113c678fae406b6586ec40fe51769903be7225
+9817704579212bbe802679ef21f7578fae78d1f8c29a5438b656f13d14ac4b10d1b48d83dd1ec6
+e569358f9dce2093f319f9d3663e331744bca142ec6b901acb9b5594ea7423072d96a61e523336
+059c1091823b03dc675671cfc688bd2062830e0edf7a5d400c680784691ff46bf4d8853a42c573
+20414a0c7b838bf2bc33726d8a61d11dc42005b909b241b553c37462ba057c30e7bdeeb3ec5513
+ddca5046dbf783c780ffccdc188b5890daf03c94c8bbeadd2e33e95a8bad7cf8c890753d607e1e
+74dda3963d32cd37ad2d0eb722498718df3827236d7f073eed7fc3c0ce0fb5629f08d4a71d1825
+c4d158ef364c8d69e8767acbaa92e1751a266718d67fb61b4a07c485cb887f04bd30468bd6ff51
+63e5e35c7b4bf6ead5db27d8690d7c54b2be107d8180396ba6046e8b1ec7f51a624a52ad2f9e25
+96df52d886aa0f5f0316fb0a6ff881ef3cf2a11debba86921f94b6ab18088a61ccb125c7732c36
+81373e4151094543ad56ba6b5b915ca303a753a65aa189f6d71bcd8ab565ab5696b9b0a2fb5b7f
+eef3dcd6ef83f859fa4be52c24c31ec711534577aba733b4f0ec2ca742f8bd658d7646e6af057d
+09b504f072b85e8ce75c51cdb3b17d34c06c1ca57b88e7ae944d289bcbc1f7ad27898a703c0b2b
+9e0dfc9f87a6b2c1d9ea2cc05fef8bffb8cffd8d8246ddc86e135a8361d36748680881d25daeef
+be63d60e449d50acc1718f1b6df6297849d31eecb6c990304d5e37d6bcd83c17c4ebded22db524
+66af31cdd0b576d69ed50ef359cb44507a79462b282504a48a4b8bbe2ef617837ae266e3ab90e5
+f45647ed6b99c6d8b6121f1f7771f75b76362f01bbe8a8b4268d4755c7b613b2faed3f108c29bd
+a855012eea6c22210f618b416e25534efec4c0f6d0feaa4ce7517802f2ccf54c96c4b5b9227bb5
+9f8c8a49fb435d4134dce397f41f3b6d295f6453b9483c3c1d2ffd47a3199b370f2f31b3772afd
+59d0135ee2970b66acc4a1a0d3a18be2b3cc0a8a261e9dfe32b1a63ebc7fd99af94cabd34eeafc
+a393ab83b5ced9b4e60f868e0b7aad2c2f21b0d84919f1c1598e6143440481e3c4a97750300f7e
+0660eb65416215d13d8f546f74c4700693327ae762ef61db4463f3644d534a3b4127c06741f0f3
+394f395ed384c4139b7ffc5b02185dd9e9fc4a9a790d91eda97f8262e6327779701f7440a27120
+c75242cb2e3c5570399c648b21da288d2a9d610dd11d5f9cfae9aa1caf9f05437bc137d8cf0e83
+272ecdec1c574ee6880505f03fb673c5ef5e31a674d1fa390de77900b9dc1fe4d73311032af31f
+6985bf38005fd3498d569de012062aa9c4e5baee3ee651230cf8f06f9562482e56aef639b4e9b1
+4fe104d7a4e59d9f59ed573a530fead02933ab576a225e00d4681821a6bd294b96c9f73ead9eba
+509ae5d9008007ece9e52dbe377e161c5b5e1fe556db12e167595ca9024a24c72e65527e3f4b94
+353bc5fd302dcd2343dfc038950bbc4c1249776e2561a90c9a5ca9c045f6812d9491a77d5f775c
+caf51b81f299e1f9122c50712fcd660bf649f6282aee3c072d41bfb68cc3aec648f2201fd414d5
+0e1375dc1fa058a80f54ef48522715a66f46b0da8861864fdf8e22f6e47cb32837b34ffdc5b578
+717a1119c6e7ef7566c58b373d111eb6c2bf1e9853d13c6223fac9ad3123765163c06dfc0637c6
+92af835e89ebecf5b37620104cb8f17851abfa357e02703a059d960d9df6f7fdbb168337708e7f
+919c04c802ea2e2b3a3babf74eb86e63de9b8644627d8985a1ad3b8adcca509f7a7debdd4634cb
+f42715063265b57d40eb7475423c3838359cb5a1fccfcc7874c782cd859ba71d5f114991e6fe5e
+557fd360943786fa161075b6783140ef30382f184be07a3b0bb616442a4a4007af227492a99485
+4b40298b9e9b4e4483dd252b2230f1f615a122918f32c3ea0a68805fcc73bca40be7f3fd94e698
+d0a65005a64dcbb7d97f60cab183acc86762873f18b673dc194cfce103f07cad09c8fd6b1f532d
+72cc86ea99ea24a21a41a2e09837093d5e1f1e3d74342cc4466d9ed9c1722d8665b00a9f254950
+c286426737b8690914d856ac20f1bf27180e6f9b00981bc8b3b165c5cc7e02a689dccfd58c1b59
+39186c590a97d04d5710fb5506bcfff05f8c6241c125e300235afcd2311d997a1369783a83ee1f
+040b8fe44804dd62ff7e5e77dbfd66177a934eaee33737d643092a0cf65e51b131a7ce8e502102
+aba1a8a68b8d95c5b0651c83214017ea2bd5e5a52d7e9d8afbba7cd22bbcaae087ead54739401b
+0d8acda7766d94d640feecca18f1829ae75da4aba8485bc9dfc9c67409c7d465f54d740ccc8ed6
+452872082bea2773fd5d646a809f5d382b69955db3a56e61849017f103bec6de80850132002216
+dfd301110250985d8241933cab0ceac16e90d929dda1d3169a8de16ca98aeec1bf59b9b4e0ec46
+0a2631f6d3ad4f84fde5b5dcd29d53afbc6c8a3adf15d234b13de3fce52689a74f49cdf2d9affd
+89a098d6fa7c0f93724a08324ed1ce7db85034bf4a67e7d0573db8e2fbd09e123156b2d066bccd
+9db05b87cf61545a6e219009452b7541aba3802cade07019910ced99eccd026725d0853f9f1597
+03f449d1e1d33902148421d34f132378dd12d9e79168bcd8dec5bfe47c862adbf7883e46dcf0c2
+41e068ca77b72ce9a73a3ac40f568481f62d9f36ede5f0264c4d8f9b2ce03e19e70a94d0e467a9
+832efbacffcff9efbcbd405432914bc36fcbd16c4c2aba631f8213239b69f183482bd292247042
+7fbab78cc598a57819dae5e3321efef1fdb44e084a4402b8cee480242e42dc09bbf208042dea79
+68a643851cac21aebc1ba2740ac999d965b43feaedc8c76a32ff8d4fa30e2c8444b01716af4878
+ecf291309cbdb70c5bfbd4134ad5d044a04a057405a91e1a1ef15980383cd4aadd4190904d5528
+e55138635714ec3f9d8e0fe1bd1e8ed4b742ea90572f1ac8d01e711c074a4125ea595fbce07461
+21a5d022d16b2125a1577850f6d1010279a5dbbf135eb8edcdcfc459b7b554192149c29327f86e
+477dd3d13fa5ae3a78cfb714c9a750067ba154407ef22158670059820c8041941f7ff5c27c016b
+20b867f83a9c8955dcd282dbb6f72bd2067dfc1e91373a3021be2be6aec5f90c8001878077eabc
+92639f5beb892bfded1d04136bb3140dafaeeeb31c21d8baf03715fc56ecc16e7dd11c12df0bb6
+8240772f2c59829482cf97f6a922c8c7deccd1a395e7ba2a1a855206c27630ae1f236606a3a9db
+a1404326b8b484d5d2564b480ee7422365234cef2609605ad9e24294ce5f5bdd61a479c33fe53e
+e8bf857e2d2a25dbbc9a1cfad3a5d7b2f1155d29367e318c8a82e1e0aa236b8442838e3deeb9f7
+455923cd769d28c1f780c0d3bffc275e0242ec975d2beb7f6bb5222b2cdd196e4ec94452050a76
+a4aa6352633cd58f461fd646f23758e343b5a386927b66ac6ef1acc84839f8bcca9f9f93f18cb4
+c6bbc663a951dd5211acd684ef945c10f156b5b6e1c182a7a580b3966716c334ddd9f78a404873
+a738ab6ccf8a335f1f6dc830d7d74e021bbca95d260b34d1933177e5ead9c2793d264c94e8bb27
+4b9712afb7862bbd8f74b4cce27cac9f29c086bb30162820a229e6d5c83410a8b876fad5b8a028
+abc067885b5cec60995550d35f60afd1da93e3dc14c42decd2b0800706a222e9e4b7d7bba9646f
+6a3ef9489dfb011045a6444cb599c62dcae4b11de7d8d98f8e58a9a4feba0e5f7301b795f4085b
+aa4a7085c5a438d0b784b21186787abf88b455f1e2ef19fbbb4501d5c69c22b219737aa5ceca0d
+0475bb6916685534448816d2791a31544769ff1152c2f2cf4c7cd3f64c6830522219349254d11e
+6ff2056a341648e9caf2fc5c6f48a8713448b4a0a7bf4f250df1f9ab9db798e0c5d2cad0116608
+a0a6190d8fa4f8e67f705d8dfc7cd8be652b13ec24beb159f97d22997094e38e90fe6e9f3d2a07
+ac92f1648c78e6ca7452481fb78dfefdb4399c62986b652e08ca4a9a4966cbbb572c4b2c8bedb9
+285372904836abcea90e91ee6fe8dbe8fcf718f4e0ce97b29be634db1f19b541e003409442a59e
+320cd38789b76eb79e35acb1e09f5ac2eee068664a0f505c61c07da5bbf439acd52feb4caac79f
+f05756472aada68f6aad5a1b760468859d9297e3ac4ceaf7830c09d3562c012d48cf7da5f93d79
+42a15fd76be4e90cb1a966503d32dd2fc39c1cd01c629b600ba6463288466ebf44a4df63fe2040
+67d6a39719ab32b5073d4bdd022933b5bb5652510919af2f90863be9f08dc507609487ebd7b796
+a3f0b029e13492cd0a1dc002d85b8da0d2ddf319f7e732ed40a87c984340976292119ab947b5f5
+b9e5e31e6023e22e6ef0d04bb9d9cbb7de56a1626c5925847300a6dbeed495b18deeb815807010
+52e4b37d9e0b346aa8a55621bf5dfe3bd1cbf2051e62ab1e1da21387b5f38c119934ffab0e8158
+107bc33f36a537996faf01870b85d5da02977ba62fb8e5d4878e1be660a6414c9084a3a5f05a4a
+2c3c1f311a589ba7afc5418e3b480c92f91033ea61d0a6a1f9e209226f2cab2d9c10e2b54f22e9
+a730ab8d48548cd28c3dab415b03a59345bdfa9656cbdf48363eb233dead8ed309268a629bbc3c
+6e2d85eab15f3b769afef377e4602fee3efe33401eba124aa4d4593c5356214c59db31702f44d3
+3f89196e09e6e2215687c448c9615c69d7163b2867252de9771c9ee8a39587bb374d1b705d61c4
+2da4a8a7ed8ebd24d1062d377fb37fd84d5ec3eac25d5d39bdc91f7c820b9fe806984bcfd3c375
+3a607650a6ee4460a24906f75b38f2c442a65909bb70e7383f9e90a06f13fa2acf0a37e59a3118
+5b6f9437e741571dbefb518dd564140aab4c91d37e6435ab9b2b376bf6522f90b5660ccd1d7e8b
+82dc3a41d34e2c39cdfa05f1e4a7ebdd3586e69c6ccc4847e086052dc7d6cd4d8302c34f4f0402
+daf9549bdd83c24c44a68cc2e0c2635686c6e49ed8bd5675749650a79e40588f4315fdb9c187fa
+7b4956151b7123f36937b06fd147eb8d51a8eeac5461441d24afbadc7922cfc237823efff1a3e7
+42b336e84702189c648ab7078d6097d8fd5f3baec947d63912156478662aeda72a501c747a325d
+1227cd4093ffe9a931367dde46d65857290ade9dc3d8eb73e7149dacc34c08faa51f9fa39e0c13
+d14be58999496dfde61566e68f83135a0e43cab3cc6395217a0845423210cb032c63d56bae6877
+3991e91f186b198105f165723e08f6db39e889ef3f944d339886c0c6ed8e41c20c0743864a50d3
+7c281abf47fba6d08728aa21a833f22aead0bc38d211caf58d44d01e10c2da4065a3082e562e82
+e3f1def28b5fbab1e93cc3716256b98ce87e4dde9e93622e5ddce60981e89ad0d70d0fa8b1638f
+4c12ee82a601073f84ccd47b631781ef34da22b5cd35023f23c6fff02973f993d7457efe579da6
+4d7110867d6fabe6b41b97e9e711369232f98cac9975d56d69cfc98530e76ecfa380311854170f
+98cc43596a3d4019d08c25e59dbc3eb850e026cd484644353c125e38f199b22ccf0a502d675d5e
+0be2a4df28ea88c3ca6b939b4b19e81ab728d3e44648830f0ccaac81f705d098c127f07f56ca85
+50ceb827722d046ce419a2504d8d6740cf9ccb5d079f1086dff76bcef4bd20e854eed00bce0858
+522818c8ebae755857d51961a9c61ab5367445b621562c645664f6df9f63a21246ca26d21aeb97
+ab2b271003d5734719358b16d2af5cbc1799c88b899e3c964c453e53de23d02bd3137cc0c1f074
+70d8ffea99d6a27e835ac56c977c149dfd13de3c0c328f8edd67c1f95953b9892e0147a245ee0d
+4e5912c7eba0b810c0667b17b545543b0662d53be35c26192356522fd7db85df65e5db4d6573b6
+c0c0f5da3747e6fd6c4a041525f7e48b56ae420995938a2229c967e98c8256c28f3a99b0739f75
+f0f1d250db34ecd7abcf25b86e6b94de40d033d99710fa654fafc2adf0118f750a07aea2c94f20
+5cbd091eb2a3bbbff77253122f179395e088c6b7a9f06ad421055622a1cc0538e8b3f03c4dec14
+746a49b2a19bb161ef7d5da64a4562e3a0ad91e4ad5a052d74c1473febc4f186cd6b73d48a895e
+8bbba44657d00663d5e76686f65a7ddc45ab8194be9fcd289e170994d8f17d4847080ec3f0fc36
+f811035bde3970e330f1b654034faf87b01b9981330b3513c2f32e13a280b52c92449525bd879f
+684edc107a40c02da468ede54c9bf7ae72d4c314563e55d9d19496d0f80472b2f3c8398700bee6
+42314f87fcee7e0fb9e4500fc980e0a9f755c71cd9afe4b3946aa06d2ae458ea77080c3308f65b
+fa253674be7182dea45a8d2c029a570cb3914f7c7cd0cf31f9b537b4f2f7cf918c5e82c6ab36f6
+5ac444ce935e1d14f413c2c005ce388ef8175d7c8e7bfd68640c650385b646fd00dbdfbb9e0ec8
+3d93f7ddd486a358a8493a4327d11568d3145b52cfbd0bd5b4d7def679906fe1297a16908e16b9
+de0a13986d5ebf4f829c4de8eeab729480c1372c0b85c462d02d8e6bb0c45fb26e4d82f0152eea
+9b745e1c20e478ea50110efdc5bf0164a678ecf71278fb2bf0c8a53a99ec0f46029eaff9229108
+234fa1624b5e33f9272a232f64acd955839b942f8f8cd3f3e3871a443f685149bc5ad0083f6baf
+20c14025309173788aab5568160b31e7f7ab6f10f4033345656fe958613d626e8ab7091aae62e2
+150d7f854d5740f601c0756b4d04a2f4ced1f833042b4ea609a051defe8aed847795cacc657c5d
+de3331323d5f21b24154b3b2c991e3da5de77d00a4577ccc862f035c10f2c073f85b97fb489a5d
+5a17d84d9ca133a018a22788ef86afd7c1c8952eadc6cf5139605b19df95546e90a839440d56ea
+29625d57eba80472486cae74bd099198ab8619cbb6fcd652774b0a97806f5f83f6e8a109eeca85
+cc7bfd19ae0cf27336e00d98d130f932be9752cbb97a14a44fc6407b286744ff893a26ede2d28c
+6d5a2c2369388cd6a23bf8e102d7014b3944afea96cbe03735db0e6e4922d4c5b2b6add56d317f
+3532fc50a410cf19be859075abe70ed195996f9b9afc7b1f3b1a5d1602fc6d55d5171ccc345e28
+040625e4fabb286990116ff9dfdbbbd193d503d5ff027b0f4a3b124f2e0a1e428379ac6fecfa31
+3fd135a6f38da32b37b3d6b877e5148b55aa40567b78d69bfc59681acf8c871507eb03518650ee
+ac7270883e7003ab9ca8a2e531516c309c31f67a059349b0f603f584c6d91770ded8a825c6f759
+cb3128bb928cb1e671c1684cfa153a41e6e775ebdf54f25d11865ad5972e8bf3193fa4044fa618
+bfb88b621420c86a5a30b4716feaa63197c6081bb1f324605d018e8c63753fab6f972670cbaa9a
+4946b9c20fa42c6e52c9751654a3cd885fd9efe11600771861ae0d026fe0dbe642b073c91036ae
+eecfaa08a7d85983eb13828c3903c532c0829802ff8b45e64e39079f65a5b84ff91b65688eb31e
+6d5fc58cadc44319885bda8d78db2aab9fc4a268e3397d12d51ca0ffc79929344f97a6201c01a1
+83d2c0c2702049048205649b91a784c7095b8630b00c1ee0af742945873049981540863fe38a4e
+57cfc8647c85c069296284599f169506c9df019471e0ca8fbc9abf7d1af1dcec4802e72bfb1d16
+138585e451918e0c421966a52ac29c21aa3822870959543691460c52ee43517b8588c365888921
+e4560d3e28f72358325197f09baea07fccf9d10b238659be645e0bcdd5e76534b21b52941a1e48
+267faae6abd43149987eb5385b44a422c0d6eb37c818542c3553452c97e016c26d38a4c0b53ae8
+b156167a5e11b861b44bc488bb2bb0cc652e3a1d12e616a502d1fcf31bfdcead55e2fdffc121ce
+85f525ba491feb547a3d16d85f65ad30e430dca5c603685abe8484d4c4144f91c5595a3fda9351
+e17f00eeccfcdb2e0465566192b23a9a78c14d62fdb3b1963c780f6855dd73382089094e921ce0
+9784e1f5408c620f6481d300d9fa6f8c23876a49281b0d425090497b767614696424dcecad04f0
+767bb7601b99dd3bc5cc14d2dd77c09101fbd3b6e725e5c68ba66a5a371fd6f3ca6351ef075645
+a3c03492f7fbfa225a5f3e01b962177026d94e845953d5781064633edc41fcfed874e011304723
+a52fe8ebe5d6efc5e69b9edf735067ba2d3ef221ee6244034df2469afb6056dba877ca9850d4e2
+0ce756a79a38e74b356019de03ca6651e54d1523e12ba9d9dd8e44dae7a920eba8784607fd0eae
+b0b456bad6e739e264aa0a3f4d5cc5584e072cfc8e0a2b949b4102d14fe3bbcd7ded2405718b0a
+7cd41deff91bd415340d6de94797c53cd734d14a11be9fd9de57cc35175f24913e96f95315ad3c
+66ee102176e59a3b669c0b992d1b6c3cc131b33119eca4fae72f7553cb977dcffbd5ea29728ac5
+a645eaab33042a0ad86e8b28fbdf79325e28c3801cd0f9d8a2b563aaebcebfc6540a3ea351caa6
+01ba8e5c5bfed770d61d7366f96d6bcde2db981b51e38ba35237ead55fa9c1cc2b3381131c1dbb
+39ddd7229d06e4b9d203d066666c8ad6aaa1a6df0d346f843205c41a95f72df3027c9e6486a008
+8f8f8e7c9ef820e2e80766fc706c4df71ba5801863b29a917a16abcd824d9a94c9081208685f8a
+4398004d8afa25087ba3fc81dceed46b7d6fc92d3b9557514899c5c97114ed722616b477ccfe4f
+4e1faba32e6a24a091a7a1067628ecc8c421f8a967c6e0136a9c23ef642100eb91c300975d6dc2
+c09da077e24fed0aeaf2876b91d0db63c4e347afd558f61344eafd38df995bd98fcb720ce19023
+c26e0b1157e299e18d13fc7715bc1141d449f05fc6bf234ab5af157696a354495e45a818f41a00
+7e601b49500e7554695a4c21c8f6fb67d7b81379f6d3abff7b059f277e48c0291852c6af3e9d41
+2526e6b23653e0283af4ff8f06503ef135f552270f04d735cc21fbaa059025e7e32cc7f03bdc40
+6a167be87ce1442f285aba9aab9f4ff91daed0f04eadcc8e98a6ef670263a76e5b77baf65f979e
+202658c06d0deaa83aeb577e4872a916a87b8aad9e9c9b22630d3b3b95b790f11f83bc6a52497a
+7c03264d70f55b6ee2ecf4f5af13d45df4bcefc85437ad3d9b78e565e3dadc353e972fc21ba6f8
+ce701cb9c1aae65b2ffd89d65075bd6a5ae8f195d13165969e08c20a6143efa43a31963e81805b
+584f93e1957713065d371abeef4ade6c3c024f37bcb2cc00895252332325359e6f7425665f46bf
+49ed14cbdd14a659876670d962d36aab38e75c47db93978cc7c30e5e33185c437cfc260caa8c3a
+f8a0fe39d955fe41a89344db01f0f33632b571832eff64ed70de8b5dcf90e73e908b274441d7e3
+4e14381c6a88bf71db27038b3037bcd5eb5a4a1c9b6067d2874b898c95dee5b114c10528dd3cd0
+4d4127190405f89ad7461b66eac5bb976c6eb433a43db8847ab105a9d6e004c1d08e17ecc40286
+2aeba56fa63297c5dab64a0f3dba016a5af5c761de36c9bdf0b375c0bd6fd3c0fa3787e362103c
+3f96d6d1bca0fe0b3fa33c034f472204cef2949742fa5b973d21b8af8e7c1ede70cb40860f7a58
+ac12a7709be24ba724166770215440b0dd64dbe6af369ec9fc0d82e3c7a597884e4330109ab763
+1b8f8a62f0ce7dc17c9919d55bd997497b66e4089b640ada46e454b4cd90a45a5805eda36ec5db
+69ca53cd3380d2f59c9cc4c6d52139cc33324161adabcf2eb44cfce47ba893bd4a53d4480118c1
+ba64436d3771ded3182b2de8306237012aea5d5a2995abcbc097e7535e259053c58c8de2a6c7c8
+d21ad6feec5907c2f6783541c68d00be43776a8e766d72a8fa8123d819d38f1f53f36bd48adcc6
+f7a1455cc87453f96e550903df9b819196a27061facc772b773dbd1444c37d3136a0d3158d79e9
+8a70e8e030dbaa42c202db2c0f8b03687f3d48b0f1783124024a5ebc0433990b1591459766cbea
+adebafa313226d839697f97e14cad664856368583b3e2e79609cac4c81afe602dd4200cfa43fda
+4f1e48d68b13f27533ab9f3fd05a0143378b81d7e5bc77eb8829d3d4e896af1c31ae42d39bc60f
+687306a10107727c8fc2fb98ad61af9b7808b6afccd125519cc4f98828e53ac23388ffa188e885
+c64a97439cabfeeaca48453cf4c6ac118ff667c21300d1c1ed5fef10e03f22e69e36248e476519
+a677fd224e37ac95fa3d9aeea5b2482da91aec2f5e7a2b57a84ec7ec8699fc6581757cfc8ed6ba
+b56242725f615304b3cc39c20e8dd67136f864ad32605b0ea9ab0d3662bb1ec7e317684a5a6afd
+8c3e83358db1392bdfb53dcb2d1624ba8772f701a3626967c0a543a4b01d70aadea4d1c2c86383
+c6eb9a722a6c833c0c5f7e92efd67ff6bb9fc72a9933a446ac965c26c72ab279c5755890d21a9d
+d9f3862582bdb1d9ccd1963a21bacd4be17d03819ab523f4473b20a87f120dcef914c72144e350
+ac33a94859de19fc1c45816ba504646b8b53410dedf6f2b1dd9b2f0b2749013aeba319bc7d2e1a
+dc99cbcff5d5ca41baf982ab06c3741fdde91b5ae8601be0a690a8848d30eb1727351734daa8ec
+8fc416bb425309b1232d290ad42ab8d97062812696531e1a5f6f87844f9ad9fe0cc660a7c4bb1f
+7c2d37ac95214fe2cb4537f763691698dfc6cb42aee39ca3e37910a5caa4bbc93b20d756593622
+3f79d777d14971397338d791989bdd842a25eb4747a45fb3d0d853000205301a799d0f1a597a34
+fad9c47ba0c27a82251b4d460f1de01fd0066bef08e4e6139412f5f7b46ca9c6fc7b5e1bff8f5a
+24498699cc168b419278a41f5eb1845b41a298cda7e237d3b149ebc1ebb02c33433c0cc8043bee
+875475cc389dfdb141fa31a67c9b97f2bd9afcdcbd16b0682b3da7c3fe91ce83fa0eee07e155db
+bafa26ff706798c07bc149d963c31bd8b3d9736a21d45d5d7761f6d93111a10b978b32a00b6593
+4ad2e4df3c2979ce6179aaa50a28348d3fd1743d482c16a2538eaaa17f6894fea19a21411ac73f
+f779f355ae9fca182a55d43f1080a60721ec087738c87987c4699e24c19172afdf0461ef5d7582
+0f2957bf75b1b396bf2a5462c7be537e67d28ddeb130863434670c75b36878888a430846e1f656
+5c9f0f529ad4e5d2386dc61f9fb0f4782a802c853cf5830763f5b9df5d77c5c3fef77c14fa64b9
+66573237b911aa353738e3ce2683d5a4612ddce6c8f50cd2c0b11912b7b09cb60590ea9b25dad4
+1363a82751aff5a9da8e1fb9643a84f3701b518b059e935a3199685c4bf2afa07980ad93fcc6e7
+733a7c1cdb6d9ea9756eb985041297452d74381a609bb8c3f9cc4c7b9ad09e57753602e856b551
+1cda7b0c9a5e0fbab6c9ef7d7e8d6751760312ba04d771974ce5b6c18d9de0d4bf76d5e5b6cd7c
+3706f94693215165881bf682231eb90cb99794177468d89877475bd1510e117d5f845f26fa3037
+62c92c2ced4c73a82afeedb275f48fb2cbbee350511004a58efd38e7002e91260e40f0792b73db
+c2158d542146aac2b860479bf6046c7e0e4edc26090205846fc8e333cc60a4aa3990290508b400
+fb02f09560be4f200d272c713ba3b615e2b40b9552cd70a67a098edf6f1bc4ea86732f1fcc762f
+513a1a004d39c1dd6d8d065024ad72b147c850945b7bfb29e830d4ef2e84d694422f1c89bc34ee
+502aca300df3c5a3e0ff8359668b11ea33ce14ef62cca8e2dfb8e5ab68d96a9a2552bf53af81e7
+8c84d96f3b1eda14e19ac07e75e3d3e5454200592a259bc950ccb398dc20862141083a5190c1b2
+cb0aa0d8d3e8a5a3b21004fd002040c4b3ea35de14ccc1ccd679d99308409a138c1ec129a71a1b
+b1443d1754f4763765b6409e8280e25b5965f444cbb2a6b78bf8541250b992e39d0a4c14ed92c7
+b9ca642ec4002946f593ae24cc194f41357a86b418c8451b342860441b9d2e33c7f8a81ecfc0e5
+630d23ee1fe752b2536ca59253c97aa18712f73f2b0335eeb0c2a26cbd98eedc669e9388314277
+18070324999284196cdbae8f16946b2bbf2b9f2a8e0a59284473831de3315a2dc0ae872b1036a8
+040d9c2a0c77a6c0c473c293ab7e19837fd227b352e8bf1bc817c76412f1d6abd47d809e989b3b
+2f89285d2693824df3191a6d1bc8c9853f2bf81b8c96607a02b31d23d7495a590cf3f96d7328c4
+fd74452dc16c2818512abf981c423d146e9d7a46bf2ef32a98dda4f6695f42532fabb8abba65de
+15bf69090b724a247fcdfefd6f1a83cc35a049d3324bd39816f4ee13a5a38da73a3c3fb031daf9
+bf78fde0f8f6bdd0e897a3b24e090b54a955b232b2258e5f2bfbfbe13db81f6abd243d73e3ff7d
+5d21527541ce6258732e85baddc7e56dc1ae4b2bdead6d8de14b406a7234ab0c0fb1b6f129a787
+7adb864cfe9abef498ea89232ee6639c0cea4dbd515a7a09aafbe65d04ec923e1200fcce3a2f68
+4c07f202273eb6a93f7ae0771e7115385296132be25b258f67273c5a0f28f98627abf77751b786
+0e123e4a4e70422114eafe03c2606f854588ef418312650f11393ea15bfa6337b955355a183573
+948398e4438b3e13fc83a36f2d86cca04e6787f6a0b29bfbb9aba924f37f5174e3ee892d16102d
+37b14d7743d9725ac7367217425cf6263f30097ef995d81458db1357305c6044d6e490d9631e9e
+e456db83af1d454176174c786a03a7771b02c10daa800cfa6819f878c871f0b3230e5aeb87d8e9
+b5d0e701fc2dd78a2ef5f9e3f0e060eeafc7ebeb813d13d4d77f1130256ceda94dd73b6e7b423d
+7f4c0c55f3491bbf6153b106b1316b9eb2ce72b263f05fda150b748d74b05f238982702f9564fb
+43259e9fd1f77d753f7a9bee8d81b2ea2d5babfa686d76582857a1a2338a5f8c2733728fdd4adf
+fcc90331d2670c260111b76369299e8f79a9570d277107c81fbd22faf23d821471f8359f13980f
+282516b7800ba8ecbac26e646e401a4d7a644fc3851749c5d19a915fb046bc40de6256a24184d6
+66de6f54e6855060071896eea3338fbea7771f129a449e5bbb498f5edf7dfb723d4838d670b76a
+e2842b726e757d534c24ebc471588ea38760f07b59c9af9649132871a23ce328acfee7f583f7ff
+0486e07187a3d4942aaa9e6a38c61543299873ae9c902dc5777ef58d396b5feb718509da30302c
+a268a9fe75e8343ea5f4da3a39445369280cfca5442939a61f82f24b15bfc71d2e1b2880df0117
+3232527227875329ab6069618cde196f153e7ec3b1dc5fa627ed4f49a43550d02cdd80cfc131d8
+6dfd6ef64530f16be3c08b2fe804ba2c8b8ef512bac05420f7809507cdc6aedbfa690c85a1bee6
+f424799dd0407f40e90051ce3d6b1020719e059187a78047533060ed3426bb7c314b179b608fdb
+19f181e4cf616e0eb850c40885f2e1d9c5afa60dd6480166d7b227b731c8491237112df20561ef
+85e4a3d2074bf8ba61da1e50699e9f9aba612c8a9a536cfaf7c9137b08aeee41148f96118a43a9
+01722f64a6457937eb18f9733fc353987b8e1fb9da5ec6c7229dad8d045654bcf4426f7148ef19
+42cd42954a8e5e5767ddd899f178f6f2443b93be25d5d61b9c06e68d653ba56f1506a88f9439a8
+96b3f604880099548ab0dbc39b26237dd1bbf9c1858716d858b94377708b44d800b95f77ba4f63
+577d1758719e208c1d4757e53eec9ad4e1919e197b4507d1d43355c142e91c3d4d80064fa7fd5a
+85d7c08f43cdb63e507726b4378853d6ad68ecc29592eef5a8b72869a2164552ae622f3f02dfa6
+cc2b5452898943fb90521daee4b1679df0d385b9ff15c9ac6c120b30626415ed3415d06608b8b1
+82f3efd579a539771a2af421119c43a5444f187b55fb3b8668eafbcb63b919a2e2152aaa0d6261
+3c37ca5002c6daea891411cb46d58d815d7f231678185a0ea2b59ceb1030a8a9959f3426a66635
+2ce86ddb34220f43b9f0695747f65b5c7d0c0bdaf97f76a67c396f24f5c3d277a375744310a9f0
+9dbe9f4501739523f301d94e6519029352ff5c1cced0d6dd89af38c49d8fdfadbfc0baf374d259
+404ce7bfd2bf94a09a02e3463ab9c6d975190944acde85894ca4537a35ae86e26af1bd5e5bb7c7
+d24e671bd182153a5022047bd8c138016aa85f3b7b62bfdbc06ae4dbe5e37528d6c6432b3db333
+a1347a09838c17b5de1b2f9570c33e7580978d48effc18fa8e0fec834076990e0d4b8abaa2c336
+40801153c5ffc858524015d49008574cf40c060b751c67395e8d39952b5514463241e8aca46f92
+701b889780db90362ca74b5d13c5f9d3362a0b53d2dbaac2c54836e4e42422aa713a20a5124ee3
+6b353631a3933a5bbe368b0c4fd93aac08fdbdd55759778a0b7ff59a185e2f9162c0ab4ce98bd3
+7fdc7a85dddcddc3d5eba60201668eda23e041e6920b10912d251171fd3fa5bdbeae378e996d03
+9c7b07bc4aca72e81625f6f816a2bb469d2458518988aaddceb796926d796673c030554e704bb8
+84ea1888b3862d67168d3b4f8963ef3aa7ce90d50fd2267196fd48d9da3048bc21a6457ab6fd75
+4af570d7370bc65aae9b7d5de59a228125b9b0223c39bfd4b8989cb5237672c8b2b9400eeb970c
+0d0f83028c8749af957758845c53e7f949bd0e3c4a5b6f8f564931b9266e4e5f4e658d7baaf8e7
+c6bf1625e260a4a0cab102e9f1c309be78080641d16401d3b96ea6a1bad182bb67c081ce6112de
+8aaf15de79aff4a82504a483e4aced4d76ef0328b7444abe74a15073abcbdecc42dda03e97a34a
+a7ad996e6357a8b6fb9279bff5d37c7a141d6aa05cd423836a596b5d431c5e87383c0592fda24c
+36c577675464183c9a8564d46bb5850b90238f6d6933a41c9ae06382131e4d4714e23b6016dce3
+ee6d953c753a9984eff622be973087e57e1d8bd2a87924665ce31512b579db865795a1c38954bb
+1ea92869a81d8dc6a212d4402e6742ee9a23a4a3040e48095fd56a826650650a1b62f577e15a26
+7d9468fa41ae494fc7809d93318fffc0d27727d4b2f13d100a437bd00ca81d5597506b34f4416a
+472ac1eae67a8a68ebaab789f7600505441f797f2330927c06207480cb4f4b378ad4f6df79e815
+ecbaf4fdd7e616b12caced04f143cbf5d64bbbf0fbb1afba9d851ee90a88dafd24352f67c747ba
+7a807e635c86fcaa3ae1dc93276bdf6a0cc2902a888d9c73132d3bd77710fc61246a9d54ef5123
+58ecff5d21fe7bd84f89b8bcf07b7c9cce6786dd822c9cc1ef02f9683bdc69415d8fe57f6c9e36
+0f6a178fc32f34724a1c95d07241c7de5f269b01fafee2e9408dc10cd2c7f50d6f174e928d8957
+754f4b68e12a93807385893c817095dcfbaf7af55b94d19e7ec3581bae7119e878b269eb62d4d7
+3c8c1b7c5c6ecbf575c8b55a3d6ada0aa27e30c04ee6b7f67e7bb073c2d561b9da707a6172cd3c
+db63cac1f4bb4d1100c775052f9c3f9107d54ccba8b08ec6f1579f6481699154093c4b3e8ba17b
+c998502d2cc886c5c81822057487faf00e266765dd99a6a0140f0eccbfffb8c99981d4e4112c2f
+56c8cf4e76116cef820f1edbe4de2c0b7c8957d2970ba863ec865eb1bf4ee7cc13683d8aa834bd
+8fbf048781a91d19d33388153dbd86782ff7732745956878465c16865d9c99a4948819a1a73b03
+b83c79c3aa5f688e89a26bab6891c09b66fd5febb3c815c8e7c1877c9e1d2f8f4666223e50935b
+3d242279acfaf44d114dc42b1dce479783ceb30e3c6c91f222226f15df7e602230ab50e8de8a54
+8578aa767be62e0da26b9df6be4a0740036be511360426b47bacee5e60523bc0dfd287efd1c60f
+b3da1ef1f1823ee28a657d653cbf045dcc51a7d390d065876f1faa289944b1972aae9c7a467069
+8ff6881673c66686d227b19d034385397d5b9992862791052010cb5b289cdabc141a725a2e19e4
+b42a54d2f2c9902b06187ca5bdc576066a83b11862f515e107e552e5357a2626cf75feaa2a02fc
+674e29b09378a5129bdba5bbe36ac862d5861407007081326ec7d9f70f471ff00cf1e0c1f0724b
+40bb19e0fd7c25002df0748329b45644e63701bb1e9fd5c85638318179162f51e34e0f9686ebd4
+d9f6b713b890974e09c2757a1e4b25cc5f95b02dff03b8cb9f2ea31dedf932c2bdb7859b10f639
+4b99e0e7cfafb5a480595da398f012cfdcb09b1bb96f64545f462baaead5f15b817d749570aae6
+35d6d81efaee55e1b037cf5288177086106953b29fdb12c8caeeb4fb0a96ec86a50de0e547bb06
+a0b361fba5339c6ebe9aca816f07a549ca4ee3b8bb31d3ba3e7a98af59e4e2e68ead79908ae2e0
+746bc6c2eda89582131f2a8213c38d9d7d65
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+0000000000000000000000000000000000000000000000000000000000000000
+cleartomark
+{restore}if
+
+%%Page: 1 1
+%%BeginPageSetup
+%%PageBoundingBox: 8 9 354 211
+%%EndPageSetup
+q 8 9 346 202 rectclip q
+0 g
+0.8 w
+0 J
+0 j
+[] 0.0 d
+4 M q 1 0 0 -1 0 216 cm
+38 78 m 111.516 182 l S Q
+q 1 0 0 -1 0 216 cm
+139.988 153.84 m 228.777 154.266 l S Q
+q 1 0 0 -1 0 216 cm
+169.5 107.027 m 229.332 113.469 l S Q
+q 1 0 0 -1 0 216 cm
+169.43 100.473 m 229.332 93.641 l S Q
+q 1 0 0 -1 0 216 cm
+138 52 m 229.004 52.078 l S Q
+q 1 0 0 -1 0 216 cm
+140 19 m 229.004 18.496 l S Q
+q 1 0 0 -1 0 216 cm
+139.988 153.84 m 38.906 78.91 l S Q
+q 1 0 0 -1 0 216 cm
+113.527 97.328 m 38.906 78.91 l S Q
+q 1 0 0 -1 0 216 cm
+140.062 52.18 m 38.906 78.91 l S Q
+q 1 0 0 -1 0 216 cm
+140 19 m 38.906 78.91 l S Q
+1 0.737255 0.411765 rg
+14.906 144.09 m 62.906 144.09 l 66.23 144.09 68.906 141.41 68.906 
+138.09 c 68.906 136.09 l 68.906 132.766 66.23 130.09 62.906 130.09 c 
+14.906 130.09 l 11.586 130.09 8.906 132.766 8.906 136.09 c 8.906 138.09 
+l 8.906 141.41 11.586 144.09 14.906 144.09 c h
+14.906 144.09 m f
+0.964706 0.498039 0 rg
+1 j
+q 1 0 0 -1 0 216 cm
+14.906 71.91 m 62.906 71.91 l 66.23 71.91 68.906 74.59 68.906 77.91 c 
+68.906 79.91 l 68.906 83.234 66.23 85.91 62.906 85.91 c 14.906 85.91 l 
+11.586 85.91 8.906 83.234 8.906 79.91 c 8.906 77.91 l 8.906 74.59 
+11.586 71.91 14.906 71.91 c h
+14.906 71.91 m S Q
+0 g
+BT
+8 0 0 8 37.8 134.287988 Tm
+/f-0-0 1 Tf
+<01>Tj
+ET
+1 0.737255 0.411765 rg
+116 204 m 164 204 l 167.324 204 170 201.324 170 198 c 170 196 l 170 
+192.676 167.324 190 164 190 c 116 190 l 112.676 190 110 192.676 110 196 
+c 110 198 l 110 201.324 112.676 204 116 204 c h
+116 204 m f
+0.964706 0.498039 0 rg
+q 1 0 0 -1 0 216 cm
+116 12 m 164 12 l 167.324 12 170 14.676 170 18 c 170 20 l 170 23.324 
+167.324 26 164 26 c 116 26 l 112.676 26 110 23.324 110 20 c 110 18 l 
+110 14.676 112.676 12 116 12 c h
+116 12 m S Q
+0 g
+BT
+8 0 0 8 123.120117 194.96001 Tm
+/f-0-0 1 Tf
+[<02>-1<0304>-1<0305>1<03>-1<0607>]TJ
+ET
+1 0.737255 0.411765 rg
+116.062 170.82 m 164.062 170.82 l 167.387 170.82 170.062 168.145 
+170.062 164.82 c 170.062 162.82 l 170.062 159.496 167.387 156.82 
+164.062 156.82 c 116.062 156.82 l 112.738 156.82 110.062 159.496 
+110.062 162.82 c 110.062 164.82 l 110.062 168.145 112.738 170.82 
+116.062 170.82 c h
+116.062 170.82 m f
+0.964706 0.498039 0 rg
+q 1 0 0 -1 0 216 cm
+116.062 45.18 m 164.062 45.18 l 167.387 45.18 170.062 47.855 170.062 
+51.18 c 170.062 53.18 l 170.062 56.504 167.387 59.18 164.062 59.18 c 
+116.062 59.18 l 112.738 59.18 110.062 56.504 110.062 53.18 c 110.062 
+51.18 l 110.062 47.855 112.738 45.18 116.062 45.18 c h
+116.062 45.18 m S Q
+0 g
+BT
+8 0 0 8 121.984375 162 Tm
+/f-0-0 1 Tf
+[<0608>-1<030908>-1<02>-1<0a07>]TJ
+ET
+1 0.737255 0.411765 rg
+115.91 119.16 m 163.91 119.16 l 167.234 119.16 169.91 116.484 169.91 
+113.16 c 169.91 111.16 l 169.91 107.836 167.234 105.16 163.91 105.16 c 
+115.91 105.16 l 112.586 105.16 109.91 107.836 109.91 111.16 c 109.91 
+113.16 l 109.91 116.484 112.586 119.16 115.91 119.16 c h
+115.91 119.16 m f
+0.964706 0.498039 0 rg
+q 1 0 0 -1 0 216 cm
+115.91 96.84 m 163.91 96.84 l 167.234 96.84 169.91 99.516 169.91 102.84 
+c 169.91 104.84 l 169.91 108.164 167.234 110.84 163.91 110.84 c 115.91 
+110.84 l 112.586 110.84 109.91 108.164 109.91 104.84 c 109.91 102.84 l 
+109.91 99.516 112.586 96.84 115.91 96.84 c h
+115.91 96.84 m S Q
+0 g
+BT
+8 0 0 8 115.523438 110 Tm
+/f-0-0 1 Tf
+[<0b>-1<080a02>-1<08>-1<0c0d>-1<0e>-1<0f08051011>]TJ
+ET
+1 0.737255 0.411765 rg
+115.988 69.16 m 163.988 69.16 l 167.312 69.16 169.988 66.484 169.988 
+63.16 c 169.988 61.16 l 169.988 57.836 167.312 55.16 163.988 55.16 c 
+115.988 55.16 l 112.664 55.16 109.988 57.836 109.988 61.16 c 109.988 
+63.16 l 109.988 66.484 112.664 69.16 115.988 69.16 c h
+115.988 69.16 m f
+0.964706 0.498039 0 rg
+q 1 0 0 -1 0 216 cm
+115.988 146.84 m 163.988 146.84 l 167.312 146.84 169.988 149.516 
+169.988 152.84 c 169.988 154.84 l 169.988 158.164 167.312 160.84 
+163.988 160.84 c 115.988 160.84 l 112.664 160.84 109.988 158.164 
+109.988 154.84 c 109.988 152.84 l 109.988 149.516 112.664 146.84 
+115.988 146.84 c h
+115.988 146.84 m S Q
+0 g
+BT
+8 0 0 8 120.648438 60 Tm
+/f-0-0 1 Tf
+[<12>-1<080505>1<0d>-1<0e>-1<0f>1<08>-1<05>1<10>-1<11>]TJ
+ET
+0.470588 0.733333 1 rg
+229.332 141.43 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+229.332 74.57 124 24 re S Q
+0 g
+BT
+8 0 0 8 265.767993 131.743994 Tm
+/f-0-0 1 Tf
+[<100f1104>-1<05>1<13>-1<12>-1<080908>-1<1402>]TJ
+ET
+BT
+6.4 0 0 6.4 232.083618 123.395215 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<05>-1<0604>-1<07>-1<08>-1<09070a>-1<0b0c>1<0d0203>-1<04>-1<0e>-1<07>-1<0f>-1<09>1<06>-1<10
+07>-1<0b0c>1<0d>1<0b0a>-1<11>-1<100712>-1<06>-1<04>-1<13>]TJ
+ET
+0.470588 0.733333 1 rg
+229.004 209.852 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+229.004 6.148 124 24 re S Q
+0 g
+BT
+8 0 0 8 275.887988 200.168018 Tm
+/f-0-0 1 Tf
+[<0b>-1<080a02>-1<0f>1<12>-1<08>-1<11>]TJ
+ET
+BT
+6.4 0 0 6.4 255.070801 191.819238 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<0e>-1<07>-1<0f>-1<09>1<06>-1<1007>-1<0b0c>1<0d0b
+0a11>-1<1007>-1<1206>-1<04>-1<13>]TJ
+ET
+0.470588 0.733333 1 rg
+229.004 175.867 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+229.004 40.133 124 24 re S Q
+0 g
+BT
+8 0 0 8 282.122363 166.183984 Tm
+/f-0-0 1 Tf
+[<12>-1<080505>1<11>]TJ
+ET
+BT
+6.4 0 0 6.4 256.133301 157.835205 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<14>-1<07>-1<1515>-1<0b0c0d>1<02>-1<0304>-1<14>-1<16>-1<0f>-1<02
+07>-1<0f>-1<0b13>]TJ
+ET
+0.470588 0.733333 1 rg
+229.332 107.852 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+229.332 108.148 124 24 re S Q
+0 g
+BT
+8 0 0 8 276.439868 98.168018 Tm
+/f-0-0 1 Tf
+[<0b>-1<08050312>-1<0f>1<02>-1<07>]TJ
+ET
+BT
+6.4 0 0 6.4 232.083618 89.819238 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<05>-1<0604>-1<07>-1<08>-1<09070a>-1<0b0c>1<0d0203>-1<04>-1<0e>-1<07>-1<0f>-1<09>1<06>-1<10
+07>-1<0b0c>1<0d>1<0b0a>-1<11>-1<100712>-1<06>-1<04>-1<13>]TJ
+ET
+0.470588 0.733333 1 rg
+228.777 73.438 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+228.777 142.562 124 24 re S Q
+0 g
+BT
+8 0 0 8 278.997363 63.752002 Tm
+/f-0-0 1 Tf
+[<11>-1<02>-1<0a>1<08>-1<11>-1<11>]TJ
+ET
+BT
+6.4 0 0 6.4 235.087988 55.403223 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<05>-1<0604>-1<07>-1<08>-1<09070a>-1<0b0c>1<0d0203>-1<04>-1<14>-1<07
+15>-1<15>-1<0b0c>1<0d09>1<07>-1<020b16>-1<0f>-1<08>-1<06>-1<170713>]TJ
+ET
+0.470588 0.733333 1 rg
+58 34 124 -24 re f
+0.117647 0.431373 0.588235 rg
+q 1 0 0 -1 0 216 cm
+58 182 124 24 re S Q
+0 g
+BT
+8 0 0 8 111.789378 24.315576 Tm
+/f-0-0 1 Tf
+[<02>-1<0f>1<0908>]TJ
+ET
+BT
+6.4 0 0 6.4 89.22844 15.966797 Tm
+/f-1-0 1 Tf
+[<01>-1<02>-1<0304>-1<05>-1<0604>-1<07>-1<08>-1<09070a>-1<0b0c>1<0d180c
+0d>1<18>-1<13>]TJ
+ET
+Q Q
+showpage
+%%Trailer
+count op_count sub {pop} repeat
+countdictstack dict_count sub {end} repeat
+cairo_eps_state restore
+%%EOF

Copied: short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.svg (from rev 18641, short/3D/PyLith/trunk/doc/userguide/runpylith/figs/hdf5layout.svg)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.svg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/hdf5layout.svg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,567 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="450"
+   height="270"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.1 r9760"
+   version="1.0"
+   sodipodi:docname="hdf5layout.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/brad/pubs/presentations/CIG/diagrams/workflow.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend"
+       style="overflow:visible">
+      <path
+         id="path3450"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend"
+       style="overflow:visible">
+      <path
+         id="path3456"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6,-0.6)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3438"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible">
+      <path
+         id="path3432"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10000"
+     objecttolerance="10000"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="2.368022"
+     inkscape:cx="225"
+     inkscape:cy="135"
+     inkscape:document-units="pt"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:object-paths="true"
+     inkscape:snap-bbox="true"
+     inkscape:bbox-paths="true"
+     inkscape:bbox-nodes="true"
+     inkscape:window-width="1920"
+     inkscape:window-height="1138"
+     inkscape:window-x="-4"
+     inkscape:window-y="-4"
+     inkscape:window-maximized="1"
+     units="in">
+    <inkscape:grid
+       type="xygrid"
+       id="grid2383"
+       visible="true"
+       enabled="true"
+       empspacing="5"
+       snapvisiblegridlinesonly="true"
+       units="pt"
+       spacingx="2pt"
+       spacingy="2pt" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="connections"
+     style="display:inline"
+     transform="translate(0,-495)">
+    <g
+       inkscape:groupmode="layer"
+       id="layer1"
+       inkscape:label="labels"
+       style="display:inline">
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 47.5,97.5 91.89655,130"
+         id="path3475"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-end="#g3443"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 174.9868,192.29999 110.98607,0.53258"
+         id="path3469"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3403"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3436"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 211.87668,133.78369 74.78604,8.05424"
+         id="path3467"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3398"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3429"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 211.78514,125.59201 74.87758,-8.53923"
+         id="path3463"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3398"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3422"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 172.5,65 113.75607,0.09784"
+         id="path3461"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-end="#g3415"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 175,23.75 286.25607,23.121945"
+         id="path3459"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3388"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3408"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 174.9868,192.29999 48.63501,98.640015"
+         id="path3457"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3403"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3383"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 141.90808,121.66057 48.63501,98.640015"
+         id="path3455"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3398"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3383"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 175.0768,65.224976 48.63501,98.640015"
+         id="path3453"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3393"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3383"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="M 175,23.75 48.63501,98.640015"
+         id="path3451"
+         inkscape:connector-type="polyline"
+         inkscape:connector-curvature="0"
+         inkscape:connection-start="#g3388"
+         inkscape:connection-start-point="d4"
+         inkscape:connection-end="#g3383"
+         inkscape:connection-end-point="d4"
+         transform="translate(0,495)" />
+      <g
+         id="g3383">
+        <use
+           height="270"
+           width="337.5"
+           transform="translate(-126.36499,74.890015)"
+           id="use3215"
+           xlink:href="#use3213"
+           y="0"
+           x="0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3074"
+           y="597.14001"
+           x="48.636719"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="597.14001"
+             x="48.636719"
+             id="tspan3076"
+             sodipodi:role="line">/</tspan></text>
+      </g>
+      <g
+         id="g3388">
+        <use
+           height="270"
+           width="337.5"
+           transform="translate(-0.0768046,-41.474976)"
+           id="use3213"
+           xlink:href="#use3211"
+           y="0"
+           x="0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3078"
+           y="521.29999"
+           x="175.02319"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="521.29999"
+             x="175.02319"
+             id="tspan3080"
+             sodipodi:role="line">topology</tspan></text>
+      </g>
+      <g
+         id="g3393">
+        <use
+           height="270"
+           width="337.5"
+           transform="translate(0.1899943,-64.575012)"
+           id="use3211"
+           xlink:href="#rect3191"
+           y="0"
+           x="0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3082"
+           y="562.5"
+           x="175"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="562.5"
+             x="175"
+             id="tspan3084"
+             sodipodi:role="line">geometry</tspan></text>
+      </g>
+      <g
+         id="g3398">
+        <rect
+           ry="7.5"
+           y="616.04999"
+           x="137.38681"
+           height="17.5"
+           width="75"
+           id="rect3191"
+           style="fill:#ffbc69;fill-opacity:1;stroke:#f67f00;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3086"
+           y="627.5"
+           x="175"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="627.5"
+             x="175"
+             id="tspan3088"
+             sodipodi:role="line">vertex_fields</tspan></text>
+      </g>
+      <g
+         id="g3403">
+        <use
+           height="270"
+           width="450"
+           transform="translate(0.0999905,62.5)"
+           id="use3373"
+           xlink:href="#rect3191"
+           y="0"
+           x="0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3090"
+           y="690"
+           x="175"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="690"
+             x="175"
+             id="tspan3092"
+             sodipodi:role="line">cell_fields</tspan></text>
+      </g>
+      <g
+         id="g3422">
+        <rect
+           y="588.21448"
+           x="286.66272"
+           height="30"
+           width="155"
+           id="rect3197"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106"
+           y="600.32001"
+           x="364.18265"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="600.32001"
+             x="364.18265"
+             id="tspan3108"
+             sodipodi:role="line">displacement</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1"
+           y="610.75598"
+           x="364.18265"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="610.75598"
+             x="364.18265"
+             id="tspan3124-2"
+             sodipodi:role="line">(numTimeSteps, numVertices, spaceDim)</tspan></text>
+      </g>
+      <g
+         id="g3408">
+        <rect
+           y="502.68445"
+           x="286.25607"
+           height="30"
+           width="155"
+           id="rect3197-1"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106-9"
+           y="514.78998"
+           x="363.776"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="514.78998"
+             x="363.776"
+             id="tspan3108-5"
+             sodipodi:role="line">vertices</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1-7"
+           y="525.22595"
+           x="363.776"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="525.22595"
+             x="363.776"
+             id="tspan3124-2-4"
+             sodipodi:role="line">(numVertices, spaceDim)</tspan></text>
+      </g>
+      <g
+         id="g3415">
+        <rect
+           y="545.16449"
+           x="286.25607"
+           height="30"
+           width="155"
+           id="rect3197-1-8"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106-9-1"
+           y="557.27002"
+           x="363.776"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="557.27002"
+             x="363.776"
+             id="tspan3108-5-0"
+             sodipodi:role="line">cells</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1-7-7"
+           y="567.70599"
+           x="363.776"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="567.70599"
+             x="363.776"
+             id="tspan3124-2-4-6"
+             sodipodi:role="line">(numCells, numCorners)</tspan></text>
+      </g>
+      <g
+         id="g3429">
+        <rect
+           y="630.18445"
+           x="286.66272"
+           height="30"
+           width="155"
+           id="rect3197-13"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106-0"
+           y="642.28998"
+           x="364.18265"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="642.28998"
+             x="364.18265"
+             id="tspan3108-9"
+             sodipodi:role="line">velocity</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1-9"
+           y="652.72595"
+           x="364.18265"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="652.72595"
+             x="364.18265"
+             id="tspan3124-2-1"
+             sodipodi:role="line">(numTimeSteps, numVertices, spaceDim)</tspan></text>
+      </g>
+      <g
+         id="g3436">
+        <rect
+           y="673.20447"
+           x="285.97287"
+           height="30"
+           width="155"
+           id="rect3197-13-8"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106-0-7"
+           y="685.31"
+           x="363.4928"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="685.31"
+             x="363.4928"
+             id="tspan3108-9-0"
+             sodipodi:role="line">stress</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1-9-5"
+           y="695.74597"
+           x="363.4928"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="695.74597"
+             x="363.4928"
+             id="tspan3124-2-1-1"
+             sodipodi:role="line">(numTimeSteps, numCells, tensorSize)</tspan></text>
+      </g>
+      <g
+         id="g3443"
+         transform="translate(-214.43616,7.3355103)">
+        <rect
+           y="715.16449"
+           x="286.93616"
+           height="30"
+           width="155"
+           id="rect3197-13-8-3"
+           style="fill:#78bbff;fill-opacity:1;stroke:#1e6e96;stroke-width:1;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline" />
+        <text
+           sodipodi:linespacing="125%"
+           id="text3106-0-7-4"
+           y="727.27002"
+           x="364.45609"
+           style="font-size:10px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L Bold"
+           xml:space="preserve"><tspan
+             y="727.27002"
+             x="364.45609"
+             id="tspan3108-9-0-6"
+             sodipodi:role="line">time</tspan></text>
+        <text
+           sodipodi:linespacing="125%"
+           id="text3122-1-9-5-1"
+           y="737.70599"
+           x="364.45609"
+           style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+           xml:space="preserve"><tspan
+             style="font-size:8px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:center;line-height:125%;writing-mode:lr-tb;text-anchor:middle;font-family:Nimbus Sans L;-inkscape-font-specification:Nimbus Sans L"
+             y="737.70599"
+             x="364.45609"
+             id="tspan3124-2-1-1-5"
+             sodipodi:role="line">(numTimeSteps, 1, 1)</tspan></text>
+      </g>
+    </g>
+  </g>
+</svg>

Copied: short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.eps (from rev 18641, short/3D/PyLith/trunk/doc/userguide/runpylith/figs/refinement2x.eps)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.eps	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.eps	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,390 @@
+%!PS-Adobe-3.0 EPSF-3.0
+%%Creator: cairo 1.10.2 (http://cairographics.org)
+%%CreationDate: Sat Jun  4 20:24:32 2011
+%%Pages: 1
+%%BoundingBox: 0 0 242 194
+%%DocumentData: Clean7Bit
+%%LanguageLevel: 2
+%%EndComments
+%%BeginProlog
+/cairo_eps_state save def
+/dict_count countdictstack def
+/op_count count 1 sub def
+userdict begin
+/q { gsave } bind def
+/Q { grestore } bind def
+/cm { 6 array astore concat } bind def
+/w { setlinewidth } bind def
+/J { setlinecap } bind def
+/j { setlinejoin } bind def
+/M { setmiterlimit } bind def
+/d { setdash } bind def
+/m { moveto } bind def
+/l { lineto } bind def
+/c { curveto } bind def
+/h { closepath } bind def
+/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto
+      0 exch rlineto 0 rlineto closepath } bind def
+/S { stroke } bind def
+/f { fill } bind def
+/f* { eofill } bind def
+/n { newpath } bind def
+/W { clip } bind def
+/W* { eoclip } bind def
+/BT { } bind def
+/ET { } bind def
+/pdfmark where { pop globaldict /?pdfmark /exec load put }
+    { globaldict begin /?pdfmark /pop load def /pdfmark
+    /cleartomark load def end } ifelse
+/BDC { mark 3 1 roll /BDC pdfmark } bind def
+/EMC { mark /EMC pdfmark } bind def
+/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def
+/Tj { show currentpoint cairo_store_point } bind def
+/TJ {
+  {
+    dup
+    type /stringtype eq
+    { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse
+  } forall
+  currentpoint cairo_store_point
+} bind def
+/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore
+    cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def
+/Tf { pop /cairo_font exch def /cairo_font_matrix where
+      { pop cairo_selectfont } if } bind def
+/Td { matrix translate cairo_font_matrix matrix concatmatrix dup
+      /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point
+      /cairo_font where { pop cairo_selectfont } if } bind def
+/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def
+      cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def
+/g { setgray } bind def
+/rg { setrgbcolor } bind def
+/d1 { setcachedevice } bind def
+%%EndProlog
+%%Page: 1 1
+%%BeginPageSetup
+%%PageBoundingBox: 0 0 242 194
+%%EndPageSetup
+q 0 0 242 194 rectclip q
+0.117647 0.431373 0.588235 rg
+1.5 w
+0 J
+1 j
+[] 0.0 d
+4 M q 1 0 0 -1 0 194 cm
+42 4 m 2 84 l 82 44 l 42 4 l S Q
+0.380392 0.00392157 0.686275 rg
+1 w
+q 1 0 0 -1 0 194 cm
+22 44 m 42 64 l 62 24 l 22 44 l S Q
+0.117647 0.431373 0.588235 rg
+1.5 w
+q 1 0 0 -1 0 194 cm
+2 184 m 90 184 l 82 104 l 22 120 l h
+2 184 m S Q
+0.380392 0.00392157 0.686275 rg
+0.8 w
+0 j
+q 1 0 0 -1 0 194 cm
+12 152 m 86 144 l S Q
+q 1 0 0 -1 0 194 cm
+52 112 m 48 184 l S Q
+0.117647 0.431373 0.588235 rg
+1.5 w
+1 j
+q 1 0 0 -1 0 194 cm
+179.996 2 m 139.996 62 l 187.996 92 l 179.996 2 l 219.996 52 l 187.996 
+92 l S Q
+0 j
+[ 3 3] 0 d
+q 1 0 0 -1 0 194 cm
+139.996 62 m 219.996 52 l S Q
+0.380392 0.00392157 0.686275 rg
+1 w
+1 j
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+163.996 76 m 205.996 70 l 181.996 56 l 161.996 76 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+159.996 32 m 181.996 56 l 197.996 24 l 159.996 32 l S Q
+[] 0.0 d
+q 1 0 0 -1 0 194 cm
+183.996 48 m 205.996 70 l 197.996 24 l 183.996 48 l S Q
+q 1 0 0 -1 0 194 cm
+161.996 76 m 183.996 48 l 159.996 32 l 161.996 76 l S Q
+0 j
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+183.996 48 m 181.996 56 l S Q
+0.117647 0.431373 0.588235 rg
+1.5 w
+1 j
+[] 0.0 d
+q 1 0 0 -1 0 194 cm
+149.996 142 60 50 re S Q
+0 j
+q 1 0 0 -1 0 194 cm
+149.996 142 m 179.996 122 l 239.996 122 l 239.996 172 l 209.996 192 l S Q
+q 1 0 0 -1 0 194 cm
+209.996 142 m 239.996 122 l S Q
+[ 4.5 1.5] 0 d
+q 1 0 0 -1 0 194 cm
+179.996 122 m 179.996 172 l 239.996 172 l S Q
+[ 4.5 1.5] 0 d
+q 1 0 0 -1 0 194 cm
+179.996 172 m 149.996 192 l S Q
+0.380392 0.00392157 0.686275 rg
+1 w
+[] 0.0 d
+q 1 0 0 -1 0 194 cm
+149.996 166 m 209.996 166 l 239.996 146 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+239.996 146 m 179.996 146 l 149.996 166 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+209.996 122 m 209.996 172 l 179.996 192 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+163.996 132 m 163.996 182 l 223.996 182 l S Q
+[] 0.0 d
+q 1 0 0 -1 0 194 cm
+223.996 182 m 223.996 132 l 163.996 132 l S Q
+q 1 0 0 -1 0 194 cm
+209.996 122 m 179.996 142 l 179.996 192 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+163.996 156 m 223.996 156 l S Q
+[ 3 1] 0 d
+q 1 0 0 -1 0 194 cm
+209.996 146 m 179.996 166 l S Q
+0.964706 0.498039 0 rg
+44 190 m 44 188.895 43.105 188 42 188 c 40.895 188 40 188.895 40 190 c 
+40 191.105 40.895 192 42 192 c 43.062 192 43.941 191.168 43.996 190.105 
+c 42 190 l h
+44 190 m f
+44 190 m 44 188.895 43.105 188 42 188 c 40.895 188 40 188.895 40 190 c 
+40 191.105 40.895 192 42 192 c 43.062 192 43.941 191.168 43.996 190.105 
+c 42 190 l h
+44 190 m f
+84 150 m 84 148.895 83.105 148 82 148 c 80.895 148 80 148.895 80 150 c 
+80 151.105 80.895 152 82 152 c 83.062 152 83.941 151.168 83.996 150.105 
+c 82 150 l h
+84 150 m f
+4 110 m 4 108.895 3.105 108 2 108 c 0.895 108 0 108.895 0 110 c 0 
+111.105 0.895 112 2 112 c 3.062 112 3.941 111.168 3.996 110.105 c 2 110 
+l h
+4 110 m f
+0.376471 0.8 0.054902 rg
+24 150 m 24 148.895 23.105 148 22 148 c 20.895 148 20 148.895 20 150 c 
+20 151.105 20.895 152 22 152 c 23.062 152 23.941 151.168 23.996 150.105 
+c 22 150 l h
+24 150 m f
+44 130 m 44 128.895 43.105 128 42 128 c 40.895 128 40 128.895 40 130 c 
+40 131.105 40.895 132 42 132 c 43.062 132 43.941 131.168 43.996 130.105 
+c 42 130 l h
+44 130 m f
+64 170 m 64 168.895 63.105 168 62 168 c 60.895 168 60 168.895 60 170 c 
+60 171.105 60.895 172 62 172 c 63.062 172 63.941 171.168 63.996 170.105 
+c 62 170 l h
+64 170 m f
+0.964706 0.498039 0 rg
+24 74 m 24 72.895 23.105 72 22 72 c 20.895 72 20 72.895 20 74 c 20 
+75.105 20.895 76 22 76 c 23.062 76 23.941 75.168 23.996 74.105 c 22 74 
+l h
+24 74 m f
+84.004 89.895 m 84.004 88.789 83.105 87.895 82.004 87.895 c 80.898 
+87.895 80.004 88.789 80.004 89.895 c 80.004 91 80.898 91.895 82.004 
+91.895 c 83.066 91.895 83.945 91.062 84 90 c 82.004 89.895 l h
+84.004 89.895 m f
+92 10 m 92 8.895 91.105 8 90 8 c 88.895 8 88 8.895 88 10 c 88 11.105 
+88.895 12 90 12 c 91.062 12 91.941 11.168 91.996 10.105 c 90 10 l h
+92 10 m f
+4 10 m 4 8.895 3.105 8 2 8 c 0.895 8 0 8.895 0 10 c 0 11.105 0.895 12 2 
+12 c 3.062 12 3.941 11.168 3.996 10.105 c 2 10 l h
+4 10 m f
+0.376471 0.8 0.054902 rg
+54 82 m 54 80.895 53.105 80 52 80 c 50.895 80 50 80.895 50 82 c 50 
+83.105 50.895 84 52 84 c 53.086 84 53.977 83.133 54 82.047 c f
+88 50 m 88 48.895 87.105 48 86 48 c 84.895 48 84 48.895 84 50 c 84 
+51.105 84.895 52 86 52 c 87.062 52 87.941 51.168 87.996 50.105 c 86 50 
+l h
+88 50 m f
+52 46 m 52 44.895 51.105 44 50 44 c 48.895 44 48 44.895 48 46 c 48 
+47.105 48.895 48 50 48 c 51.062 48 51.941 47.168 51.996 46.105 c 50 46 
+l h
+52 46 m f
+14 42 m 14 40.895 13.105 40 12 40 c 10.895 40 10 40.895 10 42 c 10 
+43.105 10.895 44 12 44 c 13.094 44 13.984 43.121 14 42.031 c 12 42 l h
+14 42 m f
+50 10 m 50 8.895 49.105 8 48 8 c 46.895 8 46 8.895 46 10 c 46 11.105 
+46.895 12 48 12 c 49.062 12 49.941 11.168 49.996 10.105 c 48 10 l h
+50 10 m f
+0.964706 0.498039 0 rg
+142 131.895 m 142 130.789 141.105 129.895 140 129.895 c 138.895 129.895 
+138 130.789 138 131.895 c 138 133 138.895 133.895 140 133.895 c 141.062 
+133.895 141.941 133.062 141.996 132 c 140 131.895 l h
+142 131.895 m f
+181.996 192 m 181.996 190.895 181.102 190 179.996 190 c 178.895 190 
+177.996 190.895 177.996 192 c 177.996 193.105 178.895 194 179.996 194 c 
+181.062 194 181.938 193.168 181.996 192.105 c 179.996 192 l h
+181.996 192 m f
+221.996 142 m 221.996 140.895 221.102 140 219.996 140 c 218.895 140 
+217.996 140.895 217.996 142 c 217.996 143.105 218.895 144 219.996 144 c 
+221.062 144 221.938 143.168 221.996 142.105 c 219.996 142 l h
+221.996 142 m f
+189.996 102 m 189.996 100.895 189.102 100 187.996 100 c 186.895 100 
+185.996 100.895 185.996 102 c 185.996 103.105 186.895 104 187.996 104 c 
+189.062 104 189.938 103.168 189.996 102.105 c 187.996 102 l h
+189.996 102 m f
+0.376471 0.8 0.054902 rg
+161.996 162 m 161.996 160.895 161.102 160 159.996 160 c 158.895 160 
+157.996 160.895 157.996 162 c 157.996 163.105 158.895 164 159.996 164 c 
+161.062 164 161.938 163.168 161.996 162.105 c 159.996 162 l h
+161.996 162 m f
+199.996 170 m 199.996 168.895 199.102 168 197.996 168 c 196.895 168 
+195.996 168.895 195.996 170 c 195.996 171.105 196.895 172 197.996 172 c 
+199.062 172 199.938 171.168 199.996 170.105 c 197.996 170 l h
+199.996 170 m f
+207.996 124 m 207.996 122.895 207.102 122 205.996 122 c 204.895 122 
+203.996 122.895 203.996 124 c 203.996 125.105 204.895 126 205.996 126 c 
+207.062 126 207.938 125.168 207.996 124.105 c 205.996 124 l h
+207.996 124 m f
+163.996 118 m 163.996 116.895 163.102 116 161.996 116 c 160.895 116 
+159.996 116.895 159.996 118 c 159.996 119.105 160.895 120 161.996 120 c 
+163.062 120 163.938 119.168 163.996 118.105 c 161.996 118 l h
+163.996 118 m f
+183.996 138 m 183.996 136.895 183.102 136 181.996 136 c 180.895 136 
+179.996 136.895 179.996 138 c 179.996 139.105 180.895 140 181.996 140 c 
+183.062 140 183.938 139.168 183.996 138.105 c 181.996 138 l h
+183.996 138 m f
+186 145.895 m 186 144.789 185.105 143.895 184 143.895 c 182.895 143.895 
+182 144.789 182 145.895 c 182 147 182.895 147.895 184 147.895 c 185.062 
+147.895 185.941 147.062 185.996 146 c 184 145.895 l h
+186 145.895 m f
+0.964706 0.498039 0 rg
+181.996 72 m 181.996 70.895 181.102 70 179.996 70 c 178.895 70 177.996 
+70.895 177.996 72 c 177.996 73.105 178.895 74 179.996 74 c 181.062 74 
+181.938 73.168 181.996 72.105 c 179.996 72 l h
+181.996 72 m f
+242 71.895 m 242 70.789 241.105 69.895 240 69.895 c 238.895 69.895 238 
+70.789 238 71.895 c 238 73 238.895 73.895 240 73.895 c 241.062 73.895 
+241.941 73.062 241.996 72 c 240 71.895 l h
+242 71.895 m f
+242 71.895 m 242 70.789 241.105 69.895 240 69.895 c 238.895 69.895 238 
+70.789 238 71.895 c 238 73 238.895 73.895 240 73.895 c 241.062 73.895 
+241.941 73.062 241.996 72 c 240 71.895 l h
+242 71.895 m f
+241.996 22 m 241.996 20.895 241.102 20 239.996 20 c 238.895 20 237.996 
+20.895 237.996 22 c 237.996 23.105 238.895 24 239.996 24 c 241.062 24 
+241.938 23.168 241.996 22.105 c 239.996 22 l h
+241.996 22 m f
+151.996 2 m 151.996 0.895 151.102 0 149.996 0 c 148.895 0 147.996 0.895 
+147.996 2 c 147.996 3.105 148.895 4 149.996 4 c 151.062 4 151.938 3.168 
+151.996 2.105 c 149.996 2 l h
+151.996 2 m f
+182 21.895 m 182 20.789 181.105 19.895 180 19.895 c 178.895 19.895 178 
+20.789 178 21.895 c 178 23 178.895 23.895 180 23.895 c 181.062 23.895 
+181.941 23.062 181.996 22 c 180 21.895 l h
+182 21.895 m f
+211.996 2 m 211.996 0.895 211.102 0 209.996 0 c 208.895 0 207.996 0.895 
+207.996 2 c 207.996 3.105 208.895 4 209.996 4 c 211.062 4 211.938 3.168 
+211.996 2.105 c 209.996 2 l h
+211.996 2 m f
+211.996 52 m 211.996 50.895 211.102 50 209.996 50 c 208.895 50 207.996 
+50.895 207.996 52 c 207.996 53.105 208.895 54 209.996 54 c 211.062 54 
+211.938 53.168 211.996 52.105 c 209.996 52 l h
+211.996 52 m f
+211.996 52 m 211.996 50.895 211.102 50 209.996 50 c 208.895 50 207.996 
+50.895 207.996 52 c 207.996 53.105 208.895 54 209.996 54 c 211.062 54 
+211.938 53.168 211.996 52.105 c 209.996 52 l h
+211.996 52 m f
+151.996 52 m 151.996 50.895 151.102 50 149.996 50 c 148.895 50 147.996 
+50.895 147.996 52 c 147.996 53.105 148.895 54 149.996 54 c 151.062 54 
+151.938 53.168 151.996 52.105 c 149.996 52 l h
+151.996 52 m f
+0.376471 0.8 0.054902 rg
+165.996 62 m 165.996 60.895 165.102 60 163.996 60 c 162.895 60 161.996 
+60.895 161.996 62 c 161.996 63.105 162.895 64 163.996 64 c 165.062 64 
+165.938 63.168 165.996 62.105 c 163.996 62 l h
+165.996 62 m f
+211.996 72 m 211.996 70.895 211.102 70 209.996 70 c 208.895 70 207.996 
+70.895 207.996 72 c 207.996 73.105 208.895 74 209.996 74 c 211.062 74 
+211.938 73.168 211.996 72.105 c 209.996 72 l h
+211.996 72 m f
+225.996 62 m 225.996 60.895 225.102 60 223.996 60 c 222.895 60 221.996 
+60.895 221.996 62 c 221.996 63.105 222.895 64 223.996 64 c 225.062 64 
+225.938 63.168 225.996 62.105 c 223.996 62 l h
+225.996 62 m f
+181.996 52 m 181.996 50.895 181.102 50 179.996 50 c 178.895 50 177.996 
+50.895 177.996 52 c 177.996 53.105 178.895 54 179.996 54 c 181.062 54 
+181.938 53.168 181.996 52.105 c 179.996 52 l h
+181.996 52 m f
+197.996 62 m 197.996 60.895 197.102 60 195.996 60 c 194.895 60 193.996 
+60.895 193.996 62 c 193.996 63.105 194.895 64 195.996 64 c 197.062 64 
+197.938 63.168 197.996 62.105 c 195.996 62 l h
+197.996 62 m f
+225.996 38 m 225.996 36.895 225.102 36 223.996 36 c 222.895 36 221.996 
+36.895 221.996 38 c 221.996 39.105 222.895 40 223.996 40 c 225.062 40 
+225.938 39.168 225.996 38.105 c 223.996 38 l h
+225.996 38 m f
+242 47.895 m 242 46.789 241.105 45.895 240 45.895 c 238.895 45.895 238 
+46.789 238 47.895 c 238 49 238.895 49.895 240 49.895 c 241.062 49.895 
+241.941 49.062 241.996 48 c 240 47.895 l h
+242 47.895 m f
+225.996 12 m 225.996 10.895 225.102 10 223.996 10 c 222.895 10 221.996 
+10.895 221.996 12 c 221.996 13.105 222.895 14 223.996 14 c 225.062 14 
+225.938 13.168 225.996 12.105 c 223.996 12 l h
+225.996 12 m f
+211.996 28 m 211.996 26.895 211.102 26 209.996 26 c 208.895 26 207.996 
+26.895 207.996 28 c 207.996 29.105 208.895 30 209.996 30 c 211.062 30 
+211.938 29.168 211.996 28.105 c 209.996 28 l h
+211.996 28 m f
+181.996 2 m 181.996 0.895 181.102 0 179.996 0 c 178.895 0 177.996 0.895 
+177.996 2 c 177.996 3.105 178.895 4 179.996 4 c 181.062 4 181.938 3.168 
+181.996 2.105 c 179.996 2 l h
+181.996 2 m f
+195.996 38 m 195.996 36.895 195.102 36 193.996 36 c 192.895 36 191.996 
+36.895 191.996 38 c 191.996 39.105 192.895 40 193.996 40 c 195.062 40 
+195.938 39.168 195.996 38.105 c 193.996 38 l h
+195.996 38 m f
+151.996 28 m 151.996 26.895 151.102 26 149.996 26 c 148.895 26 147.996 
+26.895 147.996 28 c 147.996 29.105 148.895 30 149.996 30 c 151.062 30 
+151.938 29.168 151.996 28.105 c 149.996 28 l h
+151.996 28 m f
+165.996 12 m 165.996 10.895 165.102 10 163.996 10 c 162.895 10 161.996 
+10.895 161.996 12 c 161.996 13.105 162.895 14 163.996 14 c 165.062 14 
+165.938 13.168 165.996 12.105 c 163.996 12 l h
+165.996 12 m f
+165.996 38 m 165.996 36.895 165.102 36 163.996 36 c 162.895 36 161.996 
+36.895 161.996 38 c 161.996 39.105 162.895 40 163.996 40 c 165.062 40 
+165.938 39.168 165.996 38.105 c 163.996 38 l h
+165.996 38 m f
+182 47.895 m 182 46.789 181.105 45.895 180 45.895 c 178.895 45.895 178 
+46.789 178 47.895 c 178 49 178.895 49.895 180 49.895 c 181.062 49.895 
+181.941 49.062 181.996 48 c 180 47.895 l h
+182 47.895 m f
+181.996 28 m 181.996 26.895 181.102 26 179.996 26 c 178.895 26 177.996 
+26.895 177.996 28 c 177.996 29.105 178.895 30 179.996 30 c 181.062 30 
+181.938 29.168 181.996 28.105 c 179.996 28 l h
+181.996 28 m f
+212 47.895 m 212 46.789 211.105 45.895 210 45.895 c 208.895 45.895 208 
+46.789 208 47.895 c 208 49 208.895 49.895 210 49.895 c 211.062 49.895 
+211.941 49.062 211.996 48 c 210 47.895 l h
+212 47.895 m f
+211.996 22 m 211.996 20.895 211.102 20 209.996 20 c 208.895 20 207.996 
+20.895 207.996 22 c 207.996 23.105 208.895 24 209.996 24 c 211.062 24 
+211.938 23.168 211.996 22.105 c 209.996 22 l h
+211.996 22 m f
+197.996 12 m 197.996 10.895 197.102 10 195.996 10 c 194.895 10 193.996 
+10.895 193.996 12 c 193.996 13.105 194.895 14 195.996 14 c 197.062 14 
+197.938 13.168 197.996 12.105 c 195.996 12 l h
+197.996 12 m f
+Q Q
+showpage
+%%Trailer
+count op_count sub {pop} repeat
+countdictstack dict_count sub {end} repeat
+cairo_eps_state restore
+%%EOF

Copied: short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.svg (from rev 18641, short/3D/PyLith/trunk/doc/userguide/runpylith/figs/refinement2x.svg)
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.svg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/doc/userguide/runpylith/figs/refinement2x.svg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,936 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="337.5"
+   height="270"
+   id="svg2"
+   sodipodi:version="0.32"
+   inkscape:version="0.48.1 r9760"
+   version="1.0"
+   sodipodi:docname="refinement2x.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   inkscape:export-filename="/home/brad/pubs/presentations/CIG/diagrams/workflow.png"
+   inkscape:export-xdpi="90"
+   inkscape:export-ydpi="90">
+  <defs
+     id="defs4">
+    <marker
+       inkscape:stockid="Arrow2Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Lend"
+       style="overflow:visible">
+      <path
+         id="path3450"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow2Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow2Mend"
+       style="overflow:visible">
+      <path
+         id="path3456"
+         style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
+         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
+         transform="scale(-0.6,-0.6)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Mend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Mend"
+       style="overflow:visible">
+      <path
+         id="path3438"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.4,0,0,-0.4,-4,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <marker
+       inkscape:stockid="Arrow1Lend"
+       orient="auto"
+       refY="0"
+       refX="0"
+       id="Arrow1Lend"
+       style="overflow:visible">
+      <path
+         id="path3432"
+         d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
+         style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
+         transform="matrix(-0.8,0,0,-0.8,-10,0)"
+         inkscape:connector-curvature="0" />
+    </marker>
+    <inkscape:perspective
+       sodipodi:type="inkscape:persp3d"
+       inkscape:vp_x="0 : 526.18109 : 1"
+       inkscape:vp_y="0 : 1000 : 0"
+       inkscape:vp_z="744.09448 : 526.18109 : 1"
+       inkscape:persp3d-origin="372.04724 : 350.78739 : 1"
+       id="perspective10" />
+  </defs>
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     gridtolerance="10000"
+     guidetolerance="10000"
+     objecttolerance="10000"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.81212121"
+     inkscape:cx="303.16713"
+     inkscape:cy="67.58551"
+     inkscape:document-units="pt"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     inkscape:object-nodes="true"
+     inkscape:object-paths="true"
+     inkscape:snap-bbox="true"
+     inkscape:bbox-paths="true"
+     inkscape:bbox-nodes="true"
+     inkscape:window-width="1207"
+     inkscape:window-height="853"
+     inkscape:window-x="65"
+     inkscape:window-y="65"
+     inkscape:window-maximized="0"
+     units="in">
+    <inkscape:grid
+       type="xygrid"
+       id="grid2383"
+       visible="true"
+       enabled="true"
+       empspacing="5"
+       snapvisiblegridlinesonly="true"
+       units="pt"
+       spacingx="2pt"
+       spacingy="2pt" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     inkscape:label="connections"
+     style="display:inline"
+     transform="translate(0,-495)">
+    <g
+       inkscape:groupmode="layer"
+       id="layer5"
+       inkscape:label="cells"
+       style="display:inline">
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 62.5,7.5 -50,100 100,-50 -50,-50"
+         id="path3142"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cccc"
+         transform="translate(0,495)" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 37.5,57.5 25,25 25,-50 -50,25"
+         id="path3146"
+         inkscape:connector-curvature="0"
+         transform="translate(0,495)" />
+      <path
+         sodipodi:nodetypes="ccccc"
+         inkscape:connector-curvature="0"
+         id="path4028"
+         d="m 12.5,727.5 110,0 -10,-100 -75,20 z"
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 25,192.5 92.5,-10"
+         id="path4040"
+         inkscape:connector-curvature="0"
+         transform="translate(0,495)"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+         d="m 75,142.5 -5,90"
+         id="path4042"
+         inkscape:connector-curvature="0"
+         transform="translate(0,495)"
+         sodipodi:nodetypes="cc" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 234.99652,500 -50,75 60,37.5 -10,-112.5 50,62.5 -40,50"
+         id="path4058"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cccccc" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 3.75;stroke-dashoffset:0"
+         d="m 184.99652,575 100,-12.5"
+         id="path4066"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cc" />
+      <path
+         inkscape:connector-curvature="0"
+         id="path4076"
+         d="m 214.99652,592.5 52.5,-7.5 -30,-17.5 -25,25"
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         sodipodi:nodetypes="cccc" />
+      <path
+         sodipodi:nodetypes="cccc"
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 209.99652,537.5 27.5,30 20,-40 -47.5,10"
+         id="path4078"
+         inkscape:connector-curvature="0" />
+      <path
+         inkscape:connector-curvature="0"
+         id="path4080"
+         d="m 239.99652,557.5 27.5,27.5 -10,-57.5 -17.5,30"
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         sodipodi:nodetypes="cccc" />
+      <path
+         sodipodi:nodetypes="cccc"
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
+         d="m 212.49652,592.5 27.5,-35 -30,-20 2.5,55"
+         id="path4082"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 239.99652,557.5 -2.5,10"
+         id="path4084"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 197.49652,737.5 75,0 0,-62.5 -75,0 z"
+         id="path4098"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="ccccc" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 197.49652,675 37.5,-25 75,0 0,62.5 -37.5,25"
+         id="path4102"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 272.49652,675 37.5,-25"
+         id="path4104"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:5.625, 1.875;stroke-dashoffset:0"
+         d="m 234.99652,650 0,62.5 75,0"
+         id="path4106"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#1e6e96;stroke-width:1.875;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:5.625, 1.875;stroke-dashoffset:0"
+         d="m 234.99652,712.5 -37.5,25"
+         id="path4108"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 197.49652,705 75,0 37.5,-25"
+         id="path4110"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 309.99652,680 -75,0 -37.5,25"
+         id="path4112"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 272.49652,650 0,62.5 -37.5,25"
+         id="path4114"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 214.99652,662.5 0,62.5 75,0"
+         id="path4118"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 289.99652,725 0,-62.5 -75,0"
+         id="path4120"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
+         d="m 272.49652,650 -37.5,25 0,62.5"
+         id="path4122"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 214.99652,692.5 75,0"
+         id="path4124"
+         inkscape:connector-curvature="0" />
+      <path
+         style="fill:none;stroke:#6101af;stroke-width:1.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.75, 1.25;stroke-dashoffset:0"
+         d="m 272.49652,680 -37.5,25"
+         id="path4126"
+         inkscape:connector-curvature="0" />
+    </g>
+    <g
+       inkscape:groupmode="layer"
+       id="layer1"
+       inkscape:label="nodes"
+       style="display:inline">
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path3150"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(37.5,497.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(37.5,497.5)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path3990"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <use
+         x="0"
+         y="0"
+         xlink:href="#path3990"
+         id="use3992"
+         transform="translate(50,50)"
+         width="495"
+         height="270" />
+      <use
+         x="0"
+         y="0"
+         xlink:href="#use3992"
+         id="use3994"
+         transform="translate(-100,50)"
+         width="495"
+         height="270" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path3998"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(10,485)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(35,510)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4000"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(60,460)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4004"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <use
+         x="0"
+         y="0"
+         xlink:href="#use3994"
+         id="use4030"
+         transform="translate(25,45)"
+         width="495"
+         height="270" />
+      <use
+         height="270"
+         width="495"
+         transform="translate(100.00348,25.131798)"
+         id="use4032"
+         xlink:href="#use3994"
+         y="0"
+         x="0" />
+      <use
+         x="0"
+         y="0"
+         xlink:href="#use3994"
+         id="use4034"
+         transform="translate(110,125)"
+         width="495"
+         height="270" />
+      <use
+         height="270"
+         width="495"
+         transform="translate(0,125)"
+         id="use4036"
+         xlink:href="#use3994"
+         y="0"
+         x="0" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4046"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -6.42e-4,-0.05665"
+         transform="translate(47.5,570)"
+         sodipodi:start="0"
+         sodipodi:end="6.2605245"
+         sodipodi:open="true"
+         inkscape:transform-center-y="2.5" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(90,610)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4048"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4050"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(45,615)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2681659"
+         sodipodi:start="0"
+         transform="translate(-2.5,620)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -2.82e-4,-0.03755 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4052"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4054"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(42.5,660)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4068"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(160,570.1318)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(209.99652,495)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4070"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4072"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(259.99652,557.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(219.99652,607.5)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4074"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4086"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(182.49652,470)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(229.99652,460)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4088"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4090"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(239.99652,517.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(184.99652,525)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4092"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4094"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(209.99652,500)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(212.5,490.1318)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4096"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4128"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(209.99652,645)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(285,645.1318)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4130"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4132"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(285,645.1318)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(284.99652,707.5)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4134"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4136"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(172.49652,732.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(210,707.6318)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4138"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4140"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(247.49652,732.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(247.49652,670)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4142"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#f67f00;stroke:none;display:inline"
+         id="path4144"
+         sodipodi:cx="25"
+         sodipodi:cy="5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         transform="translate(247.49652,670)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(172.49652,670)"
+         d="m 27.5,5 a 2.5,2.5 0 1 1 -0.0035,-0.1317976 L 25,5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="5"
+         sodipodi:cx="25"
+         id="path4146"
+         style="fill:#f67f00;stroke:none;display:inline"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4148"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(187.49652,595)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(244.99652,582.5)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4150"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4152"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(262.49652,595)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(207.49652,607.5)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4154"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4156"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(227.49652,595)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(262.49652,625)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4158"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4160"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(282.5,612.6318)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(262.49652,657.5)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4162"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4164"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(244.99652,637.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(207.49652,670)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4166"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4168"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(224.99652,625)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(169.99652,637.5)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4170"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4172"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(187.49652,657.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(187.49652,625)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4174"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4176"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(207.5,612.6318)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(207.49652,637.5)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4178"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4180"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(245,612.6318)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+      <path
+         sodipodi:end="6.2304418"
+         sodipodi:start="0"
+         transform="translate(244.99652,645)"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         sodipodi:ry="2.5"
+         sodipodi:rx="2.5"
+         sodipodi:cy="67.5"
+         sodipodi:cx="27.5"
+         id="path4182"
+         style="fill:#60cc0e;stroke:none"
+         sodipodi:type="arc" />
+      <path
+         sodipodi:type="arc"
+         style="fill:#60cc0e;stroke:none"
+         id="path4184"
+         sodipodi:cx="27.5"
+         sodipodi:cy="67.5"
+         sodipodi:rx="2.5"
+         sodipodi:ry="2.5"
+         d="m 30,67.5 a 2.5,2.5 0 1 1 -0.0035,-0.131798 L 27.5,67.5 z"
+         transform="translate(227.49652,657.5)"
+         sodipodi:start="0"
+         sodipodi:end="6.2304418" />
+    </g>
+  </g>
+</svg>

Modified: short/3D/PyLith/branches/multifields/doc/userguide/runpylith/runpylith.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/runpylith/runpylith.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/runpylith/runpylith.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -268,7 +286,7 @@
 
 \begin_inset Tabular
 <lyxtabular version="3" rows="5" columns="2">
-<features>
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="0.9in">
 <column alignment="left" valignment="top" width="4in">
 <row>
@@ -814,7 +832,7 @@
 
 \begin_layout Standard
 Geometrical and topological information for the finite element mesh may
- be provided by exporting an EXODUS format file from CUBIT, by exporting
+ be provided by exporting an Exodus II format file from CUBIT, by exporting
  a GMV file and an accompanying Pset file from LaGriT, or by specifying
  the information in PyLith mesh ASCII format.
  See Chapter 
@@ -1104,6 +1122,11 @@
 distributor Handles distribution of the mesh among processors.
 \end_layout
 
+\begin_layout Description
+refiner Perform global uniform mesh refinement after distribution among
+ processors (default is False).
+\end_layout
+
 \begin_layout Standard
 Reordering the mesh so that vertices and cells connected topologically also
  reside close together in memory improves overall performance and can improve
@@ -1278,6 +1301,93 @@
 ParMETIS is not included in the PyLith binaries due to licensing issues.
 \end_layout
 
+\begin_layout Subsubsection
+Refiner
+\end_layout
+
+\begin_layout Standard
+The refiner is used to decrease node spacing by a factor of two by subdividing
+ each cell.
+ In a 2-D triangular mesh a node is inserted at the midpoint of each edge,
+ splitting each cell into four cells (see Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:uniform:refinement:2x"
+
+\end_inset
+
+).
+ In a 2-D quadrilateral mesh a node is inserted at the midpoint of each
+ edge and at the centroid of the cell, splitting each cell into four cells.
+ In a 3-D tetrahedral mesh a node is inserted at the midpoint of each edge,
+ splitting each cell into eight cells.
+ In a 3-D hexahedral mesh a node is inserted at the midpoint of each edge,
+ the centroid of each face, and at the centroid of the cell, splitting each
+ cell into eight cells.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Graphics
+	filename figs/refinement2x.eps
+	scale 125
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Global uniform mesh refinement of 2-D and 3-D linear cells.
+ The blue lines and orange circles identify the edges and vertices in the
+ original cells.
+ The purple lines and green circles identify the new edges and vertices
+ added to the original cells to refine the mesh by a factor of two.
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:uniform:refinement:2x"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+Refinement occurs after distribution of the mesh among processors.
+ This allows one to run much larger simulations by (1) permitting the mesh
+ generator to construct a mesh with a node spacing twice as large as that
+ needed in the simulation and (2) operations performed in serial during
+ the simulation setup phase, such as, adjusting the topology to insert cohesive
+ cells and distribution of the mesh among processors uses this much smaller
+ coarse mesh.
+ For 2-D problems the global mesh refinement increases the maximum problem
+ size by a factor of four, and for 3-D problems it increases the maximum
+ problem size by a factor of eight.
+\end_layout
+
 \begin_layout Subsection
 Problem Specification (
 \family typewriter
@@ -1493,9 +1603,23 @@
 \end_layout
 
 \begin_layout Standard
-PyLith relies on PETSc for the linear algebra computations, including linear
- Krylov subspace solvers and nonlinear solvers.
- PETSc options can be set in 
+In quasti-static problems with implicit time-stepping, PyLith relies on
+ PETSc for the linear algebra computations, including linear Krylov subspace
+ solvers and nonlinear solvers.
+ For dynamic problems, lumping the mass matrix and using explicit time-stepping
+ is much more efficient; this permits solving the linear system with a trivial
+ solver so we do not use a PETSc solver in this case (see Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:solvers"
+
+\end_inset
+
+).
+\end_layout
+
+\begin_layout Standard
+PETSc options can be set in 
 \family typewriter
 .cfg
 \family default
@@ -1504,7 +1628,7 @@
 [pylithapp.petsc]
 \family default
 .
- The ones of primary interest in the case of PyLith are shown in Table
+ The options of primary interest in the case of PyLith are shown in Table
 \begin_inset space ~
 \end_inset
 
@@ -1526,9 +1650,10 @@
 \end_inset
 
 .
- In many quasi-static or dynamic elasticity simulations, runtime can be
- reduced by replacing the Jacobi preconditioner with additive Schwarz with
- Gram-Schmidt orthogonalization (see Table
+ A very wide range of elasticity problems in quasi-static simulations can
+ be solved with reasonable runtimes by replacing the default Jacobi precondition
+er with the Additive Schwarz Method (ASM) using Incomplete LU (ILU) factorizatio
+n by default (see Table
 \begin_inset space ~
 \end_inset
 
@@ -1540,9 +1665,90 @@
 \end_inset
 
 ).
+ A more advanced set of solver settings that may provide better performance
+ in many elasticity problems are given in Table 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tab:petsc:options:advanced"
+
+\end_inset
+
+.
+ These settings are limited to problems where we store the stiffness matrix
+ as a nonsymmetric sparse matrix and require additional settings for the
+ formulation,
 \end_layout
 
+\begin_layout LyX-Code
+[pylithapp.timedependent.formulation]
+\end_layout
+
+\begin_layout LyX-Code
+split_fields = True
+\end_layout
+
+\begin_layout LyX-Code
+use_custom_constraint_pc = True ; Use only if problem contains a fault
+\end_layout
+
+\begin_layout LyX-Code
+matrix_type = aij
+\end_layout
+
+\begin_layout Quote
+
+\series bold
+\color red
+Warning:
+\color inherit
+ 
+\series default
+\color none
+These settings are only available if you build PETSc with Fortran enabled
+ and the ML package.
+ These features are included in the PyLith binary packages.
+\end_layout
+
+\begin_layout Quote
+
+\series bold
+\color red
+Warning:
+\color inherit
+ 
+\series default
+\color none
+The split fields and algebraic multigrid preconditioning currently fails
+ in problems with a nonzero null space.
+ This most often occurs when a problem contains multiple faults that extend
+ through the entire domain and create subdomains without any Dirichlet boundary
+ conditions.
+ The current workaround is to use the 
+\color inherit
+Additive Schwarz 
+\color none
+preconditioner without split fields.
+ See Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Troubleshooting"
+
+\end_inset
+
+ for the error message encountered in this situation.
+ 
+\end_layout
+
 \begin_layout Standard
+These more advanced settings allow each component of displacement, as well
+ as Lagrange multipliers for fault tractions, to be preconditioned separately.
+ This usually results in a much stronger preconditioner.
+ In simulations with fault slip, the degrees of freedom associated with
+ the Lagrange multipliers should be preconditioned with a custom preconditioner
+ that uses a diagonal approximation of the Schur complement.
+\end_layout
+
+\begin_layout Standard
 \noindent
 \align center
 \begin_inset Float table
@@ -1569,8 +1775,8 @@
 
 
 \begin_inset Tabular
-<lyxtabular version="3" rows="6" columns="3">
-<features>
+<lyxtabular version="3" rows="10" columns="3">
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="1.2in">
 <column alignment="center" valignment="middle" width="0.6in">
 <column alignment="left" valignment="top" width="3.8in">
@@ -1658,6 +1864,8 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+
+\shape italic
 false
 \end_layout
 
@@ -1689,6 +1897,8 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+
+\shape italic
 false
 \end_layout
 
@@ -1739,18 +1949,117 @@
 </cell>
 </row>
 <row>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Plain Layout
 
 \family typewriter
+snes_monitor
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+false
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Dump residual norm to stdout for each nonlinear solve iteration.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+snes_view
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+false
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Print nonlinear solver parameters.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+snes_rtol
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+1.0e-5
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Convergence tolerance for relative decrease in residual norm.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
 pc_type
 \end_layout
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Plain Layout
@@ -1761,18 +2070,68 @@
 
 \end_inset
 </cell>
-<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
 \begin_inset Text
 
 \begin_layout Plain Layout
-Set preconditioner type to block Jacobi.
- See PETSc documentation for a list of all preconditioner types.
+Set preconditioner type.
+ See 
+\begin_inset CommandInset href
+LatexCommand href
+name "PETSc documentation"
+target "http://www.mcs.anl.gov/petsc/petsc-as/documentation/linearsolvertable.html"
+
+\end_inset
+
+ for a list of all preconditioner types.
  
 \end_layout
 
 \end_inset
 </cell>
 </row>
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+ksp_type
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+gmres
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Set linear solver type.
+ See 
+\begin_inset CommandInset href
+LatexCommand href
+name "PETSc documentation"
+target "http://www.mcs.anl.gov/petsc/petsc-as/documentation/linearsolvertable.html"
+
+\end_inset
+
+ for a list of all solver types.
+\end_layout
+
+\end_inset
+</cell>
+</row>
 </lyxtabular>
 
 \end_inset
@@ -1800,16 +2159,16 @@
 
 \end_inset
 
-PETSc options that often result in improved performance in quasi-static
- and dynamic elasticity problems.
+PETSc options that provide moderate performance in a wide range of quasi-static
+ elasticity problems.
 \end_layout
 
 \end_inset
 
 
 \begin_inset Tabular
-<lyxtabular version="3" rows="9" columns="3">
-<features>
+<lyxtabular version="3" rows="13" columns="3">
+<features tabularvalignment="middle">
 <column alignment="left" valignment="top" width="2in">
 <column alignment="center" valignment="middle" width="0.75in">
 <column alignment="left" valignment="top" width="3in">
@@ -1886,7 +2245,38 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+ksp_type
+\end_layout
 
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+gmres
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+GMRES method from Saad and Schultz.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
 \family typewriter
 sub_pc_factor_shift_type
 \end_layout
@@ -1908,7 +2298,7 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
-Turn on nonzero shifting.
+Turn on nonzero shifting for factorization.
 \end_layout
 
 \end_inset
@@ -1941,7 +2331,7 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
-Maximum number of iterations.
+Maximum number of iterations permitted in linear solve.
  Depends on problem size.
 \end_layout
 
@@ -1964,6 +2354,8 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+
+\shape italic
 50
 \end_layout
 
@@ -2006,7 +2398,7 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
-Convergence tolerance for relative decrease in residual norm.
+Linear solve convergence tolerance for relative decrease in residual norm.
 \end_layout
 
 \end_inset
@@ -2017,6 +2409,8 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
+
+\family typewriter
 ksp_atol
 \end_layout
 
@@ -2027,8 +2421,9 @@
 
 \begin_layout Plain Layout
 
+\shape italic
 \emph on
-1.0e-15
+1.0e-12
 \end_layout
 
 \end_inset
@@ -2037,7 +2432,7 @@
 \begin_inset Text
 
 \begin_layout Plain Layout
-Convergence tolerance for absolute value in residual norm.
+Linear solve convergence tolerance for absolute value of residual norm.
 \end_layout
 
 \end_inset
@@ -2077,6 +2472,107 @@
 </cell>
 </row>
 <row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+snes_max_it
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+100
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Maximum number of iterations permitted in nonlinear solve.
+ Depends on how nonlinear the problem is.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+snes_rtol
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+1.0e-08
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Nonlinear solve convergence tolerance for relative decrease in residual
+ norm.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+snes_atol
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+1.0e-12
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Nonlinear solve convergence tolerance for absolute value of residual norm.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
 <cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
 \begin_inset Text
 
@@ -2121,6 +2617,254 @@
 
 \end_layout
 
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float table
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Caption
+
+\begin_layout Plain Layout
+\begin_inset CommandInset label
+LatexCommand label
+name "tab:petsc:options:advanced"
+
+\end_inset
+
+PETSc options used with split fields algebraic multigrid preconditioning
+ that often provide improved performance in quasi-static elasticity problems.
+ N is the dimension of the problem.
+ For simulations with faults, the number of split fields is N+1.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Tabular
+<lyxtabular version="3" rows="6" columns="3">
+<features tabularvalignment="middle">
+<column alignment="left" valignment="top" width="2in">
+<column alignment="center" valignment="middle" width="0.75in">
+<column alignment="left" valignment="top" width="3in">
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Property
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Value
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Description
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+fs_pc_type
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+field_split
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Precondition fields separately.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multicolumn="1" alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+fs_pc_fieldsplit_real_diagonal
+\end_layout
+
+\end_inset
+</cell>
+<cell multicolumn="2" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Use diagonal blocks from the true operator, rather than the preconditioner.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+fs_pc_fieldsplit_type
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+multiplicative
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Apply each field preconditioning in sequence, which is stronger than all-at-once
+ (additive).
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+fs_fieldsplit_X_pc_type
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+ml
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Multilevel algebraic multigrid preconditioning using Trilinos/ML via PETSc.
+ X=0,1,2, ..., N+1.
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\family typewriter
+fs_fieldsplit_X_ksp_type
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\shape italic
+jacobi
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Jacobi is sometimes the best option for fault preconditioning, however we
+ often use ML, X=0,1,2,...,N+1
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
 \begin_layout Section
 Time-Dependent Problem
 \end_layout
@@ -2259,8 +3003,7 @@
 \begin_layout Description
 split_fields Split solution field into a displacement portion (fields 0..ndim-1)
  and a Lagrange multiplier portion (field ndim) to permit application of
- sophisticated PETSc preconditioners (default is false; for expert users
- only).
+ sophisticated PETSc preconditioners (default is false).
 \end_layout
 
 \begin_layout Standard
@@ -2289,7 +3032,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-matrix_type = sbaij ; Non-symmetric sparse matrix is aij
+matrix_type = sbaij ; To use a non-symmetric sparse matrix, set it to aij
 \end_layout
 
 \begin_layout LyX-Code
@@ -2297,6 +3040,81 @@
 \end_layout
 
 \begin_layout Subsection
+Numerical Damping in Explicit Time Stepping
+\end_layout
+
+\begin_layout Standard
+In explicit time-stepping formulations for elasticity, boundary conditions
+ and fault slip can excite short waveform elastic waves that are not accurately
+ resolved by the discretization.
+ We use numerical damping via an artificial viscosity
+\begin_inset CommandInset citation
+LatexCommand cite
+key "Knopoff:Ni:2001,Day:Ely:2002"
+
+\end_inset
+
+ to reduce these high frequency oscillations.
+ In computing the strains for the elasticity term in equation 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "eq:elasticity:integral:dynamic:t"
+
+\end_inset
+
+, we use an adjusted displacement rather than the actual displacement, where
+ 
+\begin_inset Formula 
+\begin{equation}
+\vec{u}^{adj}(t)=\vec{u}(t)+\eta^{*}\Delta t\vec{\dot{u}}(t),
+\end{equation}
+
+\end_inset
+
+
+\begin_inset Formula $\vec{u}^{adj}(t)$
+\end_inset
+
+ is the adjusted displacement at time t, 
+\begin_inset Formula $\vec{u}(t)$
+\end_inset
+
+is the original displacement at time (t), 
+\begin_inset Formula $\eta^{*}$
+\end_inset
+
+is the normalized artificial viscosity, 
+\begin_inset Formula $\Delta t$
+\end_inset
+
+ is the time step, and 
+\begin_inset Formula $\vec{\dot{u}}(t)$
+\end_inset
+
+ is the velocity at time 
+\begin_inset Formula $t$
+\end_inset
+
+.
+ The default value for the normalized artificial viscosity is 0.1.
+ We have found values in the range 0.1-0.4 sufficiently suppress numerical
+ noise while not excessively reducing the peak velocity.
+ An example of setting the normalized artificial viscosity in a 
+\family typewriter
+.cfg
+\family default
+ file is
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.formulation]
+\end_layout
+
+\begin_layout LyX-Code
+norm_viscosity = 0.2
+\end_layout
+
+\begin_layout Subsection
 \begin_inset CommandInset label
 LatexCommand label
 name "sec:solvers"
@@ -2313,7 +3131,8 @@
 ve models and kinematic fault ruptures.
  The nonlinear solver, SolverNonlinear, corresponds to the PETSc SNES solver
  and is used in nonlinear problems with nonlinear viscoelastic or elastoplastic
- bulk constitutive models or dynamic fault ruptures.
+ bulk constitutive models, dynamic fault ruptures, or problems involving
+ finite strain (small strain formulation).
  The lumped solver (SolverLumped) is a specialized solver used with the
  lumped system Jacobian matrix.
  The options for the PETSc KSP and SNES solvers are set via the top-level
@@ -3293,20 +4112,23 @@
 \end_layout
 
 \begin_layout Standard
-PyLith currently supports output to VTK files, which can be imported directly
- into a number of visualization tools, such as ParaView, Visit, and MayaVi.
+PyLith currently supports output to VTK and HDF5/Xdmf files, which can be
+ imported directly into a number of visualization tools, such as ParaView,
+ Visit, and MayaVi.
+ The HDF5 files can also be directly accessed via Matlab and PyTables.
  PyLith 1.1 significantly expanded the information available for output,
  including fault information and state variables.
  Output of solution information for the domain, faults, materials, and boundary
  conditions is controlled by an output manager for each module.
  This allows the user to tailor the output to the problem.
- By default PyLith will write a number of VTK files: one VTK file for the
- solution over the entire domain, two VTK files for each fault, and two
- VTK files for each material.
- One of the files for each fault and material includes diagnostic  information.
- For a fault the fields include the final slip, the slip initiation  time,
- and the fault normal vector.
- For a material the fields include the density and the elastic constants.
+ By default PyLith will write a number of files.
+ Diagnostic information for each fault and material is written into a separate
+ file as are the solution and state variables for the domain, each fault,
+ and each material.
+ For a fault the diagnostic fields include the final slip, the slip initiation
+ time, and the fault normal vector.
+ For a material the diagnostic fields include the density and the elastic
+ constants.
  Additional diagnostic information can be included by setting the appropriate
  output parameters.
  See Chapters 
@@ -3325,13 +4147,17 @@
 
  for more information on the available fields and the next section for output
  parameters.
- The second file for each fault and material includes solution information
+ The other files for each fault and material include solution information
  at each time step where output was requested (also customizable by the
  user).
  For a fault the solution information includes the slip and the change in
  tractions on the fault surface.
  For a material the solution information includes the total strain and stress.
  For some materials fields for additional state variables may be available.
+ For output via VTK files, each time step is written to a separate file,
+ whereas for HDF5 files all of the time steps for a given domain, fault,
+ or material are written into the same file.
+ A single Xdmf metadata file is created for each HDF5 file.
 \end_layout
 
 \begin_layout Subsection
@@ -3383,7 +4209,7 @@
 \end_layout
 
 \begin_layout Description
-writer Writer for data (currently limited to VTK writer).
+writer Writer for data (VTK writer or HDF5 writer).
 \end_layout
 
 \begin_layout Description
@@ -3561,11 +4387,11 @@
 \end_layout
 
 \begin_layout Subsubsection
-VTKWriter Parameters
+DataWriterVTK Parameters
 \end_layout
 
 \begin_layout Standard
-The parameters for the VTKWriter are:
+The parameters for the VTK writer are:
 \end_layout
 
 \begin_layout Description
@@ -3584,8 +4410,326 @@
  1.0 s).
 \end_layout
 
+\begin_layout Subsection
+HDF5/Xdmf Output
+\end_layout
+
+\begin_layout Standard
+HDF5 files provide a flexible framework for storing simulation data with
+ datasets in groups logically organized in a tree structure analogous to
+ files in directories.
+ HDF5 output offers parallel, multi-dimensional array output in binary files,
+ so it is much faster and more convenient than the VTK output which uses
+ ASCII files and separate files for each time step.
+ Standards for organizing datasets and groups in HDF5 files do not exist
+ for general finite-element software in geodynamics.
+ Consequently, PyLith uses its own simple layout show in Figure 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "fig:hdf5:layout"
+
+\end_inset
+
+.
+ In order for visualization tools, such as ParaView, to determine which
+ datasets to read and where to find them in the hierarchy of groups within
+ the HDF5 file, we create an Xdmf (eXtensible Data Model and Format, 
+\begin_inset Flex URL
+status open
+
+\begin_layout Plain Layout
+
+www.xdmf.org
+\end_layout
+
+\end_inset
+
+) metadata file that provides this information.
+ This file is written when PyLith closes the HDF5 file at the end of the
+ simulation.
+ In order to visualize the datasets in an HDF5 file, one simply opens the
+ corresponding Xdmf file (the extension is 
+\family typewriter
+.xmf
+\family default
+) in ParaView or Visit.
+ The Xdmf file contains the relative path to the HDF5 file so the files
+ can be moved but must be located together in the same directory.
+ 
+\end_layout
+
+\begin_layout Quote
+
+\series bold
+\color red
+Note:
+\color inherit
+ 
+\series default
+The Xdmf format supports representation of two- and three-dimensional coordinate
+s of points, scalar vector field types, and three-dimensional vector and
+ tensor vector field types but not two-dimensional vector or tensor vector
+ field types.
+ As a result, we separate the components of two-dimensional vector and tensor
+ vector field objects and add the component as a suffix to the name of the
+ field.
+ The vector can be reconstructed within ParaView using the Calculator (see
+ Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:Tutorial-Subduction"
+
+\end_inset
+
+ for an example).
+ Accessing the datasets in the HDF5 files using tools such as PyTables with
+ visualization through MayaVi circumvents this problem, but requires writing
+ Python scripts and a deeper knowledge of the visualization interface.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float figure
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\noindent
+\align center
+\begin_inset Graphics
+	filename figs/hdf5layout.eps
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Plain Layout
+\begin_inset Caption
+
+\begin_layout Plain Layout
+Layout of PyLith HDF5 file.
+ The orange rectangles with rounded corners identify the groups and the
+ blue rectangles with sharp corners identify the datasets.
+ The dimensions of the data sets are shown in parentheses.
+ Most HDF5 files will contain either 
+\family typewriter
+vertex_fields
+\family default
+ or 
+\family typewriter
+cell_fields
+\family default
+ but not both.
+ 
+\begin_inset CommandInset label
+LatexCommand label
+name "fig:hdf5:layout"
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+HDF5 files do not contain self-correcting features that allow a file to
+ be read if part of a dataset is corrupted.
+ This type of error can occur if a job terminates abnormally in the middle
+ or at the end of a simulation on a large cluster or other parallel machine.
+ Fortunately, HDF5 also offers the ability to store datasets in external
+ binary files with the locations specified by links in the HDF5 file.
+ Note that the use of external data files results in one data file per dataset
+ in addition to the HDF5 and Xdmf files.
+ The external data files use the name of the HDF5 file with the dataset
+ name added to the prefix and the 
+\family typewriter
+.h5
+\family default
+ suffix replaced by 
+\family typewriter
+.dat
+\family default
+).
+ The HDF5 files include relative paths to the external data files, so these
+ files can also be moved, but they, too, must be kept together in the same
+ directory.
+ This provides a more robust method of output because one can generate an
+ HDF5 file associated with the uncorrupted portions of the external data
+ files should an error occur.
+ Currently, PyLith does not include a utility to do this, but we plan to
+ add one in a future release.
+ Thus, there are two options when writing PyLith output to HDF5 files: (1)
+ including the datasets directly in the HDF5 files themselves or (2) storing
+ the datasets in external binary files with just metadata in the HDF5 files.
+ Both methods provide similar performance because they will use MPI I/O
+ if it is available.
+ 
+\end_layout
+
+\begin_layout Quote
+
+\series bold
+\color red
+Warning:
+\color inherit
+ 
+\series default
+Storing the datasets within the HDF5 file in a parallel simulation requires
+ that the HDF5 library be configured with the 
+\family typewriter
+--enable-parallel
+\family default
+ option.
+ 
+\color none
+The binary PyLith packages include this feature and it is a default setting
+ in building HDF5 via the PyLith Installer.
+\end_layout
+
+\begin_layout Standard
+Accessing the datasets for additional analysis or visualization is identical
+ in the two methods because the use of external data files is completely
+ transparent to the user except for the presence of the additional files.
+\end_layout
+
+\begin_layout Subsubsection
+HDF5 utilities
+\end_layout
+
+\begin_layout Standard
+HDF5 includes several utilities for examining the contents of HDF5 files.
+ 
+\family typewriter
+h5dump
+\family default
+ is very handy for displaying the hierarchy, dimensions of datasets, attributes,
+ and even the dataset values.
+ 
+\end_layout
+
+\begin_layout Quote
+Dump the entire HDF5 file to stdout (not practical or useful for large files):
+\end_layout
+
+\begin_deeper
+\begin_layout LyX-Code
+h5dump mydata.h5
+\end_layout
+
+\end_deeper
+\begin_layout Quote
+Dump the hierarchy of an HDF5 file to stdout:
+\end_layout
+
+\begin_deeper
+\begin_layout LyX-Code
+h5dump -n mydata.h5
+\end_layout
+
+\end_deeper
+\begin_layout Quote
+Dump the hierarchy with dataset dimensions and attributes to stdout:
+\end_layout
+
+\begin_deeper
+\begin_layout LyX-Code
+h5dump -H mydata.h5
+\end_layout
+
+\end_deeper
+\begin_layout Quote
+Dump dataset 'vertices' in group '/geometry' to stdout:
+\end_layout
+
+\begin_deeper
+\begin_layout LyX-Code
+h5dump -d /geometry/vertices mydata.h5
+\end_layout
+
+\end_deeper
+\begin_layout Subsubsection
+DataWriterHDF5 Parameters
+\end_layout
+
+\begin_layout Standard
+This HDF5 writer stores the datasets inside the HDF5 file and the parameters
+ are:
+\end_layout
+
+\begin_layout Description
+filename Name of HDF5 file (the Xdmf filename is generated from the same
+ prefix).
+\end_layout
+
+\begin_layout Subsubsection
+DataWriterHDF5Ext Parameters
+\end_layout
+
+\begin_layout Standard
+This HDF5 writer stores the datasets using external data files (a more robust
+ method for parallel runs) and the parameters are:
+\end_layout
+
+\begin_layout Description
+filename Name of HDF5 file (the external dataset filenames and the Xdmf
+ filename are generated from the same prefix).
+\end_layout
+
+\begin_layout Standard
+An example of changing the writer from the default VTK writer to the HDF5
+ writer with external datasets for output over the domain in a 
+\family typewriter
+.cfg
+\family default
+ file is
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.domain.output]
+\end_layout
+
+\begin_layout LyX-Code
+output_freq = time_step
+\end_layout
+
+\begin_layout LyX-Code
+time_step = 1.0*yr
+\end_layout
+
+\begin_layout LyX-Code
+cell_data_fields = [displacement,velocity]
+\end_layout
+
+\begin_layout LyX-Code
+writer = pylith.meshio.DataWriterHDF5ExtMesh
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = dislocation.h5
+\end_layout
+
 \begin_layout Section
 Tips and Hints
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Tips:Hints"
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Subsection
@@ -3670,6 +4814,13 @@
 
 \begin_layout Subsection
 Troubleshooting
+\begin_inset CommandInset label
+LatexCommand label
+name "sec:Troubleshooting"
+
+\end_inset
+
+
 \end_layout
 
 \begin_layout Itemize
@@ -3751,19 +4902,19 @@
 \end_layout
 
 \begin_layout Quote
-This error occurs when trying to use the 32-bit linux binary on 64-bit linux
- systems.
+This error occurs when trying to use the 32-bit linux binary on some 64-bit
+ linux systems.
  One of the Python packages PyLith uses does not know how to determine the
  system architecture at runtime.
  The workaround is:
 \end_layout
 
 \begin_layout Enumerate
-Go to the lib/python2.5/site-packages directory.
+Go to the lib/python2.6/site-packages directory.
 \end_layout
 
 \begin_layout Enumerate
-Unzip merlin-1.7-py2.5.egg (if it is a file and not a directory).
+Unzip merlin-1.7-py2.6.egg (if it is a file and not a directory).
 \end_layout
 
 \begin_layout Enumerate
@@ -3776,11 +4927,48 @@
 \end_layout
 
 \begin_layout Enumerate
-If merlin-1.7-py2.5.egg is a file, rezip merlin.
- Go to the site-packages directory and enter "zip -r merlin-1.7-py2.5.egg merlin".
+If merlin-1.7-py2.6.egg is a file, rezip merlin.
+ Go to the site-packages directory and enter "zip -r merlin-1.7-py2.6.egg merlin".
 \end_layout
 
 \begin_layout Itemize
+
+\family typewriter
+-- Solving equations.
+\begin_inset Newline newline
+\end_inset
+
+[0]PETSC ERROR: ---------------- Error Message -------------------------------
+ 
+\begin_inset Newline newline
+\end_inset
+
+[0]PETSC ERROR: Detected zero pivot in LU factorization
+\begin_inset Newline newline
+\end_inset
+
+ see http://www.mcs.anl.gov/petsc/petsc-as/documentation/faq.html#ZeroPivot!
+\end_layout
+
+\begin_layout Quote
+This usually occurs when the null space of the system Jacobian is nonzero,
+ such as the case of a problem without Dirichlet boundary conditions on
+ any boundary.
+ If this arises when using the split fields and algebraic multigrid precondition
+ing and no additional Dirichlet boundary conditions are desired, then the
+ workaround is to revert to using the Additive Schwarz preconditioning without
+ split fields as discussed in Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:petsc:options"
+
+\end_inset
+
+.
+ 
+\end_layout
+
+\begin_layout Itemize
 PyLith crashes with a bus error.
 \end_layout
 

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/3dhex8.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/3dhex8.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/3dhex8.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -84,6 +102,10 @@
 \end_layout
 
 \begin_layout Itemize
+HDF5 output
+\end_layout
+
+\begin_layout Itemize
 Dirichlet displacement and velocity boundary conditions
 \end_layout
 
@@ -415,10 +437,14 @@
 
 \begin_layout LyX-Code
 reader = pylith.meshio.MeshIOCubit
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
- 
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -440,10 +466,14 @@
 
 \begin_layout LyX-Code
 materials = [upper_crust,lower_crust]
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -468,10 +498,14 @@
 
 \begin_layout LyX-Code
 quadrature.cell.dimension = 3
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
- 
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -515,7 +549,7 @@
 ElasticIsotropic3D
 \family default
  material type for both materials.
- This behavior will be overriden by example-specific
+ This behavior will be overridden by example-specific
 \family typewriter
 .cfg
 \family default

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/friction/friction.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/friction/friction.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/friction/friction.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -228,10 +246,14 @@
 
 \begin_layout LyX-Code
 fault = pylith.faults.FaultCohesiveDyn
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -387,6 +409,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step10-fault-traction-slip.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -539,6 +562,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step11-fault-traction-slip.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -666,10 +690,14 @@
 
 \begin_layout LyX-Code
 db_rate.data = [0.0*cm/year,1.0*cm/year,0.0*year]
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -773,6 +801,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step12-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -929,6 +958,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step13-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -1123,6 +1153,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step14-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/gravity/gravity.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -153,8 +171,10 @@
  zero.
  Because all of the materials in the example have the same density, the
  elastic solution for loading via gravitational body forces is
-\begin_inset Formula \begin{equation}
-\sigma_{zz}=\rho gh;\:\sigma_{xx}=\sigma_{yy}=\frac{\nu\rho gh}{1-\nu}\:.\label{eq:1-1}\end{equation}
+\begin_inset Formula 
+\begin{equation}
+\sigma_{zz}=\rho gh;\:\sigma_{xx}=\sigma_{yy}=\frac{\nu\rho gh}{1-\nu}\:.\label{eq:1-1}
+\end{equation}
 
 \end_inset
 
@@ -204,10 +224,14 @@
 
 \begin_layout LyX-Code
 time_step = pylith.problems.TimeStepAdapt
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -340,6 +364,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step15-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -451,10 +476,14 @@
 
 \begin_layout LyX-Code
 db_initial_stress.query_type = linear
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -517,6 +546,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step16-stress_xx-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -661,6 +691,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step17-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/quasistatic/quasistatic.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -72,6 +90,10 @@
 \end_layout
 
 \begin_layout Itemize
+HDF5 output
+\end_layout
+
+\begin_layout Itemize
 Output of velocity field
 \end_layout
 
@@ -134,6 +156,8 @@
  Some of the examples also demonstrate the usage of the nonlinear solver,
  which is required by the nonlinear rheologies (power-law viscoelastic and
  Drucker-Prager elastoplastic).
+ Some of the examples also demonstrate the usage of HDF5 output, which is
+ an alternative to the default VTK output.
  All of the examples are contained in the directory 
 \family typewriter
 examples/3d/hex8
@@ -256,10 +280,14 @@
 
 \begin_layout LyX-Code
 materials.lower_crust = pylith.materials.MaxwellIsotropic3D
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -387,10 +415,14 @@
 
 \begin_layout LyX-Code
 db_rate.data = [0.0*cm/year,1.0*cm/year,0.0*year]
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -491,10 +523,14 @@
 
 \begin_layout LyX-Code
 writer.time_constant = 1.0*year
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -580,6 +616,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step04-displ-t200.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -696,6 +733,14 @@
 
 \begin_layout LyX-Code
 db_initial.data = [0.0*MPa,0.0*MPa,-1.0*MPa]
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -743,6 +788,14 @@
 
 \begin_layout LyX-Code
 label = face_xneg
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -763,6 +816,14 @@
 
 \begin_layout LyX-Code
 db_initial.data = [0.0*cm,-0.5*cm]
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -815,6 +876,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step05-displ-t40.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -862,7 +924,7 @@
  The upper (locked) portion of the fault has 4 m of left-lateral slip every
  200 years, while the lower (creeping) portion of the fault slips at a steady
  rate of 2 cm/year.
- The problem bears some similarity to the strike-slip fault model of Savange
+ The problem bears some similarity to the strike-slip fault model of Savage
  and Prescott 
 \begin_inset CommandInset citation
 LatexCommand cite
@@ -918,10 +980,14 @@
 
 \begin_layout LyX-Code
 time_step = pylith.problems.TimeStepAdapt
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -949,6 +1015,194 @@
 \end_layout
 
 \begin_layout Standard
+In this example and the remainder of the examples in this section, we also
+ make use of HDF5 output rather than the default VTK output.
+ HDF5 output is a new feature beginning with PyLith version 1.6, and it is
+ much more efficient with the additional advantage that multiple time steps
+ can be contained in a single file.
+ PyLith also produces Xdmf files describing the contents of the HDF5 files,
+ which allows the files to be read easily by applications such as ParaView.
+ Since VTK output is still the default, we must change the value from the
+ default.
+ Also note that the filename suffix is 
+\family typewriter
+.h5
+\family default
+:
+\end_layout
+
+\begin_layout LyX-Code
+# Give basename for output of solution over domain.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.problem.formulation.output.domain]
+\end_layout
+
+\begin_layout LyX-Code
+# We specify that output occurs in terms of a given time frequency, and
+\end_layout
+
+\begin_layout LyX-Code
+# ask for output every 50 years.
+\end_layout
+
+\begin_layout LyX-Code
+output_freq = time_step
+\end_layout
+
+\begin_layout LyX-Code
+time_step = 50.0*year
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# We are using HDF5 output so we must change the default writer.
+\end_layout
+
+\begin_layout LyX-Code
+writer = pylith.meshio.DataWriterHDF5Mesh
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = output/step06.h5  
+\end_layout
+
+\begin_layout Standard
+Note that we no longer need the 
+\family typewriter
+writer.time_format
+\family default
+ or 
+\family typewriter
+writer.time_constant
+\family default
+ properties, since all time steps are contained in a single file.
+ The HDF5 writer does not have these properties, so if we attempt to define
+ them an error will result.
+\end_layout
+
+\begin_layout Standard
+We also set the writer for other output as well, since it is not the default.
+ For subdomain output we use:
+\end_layout
+
+\begin_layout LyX-Code
+# Give basename for output of solution over ground surface.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.problem.formulation.output.subdomain]
+\end_layout
+
+\begin_layout LyX-Code
+# Name of nodeset for ground surface.
+\end_layout
+
+\begin_layout LyX-Code
+label = face_zpos
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
+\end_layout
+
+\begin_layout LyX-Code
+# We keep the default output frequency behavior (skip every n steps), and
+\end_layout
+
+\begin_layout LyX-Code
+# ask to skip 0 steps between output, so that we get output every time step.
+\end_layout
+
+\begin_layout LyX-Code
+# We again switch the writer to produce HDF5 output.
+\end_layout
+
+\begin_layout LyX-Code
+# Note that we specifically ask for a submesh writer.
+\end_layout
+
+\begin_layout LyX-Code
+skip = 0
+\end_layout
+
+\begin_layout LyX-Code
+writer = pylith.meshio.DataWriterHDF5SubMesh
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = output/step06-groundsurf.h5  
+\end_layout
+
+\begin_layout Standard
+For fault output we use:
+\end_layout
+
+\begin_layout LyX-Code
+# Give basename for fault rupture output.
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.problem.interfaces.fault.output]
+\end_layout
+
+\begin_layout LyX-Code
+# We keep the default output frequency behavior (skip every n steps), and
+\end_layout
+
+\begin_layout LyX-Code
+# ask to skip 0 steps between output, so that we get output every time step.
+\end_layout
+
+\begin_layout LyX-Code
+# We again switch the writer to produce HDF5 output.
+\end_layout
+
+\begin_layout LyX-Code
+# Note that we specifically ask for a subsubmesh writer.
+\end_layout
+
+\begin_layout LyX-Code
+skip = 0
+\end_layout
+
+\begin_layout LyX-Code
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+\end_layout
+
+\begin_layout LyX-Code
+writer.filename = output/step06-fault.h5
+\end_layout
+
+\begin_layout Standard
+Note the usage of 
+\family typewriter
+pylith.meshio.DataWriterHDF5SubMesh
+\family default
+ for subdomain output and
+\family typewriter
+
+\begin_inset Newline newline
+\end_inset
+
+pylith.meshio.DataWriterHDF5SubSubMesh
+\family default
+ for fault output.
+\end_layout
+
+\begin_layout Standard
 Due to the simplicity of the boundary conditions, we are able to use the
  default 
 \family typewriter
@@ -1031,10 +1285,14 @@
 
 \begin_layout LyX-Code
 slip_time.iohandler.filename = spatialdb/sliptime.spatialdb
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -1051,10 +1309,14 @@
 
 \begin_layout LyX-Code
 slip_time.iohandler.filename = spatialdb/sliptime.spatialdb
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -1146,13 +1408,13 @@
 \begin_layout Standard
 This additional information will be contained in file 
 \family typewriter
-step06-fault_info.vtk
+step06-fault_info.
 \family default
-.
+h5.
  It will contain final slip information for each earthquake source along
  with slip time information.
- When we have run the simulation, the output VTK files will be contained
- in 
+ When we have run the simulation, the output HDF5 and Xdmf files will be
+ contained in 
 \family typewriter
 examples/3d/hex8/output
 \family default
@@ -1161,6 +1423,11 @@
 step06
 \family default
 ).
+ To open the files in ParaView, the Xdmf (
+\family typewriter
+.xmf
+\family default
+) files should be opened, as these files describe the HDF5 data structure.
  Results using ParaView are shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -1178,6 +1445,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step06-displ-t300.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -1278,10 +1546,14 @@
 
 \begin_layout LyX-Code
 db_rate.data = [0.0*cm/year,1.0*cm/year,0.0*year]
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -1338,10 +1610,10 @@
 \end_layout
 
 \begin_layout LyX-Code
-# Give basename for VTK domain output of solution over domain.
-\end_layout
+# Give basename for output of solution over domain.
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 [pylithapp.problem.formulation.output.domain]
 \end_layout
 
@@ -1351,22 +1623,13 @@
 
 \begin_layout LyX-Code
 # ask for output every 50 years.
- The time stamps of the output files are
 \end_layout
 
 \begin_layout LyX-Code
-# in years (rather than the default of seconds), and we give a format for
-\end_layout
-
-\begin_layout LyX-Code
-# the time stamp.
-\end_layout
-
-\begin_layout LyX-Code
 # We also request velocity output in addition to displacements.
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 vertex_data_fields = [displacement,velocity]
 \end_layout
 
@@ -1376,26 +1639,38 @@
 
 \begin_layout LyX-Code
 time_step = 50.0*year
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
-writer.filename = output/step07.vtk
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
-writer.time_format = %04.0f
+# We are using HDF5 output so we must change the default writer.
 \end_layout
 
 \begin_layout LyX-Code
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 \end_layout
 
 \begin_layout LyX-Code
+writer.filename = output/step07.h5
+\begin_inset Newline newline
+\end_inset
 
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
-# Give basename for VTK domain output of solution over ground surface.
+# Give basename for output of solution over ground surface.
 \end_layout
 
 \begin_layout LyX-Code
@@ -1408,6 +1683,14 @@
 
 \begin_layout LyX-Code
 label = face_zpos
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -1428,23 +1711,35 @@
 
 \begin_layout LyX-Code
 skip = 0
+\begin_inset Newline newline
+\end_inset
+
+
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
-writer.filename = output/step07-groundsurf.vtk
+# We again switch the writer to produce HDF5 output.
 \end_layout
 
 \begin_layout LyX-Code
-writer.time_format = %04.0f
+# Note that we specifically ask for a submesh writer.
 \end_layout
 
 \begin_layout LyX-Code
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5SubMesh
 \end_layout
 
+\begin_layout LyX-Code
+writer.filename = output/step07-groundsurf.h5
+\end_layout
+
 \begin_layout Standard
-When we have run the simulation, the output VTK files will be contained
- in 
+When we have run the simulation, the output HDF5 and Xdmf files will be
+ contained in 
 \family typewriter
 examples/3d/hex8/output
 \family default
@@ -1453,6 +1748,19 @@
 step07
 \family default
 ).
+ As for example 
+\family typewriter
+step06
+\family default
+, make sure to open the 
+\family typewriter
+.xmf
+\family default
+ files rather than the 
+\family typewriter
+.h5
+\family default
+ files.
  Results using ParaView are shown in Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
@@ -1470,6 +1778,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step07-displ-vel-t300.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -1841,8 +2150,8 @@
 \end_layout
 
 \begin_layout Standard
-When we have run the simulation, the output VTK files will be contained
- in 
+When we have run the simulation, the output HDF5 and Xdmf files will be
+ contained in 
 \family typewriter
 examples/3d/hex8/output
 \family default
@@ -1868,6 +2177,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step08-strain-displ-t150.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -1880,16 +2190,16 @@
  for example step08 at t = 150 years visualized using ParaView.
  For this visualization, we loaded both the 
 \family typewriter
-step08-lower_crust_txxxx.vtk
+step08-lower_crust.xmf
 \family default
  and 
 \family typewriter
-step08-upper_crust_txxxx.vtk
+step08-upper_crust.xmf
 \family default
  files to contour the strain field, and superimposed on it the displacement
  field vectors from 
 \family typewriter
-step08_txxxx.vtk
+step08.xmf
 \family default
 .
 \begin_inset CommandInset label
@@ -2107,8 +2417,8 @@
 \end_layout
 
 \begin_layout Standard
-When we have run the simulation, the output VTK files will be contained
- in 
+When we have run the simulation, the output HDF5 and Xdmf files will be
+ contained in 
 \family typewriter
 examples/3d/hex8/output
 \family default
@@ -2134,6 +2444,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step08-strain-displ-t150.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -2146,16 +2457,16 @@
  for example step09 at t = 150 years visualized using ParaView.
  For this visualization, we loaded both the 
 \family typewriter
-step09-lower_crust_txxxx.vtk
+step09-lower_crust.xmf
 \family default
  and 
 \family typewriter
-step09-upper_crust_txxxx.vtk
+step09-upper_crust.xmf
 \family default
  files to contour the strain field, and superimposed on it the displacement
  field vectors from 
 \family typewriter
-step09_txxxx.vtk
+step09.xmf
 \family default
 .
 \begin_inset CommandInset label

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/static/static.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/static/static.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dhex8/static/static.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -278,10 +296,14 @@
 
 \begin_layout LyX-Code
 db_initial.iohandler.filename = spatialdb/fixeddisp_axial_shear.spatialdb
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -493,10 +515,14 @@
 
 \begin_layout LyX-Code
 db_initial.iohandler.filename = spatialdb/tractions_axial_shear.spatialdb
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -575,6 +601,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step02-displ.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset
@@ -688,10 +715,14 @@
 
 \begin_layout LyX-Code
 label = fault
-\end_layout
+\begin_inset Newline newline
+\end_inset
 
-\begin_layout LyX-Code
 
+\begin_inset Newline newline
+\end_inset
+
+
 \end_layout
 
 \begin_layout LyX-Code
@@ -803,6 +834,7 @@
 \align center
 \begin_inset Graphics
 	filename figs/step03-displ.jpg
+	lyxscale 50
 	width 10cm
 
 \end_inset

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dtet4/3dtet4.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dtet4/3dtet4.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/3dtet4/3dtet4.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.5 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 0
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 1
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -107,6 +125,14 @@
 ZeroDispDB spatial database
 \end_layout
 
+\begin_layout Itemize
+Custom algebraic multigrid preconditioner with split fields
+\end_layout
+
+\begin_layout Itemize
+Global uniform mesh refinement
+\end_layout
+
 \begin_layout Subsection
 Overview
 \end_layout
@@ -130,7 +156,10 @@
  to create a mesh, as well as describing how to use a LaGriT-generated mesh
  in PyLith.
  In this tutorial, we will walk through the steps necessary to construct,
- run, and view two problems that use the same mesh.
+ run, and visualize the results for two problems that use the same mesh.
+ For each of these problems we also consider a simulation using a custom
+ algebraic multigrid preconditioner with a globally uniformly refined mesh
+ that reduces the node spacing by a factor of two.
  In addition to this manual, each of the files for the example problems
  includes extensive comments.
 \end_layout
@@ -140,7 +169,7 @@
 \end_layout
 
 \begin_layout Standard
-The mesh for these examples is a simple rectangular solid (Figure 
+The mesh for these examples is a simple rectangular prism (Figure 
 \begin_inset CommandInset ref
 LatexCommand ref
 reference "fig:3dtet4-mesh"
@@ -155,10 +184,9 @@
 examples/3d/tet4.
 
 \family default
- Investigation of this command file should provide some insight into how
- to use LaGriT with PyLith.
- For more detailed information on using LaGriT, refer to the LaGriT web
- site 
+ Examination of this command file should provide some insight into how to
+ use LaGriT with PyLith.
+ For more detailed information refer to the LaGriT web site 
 \begin_inset Flex URL
 status collapsed
 
@@ -176,8 +204,7 @@
 \end_layout
 
 \begin_layout Standard
-If you are using LaGriT to generate your own mesh, there are two ways to
- use the command file.
+There are two ways to use the command file.
  The simplest method is to go to the
 \family sans
  
@@ -335,8 +362,7 @@
 
 \begin_layout Standard
 In addition to the mesh, the example problems share additional information.
- For problems of this type, it is generally useful to create a file named
- 
+ In such cases it is generally useful to create a file named 
 \family typewriter
 pylithapp.cfg
 \family default
@@ -408,11 +434,11 @@
 \end_layout
 
 \begin_layout LyX-Code
-filename_gmv = tet4_1000m_binary.gmv
+filename_gmv = mesh/tet4_1000m_binary.gmv
 \end_layout
 
 \begin_layout LyX-Code
-filename_pset = tet4_1000m_binary.pset
+filename_pset = mesh/tet4_1000m_binary.pset
 \end_layout
 
 \begin_layout LyX-Code
@@ -446,7 +472,7 @@
 \end_layout
 
 \begin_layout Standard
-This example differs from most other examples, because we specify four material
+This example differs from previous examples, because we specify two material
  groups:
 \end_layout
 
@@ -475,7 +501,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-db.iohandler.filename = mat_elastic.spatialdb
+db.iohandler.filename = spatialdb/mat_elastic.spatialdb
 \end_layout
 
 \begin_layout LyX-Code
@@ -503,7 +529,7 @@
 \end_layout
 
 \begin_layout LyX-Code
-db.iohandler.filename = mat_viscoelastic.spatialdb
+db.iohandler.filename = spatialdb/mat_viscoelastic.spatialdb
 \end_layout
 
 \begin_layout LyX-Code
@@ -557,7 +583,7 @@
 \family default
  are contained in the file 
 \family typewriter
-shearxy.cfg
+step01.cfg
 \family default
 .
  These settings are:
@@ -660,7 +686,7 @@
  defining the subdomain and gives the base filename for VTK output over
  the subdomain corresponding to the ground surface (
 \family typewriter
-shearxy-groundsurf.vtk
+step01-groundsurf.vtk
 \family default
 ).
 \end_layout
@@ -673,7 +699,7 @@
 \family default
  material set (
 \family typewriter
-shearxy-elastic.vtk
+step01-elastic.vtk
 \family default
 ), and causes state variables to be averaged over all quadrature points
  in each cell.
@@ -687,7 +713,7 @@
 \family default
  material set (
 \family typewriter
-shearxy-viscoelastic.vtk
+step01-viscoelastic.vtk
 \family default
 ), and causes state variables to be averaged over all quadrature points
  in each cell.
@@ -701,7 +727,7 @@
 \family default
 , as specified in 
 \family typewriter
-shearxy.cfg
+step01.cfg
 \family default
 .
  The format of all spatial database files is similar.
@@ -735,9 +761,9 @@
 ) along with the problem-specific files (
 \family typewriter
 \size small
-shearxy.cfg
+step01.cfg
 \family default
-, 
+ and 
 \family typewriter
 fixeddisp_shear.spatialdb
 \family default
@@ -747,14 +773,14 @@
 \end_layout
 
 \begin_layout LyX-Code
-pylith shearxy.cfg
+pylith step01.cfg
 \end_layout
 
 \begin_layout Standard
 Once the problem has run, six files will be produced.
  The first file is named 
 \family typewriter
-shearxy_t0000000.vtk
+step01_t0000000.vtk
 \family default
 .
  The 
@@ -767,7 +793,7 @@
  mesh vertices.
  The second file is named 
 \family typewriter
-shearxy-statevars-elastic_t0000000.vtk
+step01-statevars-elastic_t0000000.vtk
 \family default
 .
  This file contains the state variables for each cell in the material group
@@ -783,7 +809,7 @@
  each linear tetrahedron, this will have no effect.
  The third file (
 \family typewriter
-shearxy-statevars-viscoelastic_info.vtk
+step01-statevars-viscoelastic_info.vtk
 \family default
 ) gives the material properties used for the 
 \family typewriter
@@ -808,18 +834,18 @@
  of the material sets.
  The final file (
 \family typewriter
-shearxy-groundsurf_t0000000.vtk
+step01-groundsurf_t0000000.vtk
 \family default
 ) is analogous to 
 \family typewriter
-shearxy_t0000000.vtk
+step01_t0000000.vtk
 \family default
 , but in this case the results are only given for a subset of the mesh correspon
 ding to the ground surface.
  Also, the cells in this file are one dimension lower than the cells described
  in 
 \family typewriter
-shearxy_t0000000.vtk
+step01_t0000000.vtk
 \family default
 , so they are triangles rather than tetrahedra.
  All of the 
@@ -882,6 +908,546 @@
 
 \end_layout
 
+\begin_layout Subsubsection
+Alternative solver and discretization settings
+\end_layout
+
+\begin_layout Standard
+Example 
+\family typewriter
+step01.cfg
+\family default
+ uses the additive Schwarz preconditioner in conjunction with a classical
+ Gram-Schmidt orthogonalization iterative solver.
+ This preconditioner works reasonably well but the number of iterations
+ generally scales with problem size.
+ Even this small, simple problem requires 24 iterations.
+ In this example (
+\family typewriter
+step02.cfg
+\family default
+), we use a more sophisticated preconditioner that preconditions the degrees
+ of freedom associated with the three Cartesian coordinates separately while
+ using an algebraic multigrid algorithm (see Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:petsc:options"
+
+\end_inset
+
+ for details).
+ Additionally, we illustrate the use of global uniform mesh refinement to
+ increase the resolution of the solution by a factor of two.
+ Because the mesh is refined in parallel after distribution, this technique
+ can be used to run a larger problem than would be possible if the full
+ resolution mesh had to be generated by the mesh generator.
+ LaGriT runs only in serial and CUBIT has extremely limited parallel mesh
+ generation capabilities.
+ Table 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tab:3dtet4:solver:cmp"
+
+\end_inset
+
+ shows the improved efficiency of the solver using the split fields with
+ the algebraic multigrid preconditioner, especially as the problem size
+ becomes larger.
+ We have found similar results for other problems.
+\end_layout
+
+\begin_layout Standard
+\noindent
+\align center
+\begin_inset Float table
+placement H
+wide false
+sideways false
+status open
+
+\begin_layout Plain Layout
+\align center
+\begin_inset Caption
+
+\begin_layout Plain Layout
+\begin_inset CommandInset label
+LatexCommand label
+name "tab:3dtet4:solver:cmp"
+
+\end_inset
+
+Number of iterations in linear solve for the Shear Displacement and Kinematic
+ Fault Slip problems discussed in this section.
+ The preconditioner using split fields and an algebraic multigrid algorithm
+ solves the linear system with fewer iterations with only a small to moderate
+ increase as the problem size grows.
+\end_layout
+
+\end_inset
+
+
+\begin_inset Tabular
+<lyxtabular version="3" rows="9" columns="4">
+<features tabularvalignment="middle">
+<column alignment="center" valignment="top" width="1.5in">
+<column alignment="center" valignment="middle" width="1.25in">
+<column alignment="center" valignment="top" width="1.5in">
+<column alignment="center" valignment="top" width="1in">
+<row>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Problem
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Preconditioner
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+Refinement
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\series bold
+# Iterations in Solve
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Shear Displacement
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+additive Schwarz
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+none (546 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+24 (step01)
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="4" alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+2x refinement
+\end_layout
+
+\begin_layout Plain Layout
+(3890 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+48
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+split fields with algebraic multigrid
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+none (546 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+12
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="4" alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+2x refinement
+\end_layout
+
+\begin_layout Plain Layout
+(3890 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+17 (step02)
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+Kinematic Fault Slip
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+additive Schwarz
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+none (735 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+35 (step03)
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="4" alignment="left" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+2x refinement
+\end_layout
+
+\begin_layout Plain Layout
+(4527 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+83
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="3" alignment="left" valignment="middle" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+split fields with algebraic multigrid
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+none (735 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+33
+\end_layout
+
+\end_inset
+</cell>
+</row>
+<row>
+<cell multirow="4" alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell multirow="4" alignment="left" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+2x refinement
+\end_layout
+
+\begin_layout Plain Layout
+(4527 DOF)
+\end_layout
+
+\end_inset
+</cell>
+<cell alignment="center" valignment="top" topline="true" bottomline="true" leftline="true" rightline="true" usebox="none">
+\begin_inset Text
+
+\begin_layout Plain Layout
+53 (step04)
+\end_layout
+
+\end_inset
+</cell>
+</row>
+</lyxtabular>
+
+\end_inset
+
+
+\end_layout
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Standard
+The field splitting and algebraic multigrid preconditioning are setup in
+ 
+\family typewriter
+step02.cfg
+\family default
+ with the following parameters:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.formulation]
+\end_layout
+
+\begin_layout LyX-Code
+split_fields = True
+\end_layout
+
+\begin_layout LyX-Code
+matrix_type = aij
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.petsc]
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_type = fieldsplit
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_fieldsplit_real_diagonal = 
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_fieldsplit_type = multiplicative
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_0_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_1_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_2_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_0_ksp_type = preonly
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_1_ksp_type = preonly
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_2_ksp_type = preonly
+\end_layout
+
+\begin_layout Standard
+The uniform global refinement requires changing just a single parameter:
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.mesh_generator]
+\end_layout
+
+\begin_layout LyX-Code
+refiner = pylith.topology.RefineUniform
+\end_layout
+
 \begin_layout Subsection
 Kinematic Fault Slip Example
 \end_layout
@@ -912,7 +1478,7 @@
 \family default
  are contained in the file 
 \family typewriter
-dislocation.cfg
+step03.cfg
 \family default
 .
  These settings are:
@@ -995,7 +1561,7 @@
 pylithapp.problem.formulation.output.output.writer Gives the base filename for
  VTK output over the entire domain (
 \family typewriter
-dislocation.vtk
+step03.vtk
 \family default
 ).
 \end_layout
@@ -1005,7 +1571,7 @@
  defining the subdomain and gives the base filename for VTK output over
  the subdomain corresponding to the ground surface (
 \family typewriter
-dislocation-groundsurf.vtk
+step03-groundsurf.vtk
 \family default
 ).
 \end_layout
@@ -1014,7 +1580,7 @@
 pylithapp.timedependent.interfaces.fault.output.writer Gives the base filename
  for cohesive cell output files (
 \family typewriter
-dislocation-fault.vtk
+step03-fault.vtk
 \family default
 ).
 \end_layout
@@ -1027,7 +1593,7 @@
 \family default
  material set (
 \family typewriter
-dislocation-statevars-elastic.vtk
+step03-statevars-elastic.vtk
 \family default
 ), and causes state variables to be averaged over all quadrature points
  in each cell.
@@ -1041,7 +1607,7 @@
 \family default
  material set (
 \family typewriter
-dislocation-statevars-viscoelastic.vtk
+step03-statevars-viscoelastic.vtk
 \family default
 ), and causes state variables to be averaged over all quadrature points
  in each cell.
@@ -1103,17 +1669,13 @@
 ) along with the problem-specific files (
 \family typewriter
 \size small
-dislocation
-\begin_inset Newline newline
-\end_inset
-
-.cfg
+step03.cfg
 \family default
 , 
 \family typewriter
 finalslip.spatialdb
 \family default
-, 
+, and 
 \family typewriter
 sliptime.spatialdb
 \family default
@@ -1123,14 +1685,14 @@
 \end_layout
 
 \begin_layout LyX-Code
-pylith dislocation.cfg
+pylith step03.cfg
 \end_layout
 
 \begin_layout Standard
 Once the problem has run, eight files will be produced.
  The first file is named 
 \family typewriter
-dislocation_t0000000.vtk
+step03_t0000000.vtk
 \family default
 .
  The 
@@ -1143,7 +1705,7 @@
  mesh vertices.
  The second file is named 
 \family typewriter
-dislocation-statevars-elastic_t0000000.vtk
+step03-statevars-elastic_t0000000.vtk
 \family default
 .
  This file contains the state variables for each cell in the material group
@@ -1158,7 +1720,7 @@
  each linear tetrahedron, this will have no effect.
  The third file (
 \family typewriter
-dislocation-statevars-viscoelastic_info.vtk
+step03-statevars-viscoelastic_info.vtk
 \family default
 ) gives the material properties used for the 
 \family typewriter
@@ -1183,29 +1745,29 @@
  of the material sets.
  The file 
 \family typewriter
-dislocation-groundsurf_t0000000.vtk
+step03-groundsurf_t0000000.vtk
 \family default
  is analogous to 
 \family typewriter
-dislocation_t0000000.vtk
+step03_t0000000.vtk
 \family default
 , but in this case the results are only given for a subset of the mesh correspon
 ding to the ground surface.
  Also, the cells in this file are one dimension lower than the cells described
  in 
 \family typewriter
-dislocation_t0000000.vtk
+step03_t0000000.vtk
 \family default
 , so they are triangles rather than tetrahedra.
  The file 
 \family typewriter
-dislocation-fault_t0000000.vtk
+step03-fault_t0000000.vtk
 \family default
  gives the specified fault slip for each vertex on the fault, along with
  the computed traction change for the cohesive cell.
  The final file, 
 \family typewriter
-dislocation-fault_info.vtk
+step03-fault_info.vtk
 \family default
 , provides information such as the normal direction, final slip, and slip
  time for each vertex on the fault.
@@ -1270,5 +1832,116 @@
 
 \end_layout
 
+\begin_layout Subsubsection
+Alternative solver and discretization settings
+\end_layout
+
+\begin_layout Standard
+As we did for the Shear Dislocation examples, in 
+\family typewriter
+step04.cfg
+\family default
+ we switch to using the splits fields and algebraic multigrid preconditioner
+ along with global uniform mesh refinement.
+ Because PyLith implements fault slip using Lagrange multipliers, we make
+ a few small adjusments to the solver settings.
+ As discussed in Section 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "sec:petsc:options"
+
+\end_inset
+
+, we use a custom preconditioner for the Lagrange multiplier degrees of
+ freedom when preconditioning with field splitting.
+ Within 
+\family typewriter
+step04.cfg
+\family default
+ we turn on the use of the custom preconditioner for the Lagrange multiplier
+ degrees of freedom and add the corresponding settings for the fourth field
+ for the algebraic multigrid algorithm,
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.timedependent.formulation]
+\end_layout
+
+\begin_layout LyX-Code
+split_fields = True
+\end_layout
+
+\begin_layout LyX-Code
+use_custom_constraint_pc = True
+\end_layout
+
+\begin_layout LyX-Code
+matrix_type = aij
+\end_layout
+
+\begin_layout LyX-Code
+
+\end_layout
+
+\begin_layout LyX-Code
+[pylithapp.petsc]
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_type = fieldsplit
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_fieldsplit_real_diagonal =
+\end_layout
+
+\begin_layout LyX-Code
+fs_pc_fieldsplit_type = multiplicative
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_0_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_1_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_2_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_3_pc_type = ml
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_0_ksp_type = preonly
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_1_ksp_type = preonly
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_2_ksp_type = preonly
+\end_layout
+
+\begin_layout LyX-Code
+fs_fieldsplit_3_ksp_type = preonly
+\end_layout
+
+\begin_layout Standard
+Table 
+\begin_inset CommandInset ref
+LatexCommand ref
+reference "tab:3dtet4:solver:cmp"
+
+\end_inset
+
+ shows the improved efficiency of the solver using the split fields with
+ the algebraic multigrid preconditioner.
+\end_layout
+
 \end_body
 \end_document

Copied: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/subduction (from rev 18641, short/3D/PyLith/trunk/doc/userguide/tutorials/subduction)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/tutorials.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/tutorials/tutorials.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/tutorials/tutorials.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -7,18 +7,26 @@
 
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \paperfontsize default
 \spacing single
 \use_hyperref false
@@ -26,9 +34,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -36,15 +53,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle default
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -222,6 +240,13 @@
 
 \begin_inset CommandInset include
 LatexCommand input
+filename "subduction/subduction.lyx"
+
+\end_inset
+
+
+\begin_inset CommandInset include
+LatexCommand input
 filename "shearwave/shearwave.lyx"
 
 \end_inset

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/axialdisp.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/dislocation.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twohex8/figs/sheardisp.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/axialdisp.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/axialtract.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/dislocation.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twoquad4/figs/sheardispl.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4/figs/axialdisp.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4/figs/dislocation.eps
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/doc/userguide/tutorials/twotet4-geoproj/figs/dislocation.eps
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/doc/userguide/userguide.lyx
===================================================================
--- short/3D/PyLith/branches/multifields/doc/userguide/userguide.lyx	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/doc/userguide/userguide.lyx	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,5 +1,5 @@
-#LyX 1.6.4 created this file. For more info see http://www.lyx.org/
-\lyxformat 345
+#LyX 2.0 created this file. For more info see http://www.lyx.org/
+\lyxformat 413
 \begin_document
 \begin_header
 \textclass book
@@ -11,18 +11,26 @@
 %\newcommand\Prefix[3]{\vphantom{#3}#1#2#3}
 \end_preamble
 \use_default_options false
+\maintain_unincluded_children false
 \language english
+\language_package default
 \inputencoding latin1
+\fontencoding global
 \font_roman default
 \font_sans default
 \font_typewriter default
 \font_default_family default
+\use_non_tex_fonts false
 \font_sc false
 \font_osf false
 \font_sf_scale 100
 \font_tt_scale 100
 
 \graphics default
+\default_output_format default
+\output_sync 0
+\bibtex_command default
+\index_command default
 \float_placement tbph
 \paperfontsize default
 \spacing single
@@ -40,9 +48,18 @@
 \use_geometry true
 \use_amsmath 1
 \use_esint 0
+\use_mhchem 1
+\use_mathdots 1
 \cite_engine basic
 \use_bibtopic false
+\use_indices false
 \paperorientation portrait
+\suppress_date false
+\use_refstyle 0
+\index Index
+\shortcut idx
+\color #008000
+\end_index
 \leftmargin 1in
 \topmargin 1in
 \rightmargin 1in
@@ -50,15 +67,16 @@
 \secnumdepth 3
 \tocdepth 3
 \paragraph_separation indent
-\defskip medskip
+\paragraph_indentation default
 \quotes_language english
 \papercolumns 1
 \papersides 2
 \paperpagestyle plain
 \tracking_changes false
 \output_changes false
-\author "" 
-\author "" 
+\html_math_output 0
+\html_css_as_file 0
+\html_be_strict false
 \end_header
 
 \begin_body
@@ -114,11 +132,11 @@
 \end_layout
 
 \begin_layout Author
-© California Institute of Technology
+© University of California, Davis
 \begin_inset Newline newline
 \end_inset
 
-Version 1.5.0
+Version 1.6.0
 \end_layout
 
 \begin_layout Date
@@ -248,6 +266,9 @@
 \end_inset
 
 
+\end_layout
+
+\begin_layout Standard
 \begin_inset CommandInset include
 LatexCommand input
 filename "boundaryconditions/boundaryconditions.lyx"
@@ -318,70 +339,33 @@
 
 
 \begin_inset CommandInset include
-LatexCommand input
-filename "analyticalsolns/analyticalsolns.lyx"
+LatexCommand include
+filename "materials/altformulations.lyx"
 
 \end_inset
 
 
 \begin_inset CommandInset include
 LatexCommand input
-filename "license.lyx"
+filename "analyticalsolns/analyticalsolns.lyx"
 
 \end_inset
 
 
-\end_layout
+\begin_inset CommandInset include
+LatexCommand input
+filename "license.lyx"
 
-\begin_layout Bibliography
-\begin_inset CommandInset bibitem
-LatexCommand bibitem
-label "1"
-key "Williams:etal:2005"
-
 \end_inset
 
-Williams, C.A., B.
- Aagaard, and M.G.
- Knepley (2005), Development of software for studying earthquakes across
- multiple spatial and temporal scales by coupling quasi-static and dynamic
- simulations, 
-\emph on
-Eos Trans.
- AGU, 86
-\emph default
-(52), Fall Meet.
- Suppl., Abstract S53A-1072.
-\end_layout
 
-\begin_layout Bibliography
-\begin_inset CommandInset bibitem
-LatexCommand bibitem
-label "2"
-key "Williams:2006"
-
-\end_inset
-
-Williams, C.A.
- (2006), Development of a package for modeling stress in the lithosphere,
- 
-\emph on
-Eos Trans.
- AGU,
-\emph default
- 
-\emph on
-87
-\emph default
-(36), Jt.
- Assem.
- Suppl., Abstract T24A-01 Invited.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "3"
+label "Aagaard et al., 2001a"
 key "Aagaard:etal:2001a"
 
 \end_inset
@@ -397,9 +381,10 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "4"
+label "Aagaard et al., 2001b"
 key "Aagaard:etal:2001b"
 
 \end_inset
@@ -416,9 +401,10 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "5"
+label "Aagaard et al., 2007"
 key "Aagaard:etal:2007"
 
 \end_inset
@@ -436,9 +422,10 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "6"
+label "Aagaard et al., 2008"
 key "Aagaard:etal:2008"
 
 \end_inset
@@ -460,151 +447,151 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "7"
-key "Brune:1970"
+label "Bathe, 1995"
+key "Bathe:1995"
 
 \end_inset
 
-Brune, J.N.
- (1970), Tectonic stress and spectra of seismic shear waves from earthquakes,
- 
-\emph on
-Journal of Geophysical Research, 75
-\emph default
-, 4997-5009.
+Bathe, K.-J.
+ (1995), 
+\shape italic
+Finite-Element Procedures
+\shape default
+, Prentice Hall, Upper Saddle River, New Jersey, 1037 pp.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "8"
-key "Kojic:Bathe:1987"
+label "Ben-Zion and Rice, 1997"
+key "BenZion:Rice:1997"
 
 \end_inset
 
-Kojic, M.
- and K.-J.
- Bathe (1987), The `Effective Stress-Function' Algorithm for Thermo-Elasto-Plast
-icity and Creep, 
-\emph on
-Int.
- J.
- Num.
- Meth.
- Eng
-\emph default
-.
-\emph on
-, 24
-\emph default
-, 1509-1532.
+Ben-Zion, Y.
+ and J.R.
+ Rice (1997), Dynamic simulations of slip on a smooth fault in an elastic
+ solid, J.
+ Geophys.
+ Res., 102, 17,771–17,784.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "9"
-key "Zienkiewicz:Taylor:2000"
+label "Brune, 1970"
+key "Brune:1970"
 
 \end_inset
 
-Zienkiewicz, O.C.
- and R.L.
- Taylor (2000), 
-\shape italic
-The Finite Element Method, Fifth Edition, Volume 2: Solid Mechanics
-\shape default
-, Butterworth-Heinemann, Oxford, 459 pp.
+Brune, J.N.
+ (1970), Tectonic stress and spectra of seismic shear waves from earthquakes,
+ 
+\emph on
+Journal of Geophysical Research, 75
+\emph default
+, 4997-5009.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "10"
-key "Taylor:2003"
+label "Day and Ely, 2002"
+key "Day:Ely:2002"
 
 \end_inset
 
-Taylor, R.L.
- (2003), `FEAP--A Finite Element Analysis Program', 
+Day, S.M.
+ and G.P.
+ Ely (2002), Effct of a shallow weak zone on fault rupture: Numerical simulation
+ of scale-model experiments, 
 \shape italic
-Version 7.5 Theory Manual
+Bull.
+ Seismol.
+ Soc.
+ Am.
 \shape default
-, 154 pp.
+, 92(8), 3022-3041, doi: 10.1785/0120010273.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "11"
-key "Timoshenko:Goodier:1987"
+label "Drucker and Prager, 1952"
+key "Drucker:Prager:1952"
 
 \end_inset
 
-Timoshenko, S.P.
- and J.N.
- Goodier (1987), 
+Drucker, D.
+ C.
+ and Prager, W.
+ (1952).
+ Soil mechanics and plastic analysis for limit design, 
 \shape italic
-Theory of Elasticity, Third Edition
+Quarterly of Applied Mathematics
 \shape default
-, McGraw-Hill, New York, 567 pp.
+, 
+\shape italic
+10
+\shape default
+, 157–165.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "12"
-key "Okada:1992"
+label "Liu et al., 2006"
+key "Liu:etal:2006"
 
 \end_inset
 
-Okada, Y., Internal deformation due to shear and tensile faults in a half-space
- (1992), 
+Liu, P., R.J.
+ Archuleta, S.H.
+ Hartzell (2006), Prediction of broadband ground-motion time histories:
+ Hybrid low/high-frequency method with correlated random source parameters,
+ 
 \shape italic
 Bull.
  Seismol.
  Soc.
  Am.
 \shape default
-, 
-\shape italic
-83
-\shape default
-, 1018-1040.
+, 96, 2118-2130.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "13"
-key "Savage:Prescott:1978"
+label "Kaneko et al., 2008"
+key "Kaneko:etal:2008"
 
 \end_inset
 
-Savage, J.
- C.
- and W.
- H.
- Prescott (1978), Asthenosphere readjustment and the earthquake cycle, 
+Kaneko, Y., N.
+ Lapusta, and J.-P.
+ Ampuero (2008), Spectral element modeling of spontaneous earthquake rupture
+ on rate and state faults: Effect of velocity-strengthening friction at
+ shallow depths, 
 \shape italic
-Journal of Geophysical
+Journal of Geophysical Research
 \shape default
- 
-\shape italic
-Research
-\shape default
-\emph on
-, 83
-\emph default
-, 3369-3376.
+, 113, B09317, doi:10.1029/2007JB005553.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "14"
+label "Kirby and Kronenberg, 1987"
 key "Kirby:Kronenberg:1987"
 
 \end_inset
@@ -621,9 +608,101 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "15"
+label "Knopoff and Ni, 2001"
+key "Knopoff:Ni:2001"
+
+\end_inset
+
+Knopoff, L.
+ and X.X.
+ Ni (2001), Numerical instability at the edge of a dynamic fracture, 
+\emph on
+Geophysical Journal International, 
+\emph default
+147(3), 1-6, doi: 10.1046/j.1365-246x.2001.01567.x.
+\end_layout
+
+\begin_layout Bibliography
+\labelwidthstring Bibliography
+\begin_inset CommandInset bibitem
+LatexCommand bibitem
+label "Kojic and Bathe, 1987"
+key "Kojic:Bathe:1987"
+
+\end_inset
+
+Kojic, M.
+ and K.-J.
+ Bathe (1987), The `Effective Stress-Function' Algorithm for Thermo-Elasto-Plast
+icity and Creep, 
+\emph on
+Int.
+ J.
+ Num.
+ Meth.
+ Eng
+\emph default
+.
+\emph on
+, 24
+\emph default
+, 1509-1532.
+\end_layout
+
+\begin_layout Bibliography
+\labelwidthstring Bibliography
+\begin_inset CommandInset bibitem
+LatexCommand bibitem
+label "McGarr, 1988"
+key "McGarr:1988"
+
+\end_inset
+
+McGarr, A.
+ (1988), On the state of lithospheric stress in the absence of applied tectonic
+ forces, 
+\shape italic
+Journal of Geophysical Research
+\shape default
+, 
+\shape italic
+93
+\shape default
+, 13,609-13,617.
+\end_layout
+
+\begin_layout Bibliography
+\labelwidthstring Bibliography
+\begin_inset CommandInset bibitem
+LatexCommand bibitem
+label "Okada, 1992"
+key "Okada:1992"
+
+\end_inset
+
+Okada, Y., Internal deformation due to shear and tensile faults in a half-space
+ (1992), 
+\shape italic
+Bull.
+ Seismol.
+ Soc.
+ Am.
+\shape default
+, 
+\shape italic
+83
+\shape default
+, 1018-1040.
+\end_layout
+
+\begin_layout Bibliography
+\labelwidthstring Bibliography
+\begin_inset CommandInset bibitem
+LatexCommand bibitem
+label "Paterson, 1994"
 key "Paterson:1994"
 
 \end_inset
@@ -639,9 +718,10 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "16"
+label "Prentice, 1968"
 key "Prentice:1968"
 
 \end_inset
@@ -659,120 +739,130 @@
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "17"
-key "Drucker:Prager:1952"
+label "Savage and Prescott, 1978"
+key "Savage:Prescott:1978"
 
 \end_inset
 
-Drucker, D.
+Savage, J.
  C.
- and Prager, W.
- (1952).
- Soil mechanics and plastic analysis for limit design, 
+ and W.
+ H.
+ Prescott (1978), Asthenosphere readjustment and the earthquake cycle, 
 \shape italic
-Quarterly of Applied Mathematics
+Journal of Geophysical
 \shape default
-, 
+ 
 \shape italic
-10
+Research
 \shape default
-, 157–165.
+\emph on
+, 83
+\emph default
+, 3369-3376.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "18"
-key "Bathe:1995"
+label "Taylor, 2003"
+key "Taylor:2003"
 
 \end_inset
 
-Bathe, K.-J.
- (1995), 
+Taylor, R.L.
+ (2003), `FEAP--A Finite Element Analysis Program', 
 \shape italic
-Finite-Element Procedures
+Version 7.5 Theory Manual
 \shape default
-, Prentice Hall, Upper Saddle River, New Jersey, 1037 pp.
+, 154 pp.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "19"
-key "Liu:etal:2006"
+label "Timoshenko and Goodier, 1987"
+key "Timoshenko:Goodier:1987"
 
 \end_inset
 
-Liu, P., R.J.
- Archuleta, S.H.
- Hartzell (2006), Prediction of broadband ground-motion time histories:
- Hybrid low/high-frequency method with correlated random source parameters,
- 
+Timoshenko, S.P.
+ and J.N.
+ Goodier (1987), 
 \shape italic
-Bull.
- Seismol.
- Soc.
- Am.
+Theory of Elasticity, Third Edition
 \shape default
-, 96, 2118-2130.
+, McGraw-Hill, New York, 567 pp.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "20"
-key "BenZion:Rice:1997"
+label "Williams et al., 2005"
+key "Williams:etal:2005"
 
 \end_inset
 
-Ben-Zion, Y.
- and J.R.
- Rice (1997), Dynamic simulations of slip on a smooth fault in an elastic
- solid, J.
- Geophys.
- Res., 102, 17,771–17,784.
+Williams, C.A., B.
+ Aagaard, and M.G.
+ Knepley (2005), Development of software for studying earthquakes across
+ multiple spatial and temporal scales by coupling quasi-static and dynamic
+ simulations, 
+\emph on
+Eos Trans.
+ AGU, 86
+\emph default
+(52), Fall Meet.
+ Suppl., Abstract S53A-1072.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "21"
-key "Kaneko:etal:2008"
+label "Williams, 2006"
+key "Williams:2006"
 
 \end_inset
 
-Kaneko, Y., N.
- Lapusta, and J.-P.
- Ampuero (2008), Spectral element modeling of spontaneous earthquake rupture
- on rate and state faults: Effect of velocity-strengthening friction at
- shallow depths, 
-\shape italic
-Journal of Geophysical Research
-\shape default
-, 113, B09317, doi:10.1029/2007JB005553.
+Williams, C.A.
+ (2006), Development of a package for modeling stress in the lithosphere,
+ 
+\emph on
+Eos Trans.
+ AGU,
+\emph default
+ 
+\emph on
+87
+\emph default
+(36), Jt.
+ Assem.
+ Suppl., Abstract T24A-01 Invited.
 \end_layout
 
 \begin_layout Bibliography
+\labelwidthstring Bibliography
 \begin_inset CommandInset bibitem
 LatexCommand bibitem
-label "22"
-key "McGarr:1988"
+label "Zienkiewicz and Taylor, 2000"
+key "Zienkiewicz:Taylor:2000"
 
 \end_inset
 
-McGarr, A.
- (1988), On the state of lithospheric stress in the absence of applied tectonic
- forces, 
+Zienkiewicz, O.C.
+ and R.L.
+ Taylor (2000), 
 \shape italic
-Journal of Geophysical Research
+The Finite Element Method, Fifth Edition, Volume 2: Solid Mechanics
 \shape default
-, 
-\shape italic
-93
-\shape default
-, 13,609-13,617.
+, Butterworth-Heinemann, Oxford, 459 pp.125
 \end_layout
 
 \end_body

Modified: short/3D/PyLith/branches/multifields/examples/2d/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/createbc.jou
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/createbc.jou	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/createbc.jou	2011-06-16 16:32:15 UTC (rev 18642)
@@ -8,7 +8,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/geometry.jou
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/geometry.jou	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/geometry.jou	2011-06-16 16:32:15 UTC (rev 18642)
@@ -8,7 +8,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
@@ -118,6 +118,9 @@
 
 # ----------------------------------------------------------------------
 # Split curves to form bounding curves for each material
+#
+# Constructing the entire boundary curves as splines and then breaking
+# them into pieces bounding the surfaces preserves continuity in slip.
 # ----------------------------------------------------------------------
 split curve topobathy crossing curve slabtop
 split curve slabtop crossing curve conmoho
@@ -150,6 +153,10 @@
 delete vertex all
 imprint all
 merge all
+
+# We must stitch the surfaces into a single volume in order to split
+# the curves for the purpose of defining the discretization size along
+# various portions of the curves.
 stitch volume all
 
 # Split top of slab for fault surface

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.exo
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.jou
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.jou	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/mesh_tri3.jou	2011-06-16 16:32:15 UTC (rev 18642)
@@ -8,7 +8,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/pylithapp.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/pylithapp.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/pylithapp.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -138,43 +138,37 @@
 [pylithapp.problem.formulation.output.domain]
 output_freq = time_step
 time_step = 9.99999*year
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 
 # Ground surface
 [pylithapp.problem.formulation.output.subdomain]
 label = groundsurf ; Name of CUBIT nodeset for ground surface.
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5SubMesh
 
 # Materials
 [pylithapp.timedependent.materials.continent_crust.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 9.99999*year
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 
 [pylithapp.timedependent.materials.continent_mantle.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 9.99999*year
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 
 [pylithapp.timedependent.materials.ocean_crust.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 9.99999*year
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 
 [pylithapp.timedependent.materials.ocean_mantle.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 9.99999*year
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
 
 # ----------------------------------------------------------------------
 # PETSc

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/step01.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/step01.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/step01.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -115,30 +115,29 @@
 # ----------------------------------------------------------------------
 # Domain
 [pylithapp.problem.formulation.output.domain]
-writer.filename = output/step01.vtk
+writer.filename = output/step01.h5
 
 # Ground surface
 [pylithapp.problem.formulation.output.subdomain]
-writer.filename = output/step01-groundsurf.vtk
+writer.filename = output/step01-groundsurf.h5
 
 # Fault
 [pylithapp.problem.interfaces.fault.output]
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
-writer.filename = output/step01-fault.vtk
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step01-fault.h5
 
 # Materials
 [pylithapp.timedependent.materials.continent_crust.output]
-writer.filename = output/step01-concrust.vtk
+writer.filename = output/step01-concrust.h5
 
 [pylithapp.timedependent.materials.continent_mantle.output]
-writer.filename = output/step01-conmantle.vtk
+writer.filename = output/step01-conmantle.h5
 
 [pylithapp.timedependent.materials.ocean_crust.output]
-writer.filename = output/step01-oceancrust.vtk
+writer.filename = output/step01-oceancrust.h5
 
 [pylithapp.timedependent.materials.ocean_mantle.output]
-writer.filename = output/step01-oceanmantle.vtk
+writer.filename = output/step01-oceanmantle.h5
 
 
 # End of file

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/step02.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/step02.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/step02.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -137,35 +137,33 @@
 # ----------------------------------------------------------------------
 # Domain
 [pylithapp.problem.formulation.output.domain]
-writer.filename = output/step02.vtk
+writer.filename = output/step02.h5
 
 # Ground surface
 [pylithapp.problem.formulation.output.subdomain]
-writer.filename = output/step02-groundsurf.vtk
+writer.filename = output/step02-groundsurf.h5
 
 # Faults
 [pylithapp.problem.interfaces.fault_slabtop.output]
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
-writer.filename = output/step02-fault-slabtop.vtk
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step02-fault-slabtop.h5
 
 [pylithapp.problem.interfaces.fault_slabbot.output]
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
-writer.filename = output/step02-fault-slabbot.vtk
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step02-fault-slabbot.h5
 
 # Materials
 [pylithapp.timedependent.materials.continent_crust.output]
-writer.filename = output/step02-concrust.vtk
+writer.filename = output/step02-concrust.h5
 
 [pylithapp.timedependent.materials.continent_mantle.output]
-writer.filename = output/step02-conmantle.vtk
+writer.filename = output/step02-conmantle.h5
 
 [pylithapp.timedependent.materials.ocean_crust.output]
-writer.filename = output/step02-oceancrust.vtk
+writer.filename = output/step02-oceancrust.h5
 
 [pylithapp.timedependent.materials.ocean_mantle.output]
-writer.filename = output/step02-oceanmantle.vtk
+writer.filename = output/step02-oceanmantle.h5
 
 
 # End of file

Modified: short/3D/PyLith/branches/multifields/examples/2d/subduction/step03.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/2d/subduction/step03.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/2d/subduction/step03.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -154,35 +154,33 @@
 # ----------------------------------------------------------------------
 # Domain
 [pylithapp.problem.formulation.output.domain]
-writer.filename = output/step03.vtk
+writer.filename = output/step03.h5
 
 # Ground surface
 [pylithapp.problem.formulation.output.subdomain]
-writer.filename = output/step03-groundsurf.vtk
+writer.filename = output/step03-groundsurf.h5
 
 # Faults
 [pylithapp.problem.interfaces.fault_slabtop.output]
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
-writer.filename = output/step03-fault-slabtop.vtk
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step03-fault-slabtop.h5
 
 [pylithapp.problem.interfaces.fault_slabbot.output]
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
-writer.filename = output/step03-fault-slabbot.vtk
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step03-fault-slabbot.h5
 
 # Materials
 [pylithapp.timedependent.materials.continent_crust.output]
-writer.filename = output/step03-concrust.vtk
+writer.filename = output/step03-concrust.h5
 
 [pylithapp.timedependent.materials.continent_mantle.output]
-writer.filename = output/step03-conmantle.vtk
+writer.filename = output/step03-conmantle.h5
 
 [pylithapp.timedependent.materials.ocean_crust.output]
-writer.filename = output/step03-oceancrust.vtk
+writer.filename = output/step03-oceancrust.h5
 
 [pylithapp.timedependent.materials.ocean_mantle.output]
-writer.filename = output/step03-oceanmantle.vtk
+writer.filename = output/step03-oceanmantle.h5
 
 
 # End of file

Modified: short/3D/PyLith/branches/multifields/examples/3d/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/README
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/README	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/README	2011-06-16 16:32:15 UTC (rev 18642)
@@ -23,76 +23,25 @@
 You can examine the Exodus file exported from CUBIT using the ncdump
 command.
 
-The examples are all described in the PyLith manual. Results of each
-example are put in the stepxx directories after running the simulation.
-Each simulation may be run by typing:
 
-pylith stepxx.cfg
+The examples are all described in the PyLith manual. Output from each
+example is put in the output directory. Each simulation may be run by
+typing:
 
+  pylith stepxx.cfg
+
 where xx is the number of the desired example.
 
 
+----------------------------------------------------------------------
 DESCRIPTION OF FILES
+----------------------------------------------------------------------
 
 README - This file.
 
 pylithapp.cfg - PyLith configuration file containing parameters common to
 all simulations.
 
-figures/hex8-mesh.jpg - JPEG image showing mesh (generated with ParaView).
-
-mesh/box_hex8_1000m.exo - Exodus file containing mesh exported from Cubit.
-
-mesh/geometry.jou - Cubit journal file (script) to generate solid model
-geometry
-
-mesh/mesh_hex8_1000m.jou - Cubit journal file (script) to run geometry
-script, generate the mesh, create blocks and nodesets, and export the
-mesh to an Exodus file
-
-spatialdb/finalslip.spatialdb - Spatial database defining fault slip for
-example step03.
-
-spatialdb/finalslip_rupture.spatialdb - Spatial database defining fault
-rupture for examples step06, step07, step08, and step09.
-
-spatialdb/initial_stress.spatialdb - Spatial database defining initial
-stresses for example step16.
-
-spatialdb/mat_druckerprager.spatialdb - Spatial database defining
-Drucker-Prager elastoplastic material properties for example step09.
-
-spatialdb/mat_elastic.spatialdb - Spatial database defining elastic
-material properties for all examples.
-
-spatialdb/mat_genmaxwell.spatialdb - Spatial database defining
-generalized Maxwell viscoelastic material properties for examples step15,
-step16, and step17.
-
-spatialdb/mat_maxwell.spatialdb - Spatial database defining Maxwell
-viscoelastic material properties for examples step04, step05, step06,
-and step07.
-
-spatialdb/mat_powerlaw.spatialdb - Spatial database defining power-law
-viscoelastic material properties for example step08.
-
-spatialdb/sliprate_creep.spatialdb - Spatial database defining slip on the
-creeping portion of the fault for examples step06, step07, step08, and
-step09.
-
-spatialdb/sliptime.spatialdb - Spatial database defining the distribution
-of slip initial time over the fault for examples step03, step06, step07,
-step08, and step09.
-
-spatialdb/tractions_axial_shear.spatialdb - Spatial database defining
-axial and shear tractions for example step02.
-
-spatialdb/powerlaw - This directory contains files needed to generate
-power-law properties for PyLith, given the power-law parameters, a
-temperature distribution, and a set of points for which properties are
-desired. The powerlaw_gendb.py utility code is used from this directory
-to create spatialdb/mat_powerlaw.spatialdb.
-
 stepxx.cfg - PyLith configuration file containing parameters for a
 particular example. The example problems are briefly described below:
 
@@ -117,3 +66,87 @@
         Maxwell rheology (quasi-static)
 step17: Gravitational body forces + finite strain with generalized Maxwell
         rheology (quasi-static)
+
+----------------------------------------
+mesh directory
+----------------------------------------
+
+box_hex8_1000m.exo
+
+  Exodus file containing mesh exported from Cubit.
+
+geometry.jou
+
+  Cubit journal file (script) to generate solid model geometry
+
+mesh_hex8_1000m.jou
+
+  Cubit journal file (script) to run geometry script, generate the
+  mesh, create blocks and nodesets, and export the mesh to an Exodus
+  file
+
+----------------------------------------
+spatialdb directory
+----------------------------------------
+
+finalslip.spatialdb
+
+  Spatial database defining fault slip for example step03.
+
+finalslip_rupture.spatialdb
+
+  Spatial database defining fault rupture for examples step06, step07,
+  step08, and step09.
+
+initial_stress.spatialdb
+
+  Spatial database defining initial stresses for example step16.
+
+mat_druckerprager.spatialdb
+
+  Spatial database defining Drucker-Prager elastoplastic material
+  properties for example step09.
+
+mat_elastic.spatialdb
+
+  Spatial database defining elastic material properties for all
+  examples.
+
+mat_genmaxwell.spatialdb
+	
+  Spatial database defining generalized Maxwell viscoelastic material
+  properties for examples step15, step16, and step17.
+
+mat_maxwell.spatialdb
+
+  Spatial database defining Maxwell viscoelastic material properties
+  for examples step04, step05, step06, and step07.
+
+mat_powerlaw.spatialdb
+
+  Spatial database defining power-law viscoelastic material properties
+  for example step08.
+
+sliprate_creep.spatialdb
+
+  Spatial database defining slip on the creeping portion of the fault
+  for examples step06, step07, step08, and step09.
+
+sliptime.spatialdb
+
+  Spatial database defining the distribution of slip initial time over
+  the fault for examples step03, step06, step07, step08, and step09.
+
+tractions_axial_shear.spatialdb
+
+  Spatial database defining axial and shear tractions for example
+  step02.
+
+powerlaw directory
+
+  This directory contains files needed to generate power-law
+  properties for PyLith, given the power-law parameters, a temperature
+  distribution, and a set of points for which properties are
+  desired. The powerlaw_gendb.py utility code is used from this
+  directory to create spatialdb/mat_powerlaw.spatialdb.
+

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/mesh/geometry.jou
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/mesh/geometry.jou	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/mesh/geometry.jou	2011-06-16 16:32:15 UTC (rev 18642)
@@ -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
-
 # ----------------------------------------------------------------------
 # Create block
 # ----------------------------------------------------------------------
@@ -45,4 +36,4 @@
 # ----------------------------------------------------------------------
 imprint all with volume all
 merge all
-delete body all
\ No newline at end of file
+delete body 2 3

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/step06.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/step06.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/step06.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -168,54 +168,54 @@
 # ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
-# Give basename for VTK domain output of solution over domain.
+# Give basename for output of solution over domain.
 [pylithapp.problem.formulation.output.domain]
 # We specify that output occurs in terms of a given time frequency, and
-# ask for output every 50 years. The time stamps of the output files are
-# in years (rather than the default of seconds), and we give a format for
-# the time stamp.
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step06.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK domain output of solution over ground surface.
+# We are using HDF5 output so we must change the default writer.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step06.h5
+
+# Give basename for output of solution over ground surface.
 [pylithapp.problem.formulation.output.subdomain]
 # Name of nodeset for ground surface.
 label = face_zpos
+
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a submesh writer.
 skip = 0
-writer.filename = output/step06-groundsurf.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5SubMesh
+writer.filename = output/step06-groundsurf.h5
 
-# Give basename for VTK fault rupture output.
+# Give basename for fault rupture output.
 [pylithapp.problem.interfaces.fault.output]
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a subsubmesh writer.
 skip = 0
-writer.filename = output/step06-fault.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step06-fault.h5
 
-# Give basename for VTK output of upper_crust state variables.
+# Give basename for output of upper_crust state variables.
 [pylithapp.timedependent.materials.upper_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step06-upper_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step06-upper_crust.h5
 
-# Give basename for VTK output of lower_crust state variables.
+# Give basename for output of lower_crust state variables.
 [pylithapp.timedependent.materials.lower_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step06-lower_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step06-lower_crust.h5

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/step07.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/step07.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/step07.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -182,58 +182,70 @@
 # ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
-# Give basename for VTK domain output of solution over domain.
+# Give basename for output of solution over domain.
 [pylithapp.problem.formulation.output.domain]
 # We specify that output occurs in terms of a given time frequency, and
-# ask for output every 50 years. The time stamps of the output files are
-# in years (rather than the default of seconds), and we give a format for
-# the time stamp.
+# ask for output every 50 years.
 # We also request velocity output in addition to displacements.
 vertex_data_fields = [displacement,velocity]
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step07.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK domain output of solution over ground surface.
+# We are using HDF5 output so we must change the default writer.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step07.h5
+
+# Give basename for output of solution over ground surface.
 [pylithapp.problem.formulation.output.subdomain]
 # Name of nodeset for ground surface.
 label = face_zpos
+
 # We also request velocity output in addition to displacements.
 vertex_data_fields = [displacement,velocity]
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step07-groundsurf.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK fault rupture output.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a submesh writer.
+writer = pylith.meshio.DataWriterHDF5SubMesh
+writer.filename = output/step07-groundsurf.h5
+
+# Give basename for fault rupture output.
 [pylithapp.problem.interfaces.fault.output]
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step07-fault.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of upper_crust state variables.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a subsubmesh writer.
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step07-fault.h5
+
+# Give basename for output of upper_crust state variables.
 [pylithapp.timedependent.materials.upper_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step07-upper_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of lower_crust state variables.
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step07-upper_crust.h5
+
+# Give basename for output of lower_crust state variables.
 [pylithapp.timedependent.materials.lower_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step07-lower_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step07-lower_crust.h5

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/step08.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/step08.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/step08.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -200,54 +200,66 @@
 # ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
-# Give basename for VTK domain output of solution over domain.
+# Give basename for output of solution over domain.
 [pylithapp.problem.formulation.output.domain]
 # We specify that output occurs in terms of a given time frequency, and
-# ask for output every 50 years. The time stamps of the output files are
-# in years (rather than the default of seconds), and we give a format for
-# the time stamp.
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step08.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK domain output of solution over ground surface.
+# We are using HDF5 output so we must change the default writer.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step08.h5
+
+# Give basename for output of solution over ground surface.
 [pylithapp.problem.formulation.output.subdomain]
 # Name of nodeset for ground surface.
 label = face_zpos
+
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step08-groundsurf.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK fault rupture output.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a submesh writer.
+writer = pylith.meshio.DataWriterHDF5SubMesh
+writer.filename = output/step08-groundsurf.h5
+
+# Give basename for fault rupture output.
 [pylithapp.problem.interfaces.fault.output]
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step08-fault.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of upper_crust state variables.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a subsubmesh writer.
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step08-fault.h5
+
+# Give basename for output of upper_crust state variables.
 [pylithapp.timedependent.materials.upper_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step08-upper_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of lower_crust state variables.
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step08-upper_crust.h5
+
+# Give basename for output of lower_crust state variables.
 [pylithapp.timedependent.materials.lower_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step08-lower_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step08-lower_crust.h5

Modified: short/3D/PyLith/branches/multifields/examples/3d/hex8/step09.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/hex8/step09.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/hex8/step09.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -200,54 +200,66 @@
 # ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
-# Give basename for VTK domain output of solution over domain.
+# Give basename for output of solution over domain.
 [pylithapp.problem.formulation.output.domain]
 # We specify that output occurs in terms of a given time frequency, and
-# ask for output every 50 years. The time stamps of the output files are
-# in years (rather than the default of seconds), and we give a format for
-# the time stamp.
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step09.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK domain output of solution over ground surface.
+# We are using HDF5 output so we must change the default writer.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step09.h5
+
+# Give basename for output of solution over ground surface.
 [pylithapp.problem.formulation.output.subdomain]
 # Name of nodeset for ground surface.
 label = face_zpos
+
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step09-groundsurf.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK fault rupture output.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a submesh writer.
+writer = pylith.meshio.DataWriterHDF5SubMesh
+writer.filename = output/step09-groundsurf.h5
+
+# Give basename for fault rupture output.
 [pylithapp.problem.interfaces.fault.output]
 # We keep the default output frequency behavior (skip every n steps), and
 # ask to skip 0 steps between output, so that we get output every time step.
 skip = 0
-writer.filename = output/step09-fault.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of upper_crust state variables.
+# We again switch the writer to produce HDF5 output.
+# Note that we specifically ask for a subsubmesh writer.
+writer = pylith.meshio.DataWriterHDF5SubSubMesh
+writer.filename = output/step09-fault.h5
+
+# Give basename for output of upper_crust state variables.
 [pylithapp.timedependent.materials.upper_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step09-upper_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
 
-# Give basename for VTK output of lower_crust state variables.
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step09-upper_crust.h5
+
+# Give basename for output of lower_crust state variables.
 [pylithapp.timedependent.materials.lower_crust.output]
 # Average values over quadrature points.
 cell_filter = pylith.meshio.CellFilterAvgMesh
+
+# We specify that output occurs in terms of a given time frequency, and
+# ask for output every 50 years.
 output_freq = time_step
 time_step = 50.0*year
-writer.filename = output/step09-lower_crust.vtk
-writer.time_format = %04.0f
-writer.time_constant = 1.0*year
+
+# We again switch the writer to produce HDF5 output.
+writer = pylith.meshio.DataWriterHDF5Mesh
+writer.filename = output/step09-lower_crust.h5

Modified: short/3D/PyLith/branches/multifields/examples/3d/tet4/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
@@ -18,21 +18,27 @@
 
 dist_noinst_DATA = \
 	README \
-	dislocation.cfg \
-	dislocation.jpg \
-	finalslip.spatialdb \
-	fixeddisp_shear.spatialdb \
-	mat_elastic.spatialdb \
-	mat_viscoelastic.spatialdb \
-	mesh_tet4_1000m.lagrit \
 	pylithapp.cfg \
-	shear.jpg \
-	shearxy.cfg \
-	sliptime.spatialdb \
-	tet4-mesh.jpg \
-	tet4_1000m_ascii.gmv \
-	tet4_1000m_ascii.pset \
-	tet4_1000m_binary.gmv \
-	tet4_1000m_binary.pset
+	step01.cfg \
+	step02.cfg \
+	step03.cfg \
+	step04.cfg \
+	mesh/mesh_tet4_1000m.lagrit \
+	mesh/tet4_1000m_ascii.gmv \
+	mesh/tet4_1000m_ascii.pset \
+	mesh/tet4_1000m_binary.gmv \
+	mesh/tet4_1000m_binary.pset \
+	spatialdb/finalslip.spatialdb \
+	spatialdb/fixeddisp_shear.spatialdb \
+	spatialdb/mat_elastic.spatialdb \
+	spatialdb/mat_viscoelastic.spatialdb \
+	spatialdb/sliptime.spatialdb \
+	figures/tet4-mesh.jpg \
+	figures/step01.jpg \
+	figures/step03.jpg
 
+SUBDIRS = \
+	output
+
+
 # End of file 

Modified: short/3D/PyLith/branches/multifields/examples/3d/tet4/README
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/README	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/README	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,8 +1,9 @@
-The examples in this directory include (1) simple shearing of a box,
-(2) slip on a through-going, vertical, strike-slip fault in a
-box, (3) a box subjected to body forces, and (4) a box subjected to body
-forces where initial stresses are used to prevent deformation. In each
-problem the domain is 6 km x 6 km x 4 km and is discretized with linear
+The examples in this directory form a step-by-step sequence of 4
+problems, each building on the one before. All of the examples use the
+same mesh, which was created using LaGriT. The first two problems
+involve simple shearing of a box, and the second two problems involve
+slip on a through-going, vertical, strike-slip fault in a box. The
+domain is 6 km x 6 km x 4 km and is discretized with linear
 tetrahedral cells that have edges nominally 1.0 km long.
 
 The box spans the volume:
@@ -11,44 +12,88 @@
   -3 km <= y <= +3 km
   -6 km <= z <= 0  km.
 
-The mesh is generated using LaGrit. A LaGrit script is included and is
-annotated to guide you through the process of generating the mesh.
+A LaGrit script is included and is annotated to guide you through the
+process of generating the mesh.
 
-See the configuration files shearxy.cfg and dislocation.cfg for
+See the configuration files step01.cfg and dislocation.cfg for
 instructions on how to run these simulations. The configuration files
 also contain information about the simulation parameters.
 
+The examples are all described in the PyLith manual. Output from each
+example is put in the output directory. Each simulation may be run by
+typing:
 
+  pylith stepxx.cfg
+
+where xx is the number of the desired example.
+
+
+----------------------------------------------------------------------
 DESCRIPTION OF FILES
+----------------------------------------------------------------------
 
-dislocation.cfg - Simulation parameters for strike-slip fault problem.
+README - This file.
 
-finalslip.spatialdb - Spatial database for spatial variation of final slip
+pylithapp.cfg - PyLith configuration file containing parameters common to
+all simulations.
 
-fixeddisp_shear.spatialdb - Spatial database for spatial variation of
-the displacement field in the Dirichlet (prescribed displacement)
-boundary conditions for the shear problem
+stepxx.cfg - PyLith configuration file containing parameters for a
+particular example. The example problems are briefly described below:
 
-mat_elastic.spatialdb - Spatial database for spatial variation of the
-elastic material properties
+step01: Dirichlet BC (static) causing shear.
+step02: step01 with mesh refinement and field split preconditioning.
+step03: DirichletBC with fault slip (static) Slip on a vertical fault
+step04: step03 with mesh refinement and field split preconditioning.
 
-mesh_tet4_1000m.lagrit - LaGriT script to generate the mesh
+----------------------------------------
+figures directory
+----------------------------------------
 
-pylithapp.cfg - General simulation parameters for the mesh
+tet4-mesh.jpg - JPEG image showing mesh (from ParaView)
 
-shearxy.cfg - Simulation parameters for the shear problem
+step01.jpg - JPEG showing solution for step01 (from ParaView)
 
-sliprate.spatialdb - Spatial database for spatial variation of peak slip rate
+step03.jpg - JPEG showing solution for step03 (from ParaView)
 
-sliptime.spatialdb - Spatial database for spatial variation of slip
-initiation time
 
-tet4_1000m_ascii.gmv - ASCII GMV file containing the finite-element mesh
+----------------------------------------
+mesh directory
+----------------------------------------
 
-tet4_1000m_ascii.pset - ASCII Pset file containing the psets in the
-finite-element mesh
+mesh/mesh_tet4_1000m.lagrit - LaGriT script used to generate mesh
 
-tet4_1000m_binary.gmv - Binary GMV file containing the finite-element mesh
+mesh/tet4_1000m_ascii.gmv - ASCII GMV file containing node and elements
+mesh/tet4_1000m_ascii.pset - ASCII file containing point sets
 
-tet4_1000m_binary.pset - ASCII Pset file containing the psets in the
-finite-element mesh
+mesh/tet4_1000m_binary.gmv - Binary GMV file containing node and elements
+mesh/tet4_1000m_binary.pset - Binary file containing point sets
+
+----------------------------------------
+spatialdb directory
+----------------------------------------
+
+fixeddisp_shear.spatialdb
+
+  Spatial database for spatial variation of the displacement field in
+  the Dirichlet (prescribed displacement) boundary conditions for the
+  shear problem (step01 and step02).
+
+mat_elastic.spatialdb
+
+  Spatial database for spatial variation of the elastic material
+  properties
+
+mat_viscoelastic.spatialdb
+
+  Spatial database for spatial variation of the Maxwell viscoelastic
+  properties.
+
+finalslip.spatialdb
+
+  Spatial database for spatial variation of final slip (step03 and
+  step04)
+
+sliptime.spatialdb
+
+  Spatial database for spatial variation of slip initiation time
+  (step03 and step04)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,100 +0,0 @@
-# -*- Python -*-
-[pylithapp]
-
-# This is not a self-contained simulation configuration file. This
-# file only specifies parameters specific to the boundary and
-# interface conditions. The general parameters are specificed in the
-# pylithapp.cfg file which is read by default.
-#
-# To run the simulation:
-# pylith dislocation.cfg
-
-# ----------------------------------------------------------------------
-# problem
-# ----------------------------------------------------------------------
-[pylithapp.timedependent]
-# Set the BC to an array with 2 boundary conditions.
-bc = x_pos,x_neg
-
-# Set the interfaces to an array with 1 fault.
-interfaces = fault
-
-[pylithapp.timedependent.implicit]
-# Set the output to an array of 2 output managers.
-# We will output the solution over the domain and the ground surface.
-output = [domain,subdomain]
-
-# Set subdomain component to OutputSolnSubset (subset of domain).
-output.subdomain = pylith.meshio.OutputSolnSubset
-
-# ----------------------------------------------------------------------
-# boundary conditions
-# ----------------------------------------------------------------------
-
-# We use the default spatial database for the Dirichlet BC which sets
-# the displacements to zero for all time.
-#
-# Set the parameters for the desired boundary conditions. Note that we
-# only use a subset of the boundary conditions provided in the 6 BC
-# container.
-#
-# Note: A more natural set of boundary conditions involves pinning the
-# z-DOF on the bottom (-z) face. Howver, the current release of PyLith
-# does not permit overlapping fault interfaces and Dirichlet boundary
-# conditions with the block Jacobi preconditioner.
-
-# The label corresponds to the label in LaGriT.
-
-[pylithapp.timedependent.bc.x_pos]
-bc_dof = [0, 1, 2]
-label = boundary_xp
-db_initial.label = Dirichlet BC on +x
-
-[pylithapp.timedependent.bc.x_neg]
-bc_dof = [0, 1, 2]
-label = boundary_xm
-db_initial.label = Dirichlet BC on -x
-
-# ----------------------------------------------------------------------
-# faults
-# ----------------------------------------------------------------------
-[pylithapp.timedependent.interfaces]
-# Set the type of fault interface condition.
-fault = pylith.faults.FaultCohesiveKin
-
-# Set the parameters for the fault interface condition.
-
-[pylithapp.timedependent.interfaces.fault]
-label = fault
-quadrature.cell = pylith.feassemble.FIATSimplex
-quadrature.cell.shape = triangle
-
-[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
-slip.iohandler.filename = finalslip.spatialdb
-slip_time.iohandler.filename = sliptime.spatialdb
-
-
-# ----------------------------------------------------------------------
-# output
-# ----------------------------------------------------------------------
-# Set the root name for output.
-[pylithapp.problem.formulation.output.domain.writer]
-filename = dislocation.vtk
-
-# Give basename for VTK domain output of solution over ground surface.
-[pylithapp.problem.formulation.output.subdomain]
-label = boundary_zp
-writer.filename = dislocation-groundsurf.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.elastic.output]
-cell_filter = pylith.meshio.CellFilterAvgMesh
-writer.filename = dislocation-elastic.vtk
-
-[pylithapp.timedependent.materials.viscoelastic.output]
-cell_filter = pylith.meshio.CellFilterAvgMesh
-writer.filename = dislocation-viscoelastic.vtk

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/dislocation.jpg
===================================================================
(Binary files differ)

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/figures (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/figures)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/finalslip.spatialdb
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/finalslip.spatialdb	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/finalslip.spatialdb	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,31 +0,0 @@
-// -*- C++ -*- (tell Emacs to use C++ mode for syntax highlighting)
-//
-// This spatial database specifies the distribution of slip on the
-// fault surface. In this case we prescribe a piecewise linear, depth
-// dependent distribution of slip. The slip is 2.0 m right-lateral
-// with 0.25 m of reverse slip at the surface with a linear taper from
-// 2.0 m to 0.0 m from -2 km to -4 km.
-//
-#SPATIAL.ascii 1
-SimpleDB {
-  num-values = 3
-  value-names =  left-lateral-slip  reverse-slip  fault-opening
-  value-units =  m  m  m
-  num-locs = 3
-  data-dim = 1 // Locations of data points form a line.
-  space-dim = 3
-  cs-data = cartesian {
-    to-meters = 1.0e+3 // Specify coordinates in km for convenience.
-    space-dim = 3
-  } // cs-data
-} // SimpleDB
-// Columns are
-// (1) x coordinate (km)
-// (2) y coordinate (km)
-// (3) z coordinate (km)
-// (4) left-lateral-slip (m) (right-lateral is negative)
-// (5) reverse-slip (m)
-// (6) fault-opening (m)
-0.0  0.0  0.0    -2.00  0.25  0.00
-0.0  0.0 -2.0    -2.00  0.00  0.00
-0.0  0.0 -4.0     0.00  0.00  0.00

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/fixeddisp_shear.spatialdb
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/fixeddisp_shear.spatialdb	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/fixeddisp_shear.spatialdb	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,32 +0,0 @@
-// -*- C++ -*- (tell Emacs to use C++ mode for syntax highlighting)
-//
-// This spatial database specifies the distribution of the
-// displacement field for Dirichlet boundary conditions associated
-// with shear in the xy plane.
-//
-// dof-0: Ux(x) = 0
-// dof-1: Uy(x) = 1.0 m * x / 3 km
-// dof-2: Uz(x) = 0
-//
-#SPATIAL.ascii 1
-SimpleDB {
-  num-values = 3
-  value-names =  displacement-x  displacement-y  displacement-z
-  value-units =  m  m  m
-  num-locs = 2
-  data-dim = 1 // locations form a line
-  space-dim = 3
-  cs-data = cartesian {
-    to-meters = 1.0e+3 // specify coordinates in km
-    space-dim = 3
-  }
-}
-// Columns are
-// (1) x coordinate (km)
-// (2) y coordinate (km)
-// (3) z coordinate (km)
-// (4) Ux (m)
-// (5) Uy (m)
-// (6) Uz (m)
--3.0  0.0  0.0    0.0  -1.0  0.0
-+3.0  0.0  0.0    0.0  +1.0  0.0

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_elastic.spatialdb
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_elastic.spatialdb	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_elastic.spatialdb	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,26 +0,0 @@
-// -*- C++ -*- (tell Emacs to use C++ mode for syntax highlighting)
-//
-// This spatial database specifies the distribution of material
-// properties. In this case, the material properties are uniform.
-//
-#SPATIAL.ascii 1
-SimpleDB {
-  num-values = 3 // number of material property values
-  value-names =  density vs vp // names of the material property values
-  value-units =  kg/m**3  m/s  m/s
-  num-locs = 1 // number of locations
-  data-dim = 0
-  space-dim = 3
-  cs-data = cartesian {
-    to-meters = 1.0
-    space-dim = 3
-  }
-}
-// Columns are
-// (1) x coordinate (m)
-// (2) y coordinate (m)
-// (3) z coordinate (m)
-// (4) density (kg/m^3)
-// (5) vs (m/s)
-// (6) vp (m/s)
-0.0  0.0  0.0   2500.0  3000.0  5291.502622129181

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_viscoelastic.spatialdb
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_viscoelastic.spatialdb	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/mat_viscoelastic.spatialdb	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,30 +0,0 @@
-// -*- C++ -*- (tell Emacs to use C++ mode for syntax highlighting)
-//
-// This spatial database specifies the distribution of material
-// properties for a Maxwell viscoelastic material. In this case,
-// the material properties are uniform.
-//
-// The viscosity corresponds to a Maxwell time of 100 years.
-//
-#SPATIAL.ascii 1
-SimpleDB {
-  num-values = 4 // number of material property values
-  value-names =  density vs vp viscosity // names of the material property values
-  value-units =  kg/m**3  m/s  m/s Pa*s
-  num-locs = 1 // number of locations
-  data-dim = 0
-  space-dim = 3
-  cs-data = cartesian {
-    to-meters = 1.0
-    space-dim = 3
-  }
-}
-// Columns are
-// (1) x coordinate (m)
-// (2) y coordinate (m)
-// (3) z coordinate (m)
-// (4) density (kg/m**3)
-// (5) vs (m/s)
-// (6) vp (m/s)
-// (7) viscosity (Pa*s)
-0.0  0.0  0.0   2500.0  3000.0  5291.502622129181 7.10046e+19

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/mesh)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh_tet4_1000m.lagrit
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh_tet4_1000m.lagrit	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/mesh_tet4_1000m.lagrit	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,232 +0,0 @@
-* -*- LaGriT -*-
-*
-* Mesh of a box with a through-going, vertical, strike-slip fault.
-*
-* Block is 6 km x 6 km x 4 km
-* -3 km <= x <= 3 km
-* -3 km <= y <= 3 km
-* -4 km <= z <= 0 km
-* 
-* The domain is constructed with the region command after constructing the
-* boundaries of the domain using the surface command with the plane
-* attribute (construct the 3-D domain from boundary surfaces). The
-* fault plane is also a plane.
-*
-* ----------------------------------------------------------------------
-* PARAMETERS CONTROLLING MESH
-* ----------------------------------------------------------------------
-*
-* Boundaries of domain
-define / domain_xm / -3.0e+3
-define / domain_xp /  3.0e+3
-define / domain_ym / -3.0e+3
-define / domain_yp /  3.0e+3
-define / domain_zm / -4.0e+3
-define / domain_zp /  0.0e+3
-*
-* Mesh size and number of points along x & y
-define / dx / 1000.0
-define / nx / 7
-define / ny / 7
-*
-* ----------------------------------------------------------------------
-* CREATE GEOMETRY
-* ----------------------------------------------------------------------
-*
-* Create a mesh object and name it box
-cmo / create / box /
-*
-* Create boundary surfaces
-surface / surf_xm / reflect / plane / &
-   domain_xm   0.0e+0   0.0e+0 / &
-   domain_xm   0.0e+0  10.0e+3 / &
-   domain_xm  10.0e+3   0.0e+0
-surface / surf_xp / reflect / plane / &
-    domain_xp   0.0e+0   0.0e+0 / &
-    domain_xp  10.0e+3   0.0e+0 / &
-    domain_xp   0.0e+0  10.0e+3
-surface / surf_ym / reflect / plane / &
-     0.0e+0  domain_ym   0.0e+0 / &
-     0.0e+0  domain_ym  10.0e+3 / &
-   -10.0e+3  domain_ym   0.0e+0
-surface / surf_yp / reflect / plane / &
-     0.0e+0   domain_yp   0.0e+0 / &
-   -10.0e+3   domain_yp   0.0e+0 / &
-     0.0e+0   domain_yp  10.0e+3
-surface / surf_zm / reflect / plane / &
-     0.0e+0    0.0e+0  domain_zm / &
-   -10.0e+3    0.0e+0  domain_zm / &
-     0.0e+0   10.0e+3  domain_zm
-surface / surf_zp / reflect / plane / &
-     0.0e+0    0.0e+0    domain_zp / &
-     0.0e+0   10.0e+3    domain_zp / &
-   -10.0e+3    0.0e+0    domain_zp
-*
-* Create fault plane
-surface / surf_fault / intrface / plane / &
-  0.0  0.0  0.0 / &
-  0.0  1.0  0.0 / &
-  0.0  0.0  1.0 /
-* Create material interface
-surface / surf_mantle / intrface / plane / &
-  0.0  0.0  -2.0e+3 / &
-  1.0  0.0  -2.0e+3 / &
-  0.0  1.0  -2.0e+3 /
-
-* ----------------------------------------------------------------------
-* Create regions
-* ----------------------------------------------------------------------
-
-** Elastic on +x side of fault
-region / r_elastic_pos / &
-  le surf_xp and ge surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and le surf_zp and ge surf_mantle /
-
-** Elastic on -x side of the fault
-region / r_elastic_neg / &
-  le surf_xm and lt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and le surf_zp and ge surf_mantle /
-
-** Viscoelastic on +x side of the fault
-region / r_visco_pos / &
-  le surf_xp and ge surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and lt surf_mantle and le surf_zm /
-
-** Viscoelastic on -x side of the fault
-region / r_visco_neg / &
-  le surf_xm and lt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and lt surf_mantle and le surf_zm /
-
-* ----------------------------------------------------------------------
-* Create material regions
-* ----------------------------------------------------------------------
-* Material regions do not include internal interfaces (regions do)
-*
-mregion / mr_elastic_pos / &
-  le surf_xp and gt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and le surf_zp and gt surf_mantle /
-mregion / mr_elastic_neg / &
-  le surf_xm and lt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and le surf_zp and gt surf_mantle /
-mregion / mr_visco_pos / &
-  le surf_xp and gt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and lt surf_mantle and le surf_zm /
-mregion / mr_visco_neg / &
-  le surf_xm and lt surf_fault  &
-  and le surf_yp and le surf_ym  &
-  and lt surf_mantle and le surf_zm /
-*
-* ----------------------------------------------------------------------
-* CREATE MESH
-* ----------------------------------------------------------------------
-*
-createpts / xyz / nx,ny,1 / &
-  domain_xm  domain_ym  domain_zp / &
-  domain_xp  domain_yp  domain_zp / &
-  1,1,0 /
-pset / rayend / seq / 0,0,0
-*
-
-loop / foreach / iregion / &
-  r_elastic_pos r_elastic_neg r_visco_pos r_visco_neg &
-  / loop_end / &
-  regnpts / iregion / dx / pset,get,rayend / xyz / &
-    0.0e+3  0.0e+3  domain_zm / &
-    0.0e+3  1.0e+3  domain_zm / &
-    1.0e+3  0.0e+3  domain_zm / &
-    0,0
-cmo/setatt//itp/pset,get,rayend/dud
-pset / rayend / delete
-
-* ----------------------------------------------------------------------
-* Remove duplicate points
-* ----------------------------------------------------------------------
-filter / 1,0,0 / 10.0
-rmpoint / compress
-
-* ----------------------------------------------------------------------
-* Set node type and material
-* ----------------------------------------------------------------------
-setpts
-
-* ----------------------------------------------------------------------
-* Connect the points into a Delaunay tetrahedral mesh
-* ----------------------------------------------------------------------
-connect
-
-* ----------------------------------------------------------------------
-* Set elements to tetrahedra
-* ----------------------------------------------------------------------
-settets / geometry
-resetpts/cell_color
-
-* Remove parent/child hierarchy
-resetpts
-rmpoint / compress
-*
-* ----------------------------------------------------------------------
-* MESH QUALITY
-* ----------------------------------------------------------------------
-*
-quality
-*
-* ----------------------------------------------------------------------
-* IDENTIFY GROUPS
-* ----------------------------------------------------------------------
-*
-* Identify nodes on fault surface
-pset / fault / surface / surf_fault /
-*
-* Identify nodes on boundaries
-pset / boundary_xm / surface / surf_xm /
-pset / boundary_xp / surface / surf_xp /
-pset / boundary_ym / surface / surf_ym /
-pset / boundary_yp / surface / surf_yp /
-pset / boundary_zm / surface / surf_zm /
-pset / boundary_zp / surface / surf_zp /
-*
-* ----------------------------------------------------------------------
-* MERGE MATERIALS
-* ----------------------------------------------------------------------
-eltset / elastic1 / itetclr / eq / 1
-eltset / elastic2 / itetclr / eq / 2
-eltset / elastic / union / elastic1 elastic2
-cmo / setatt / box / itetclr / eltset,get,elastic / 1
-eltset / elastic1 / delete
-eltset / elastic2 / delete
-eltset / elastic / delete
-
-eltset / visco1 / itetclr / eq / 3
-eltset / visco2 / itetclr / eq / 4
-eltset / visco / union / visco1 visco2
-cmo / setatt / box / itetclr / eltset,get,visco / 2
-eltset / visco1 / delete
-eltset / visco2 / delete
-eltset / visco / delete
-cmo / printatt / box / itetclr / minmax
-
-* ----------------------------------------------------------------------
-* WRITE MESH
-* ----------------------------------------------------------------------
-*
-* Export mesh and psets to files.
-cmo / setatt / box / ipolydat / no
-dump / gmv / tet4_1000m_binary.gmv / / binary
-dump / gmv / tet4_1000m_ascii.gmv / / ascii
-
-pset / -all- / write / tet4_1000m_ascii.pset / ascii
-pset / -all- / write / tet4_1000m_binary.pset / binary
-
-*
-* Terminate processing
-finish
-
-* ======================================================================
-* End of file

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/output (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/output)

Modified: short/3D/PyLith/branches/multifields/examples/3d/tet4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/pylithapp.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/pylithapp.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -33,8 +33,8 @@
 
 [pylithapp.mesh_generator.reader]
 # Set filenames of mesh and pset files to import.
-filename_gmv = tet4_1000m_binary.gmv
-filename_pset = tet4_1000m_binary.pset
+filename_gmv = mesh/tet4_1000m_binary.gmv
+filename_pset = mesh/tet4_1000m_binary.pset
 
 # If using provided mesh or importing the mesh on a machine with a
 # different endian type than the one which created the mesh, then
@@ -70,14 +70,14 @@
 [pylithapp.timedependent.materials.elastic]
 label = Elastic material
 id = 1
-db_properties.iohandler.filename = mat_elastic.spatialdb
+db_properties.iohandler.filename = spatialdb/mat_elastic.spatialdb
 quadrature.cell = pylith.feassemble.FIATSimplex
 quadrature.cell.shape = tetrahedron
 
 [pylithapp.timedependent.materials.viscoelastic]
 label = Viscoelastic material
 id = 2
-db_properties.iohandler.filename = mat_viscoelastic.spatialdb
+db_properties.iohandler.filename = spatialdb/mat_viscoelastic.spatialdb
 quadrature.cell = pylith.feassemble.FIATSimplex
 quadrature.cell.shape = tetrahedron
 
@@ -87,15 +87,18 @@
 # Set the solver options.
 
 [pylithapp.petsc]
-ksp_rtol = 1.0e-8
+
+# Preconditioner settings.
 pc_type = asm
+sub_pc_factor_shift_type = nonzero
 
-# Change the preconditioner settings.
-sub_pc_factor_shift_type = none
-
+# Convergence parameters.
+ksp_rtol = 1.0e-8
+ksp_atol = 1.0e-12
 ksp_max_it = 100
 ksp_gmres_restart = 50
 
+# Linear solver monitoring options.
 ksp_monitor = true
 ksp_view = true
 ksp_converged_reason = true

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/shear.jpg
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/shearxy.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/shearxy.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/shearxy.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,83 +0,0 @@
-# -*- Python -*-
-[pylithapp]
-
-# This is not a self-contained simulation configuration file. This
-# file only specifies parameters specific to the boundary
-# conditions. The general parameters are specificed in the pylithapp.cfg
-# file which is read by default.
-#
-# To run the simulation:
-# pylith shearxy.cfg
-
-# ----------------------------------------------------------------------
-# problem
-# ----------------------------------------------------------------------
-[pylithapp.timedependent]
-# Set the BC to an array with 3 boundary conditions.
-bc = x_pos,x_neg,z_neg
-
-[pylithapp.timedependent.implicit]
-# Set the output to an array of 2 output managers.
-# We will output the solution over the domain and the ground surface.
-output = [domain,subdomain]
-
-# Set subdomain component to OutputSolnSubset (subset of domain).
-output.subdomain = pylith.meshio.OutputSolnSubset
-
-# ----------------------------------------------------------------------
-# boundary conditions
-# ----------------------------------------------------------------------
-# We 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).
-
-# Set the parameters for Dirichlet boundary conditions applied on the
-# +x and -x faces of the box. Note that we only use a subset of the
-# boundary conditions provided in the 6 BC container.
-
-# We fix the x and y degrees of freedom on the +x and -x faces, and
-# fix the z degree of freedom on the bottom face.
-
-# The label corresponds to the name of the pset in LaGriT.
-
-[pylithapp.timedependent.bc.x_pos]
-bc_dof = [0, 1]
-label = boundary_xp
-db_initial = spatialdata.spatialdb.SimpleDB
-db_initial.label = Dirichlet BC on +x
-db_initial.iohandler.filename = fixeddisp_shear.spatialdb
-
-[pylithapp.timedependent.bc.x_neg]
-bc_dof = [0, 1]
-label = boundary_xm
-db_initial = spatialdata.spatialdb.SimpleDB
-db_initial.label = Dirichlet BC on -x
-db_initial.iohandler.filename = fixeddisp_shear.spatialdb
-
-[pylithapp.timedependent.bc.z_neg]
-bc_dof = [2]
-label = boundary_zm
-db_initial = spatialdata.spatialdb.SimpleDB
-db_initial.label = Dirichlet BC on -z
-db_initial.iohandler.filename = fixeddisp_shear.spatialdb
-
-# ----------------------------------------------------------------------
-# output
-# ----------------------------------------------------------------------
-# Give basename for VTK domain output of solution over domain.
-[pylithapp.problem.formulation.output.domain.writer]
-filename = shearxy.vtk
-
-# Give basename for VTK domain output of solution over ground surface.
-[pylithapp.problem.formulation.output.subdomain]
-label = boundary_zp
-writer.filename = shearxy-groundsurf.vtk
-
-# Give basename for VTK output of state variables.
-[pylithapp.timedependent.materials.elastic.output]
-cell_filter = pylith.meshio.CellFilterAvgMesh
-writer.filename = shearxy-elastic.vtk
-
-[pylithapp.timedependent.materials.viscoelastic.output]
-cell_filter = pylith.meshio.CellFilterAvgMesh
-writer.filename = shearxy-viscoelastic.vtk

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/sliptime.spatialdb
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/sliptime.spatialdb	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/sliptime.spatialdb	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,27 +0,0 @@
-// -*- C++ -*- (tell Emacs to use C++ mode for syntax highlighting)
-//
-// This spatial database specifies the distribution of the slip
-// initiation time over the fault surface for the kinematic fault
-// rupture. Because this is a quasi-static simulation, we specify that
-// the slip initiates at t=0.0 s so that we have slip at the first
-// time step.
-//
-#SPATIAL.ascii 1
-SimpleDB {
-  num-values = 1
-  value-names =  slip-time
-  value-units =  s
-  num-locs = 1
-  data-dim = 0 // data is uniform (1 location)
-  space-dim = 3
-  cs-data = cartesian {
-    to-meters = 1.0
-    space-dim = 3
-  }
-}
-// Columns are
-// (1) x coordinate (m)
-// (2) y coordinate (m)
-// (3) z coordinate (m)
-// (4) Slip initiation time (s)
-0.0  0.0  0.0   0.0

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/spatialdb (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/spatialdb)

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/step01.cfg (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/step01.cfg)
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/step01.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/step01.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,83 @@
+# -*- Python -*-
+[pylithapp]
+
+# This is not a self-contained simulation configuration file. This
+# file only specifies parameters specific to the boundary
+# conditions. The general parameters are specificed in the pylithapp.cfg
+# file which is read by default.
+#
+# To run the simulation:
+# pylith step01.cfg
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+# Set the BC to an array with 3 boundary conditions.
+bc = x_pos,x_neg,z_neg
+
+[pylithapp.timedependent.implicit]
+# Set the output to an array of 2 output managers.
+# We will output the solution over the domain and the ground surface.
+output = [domain,subdomain]
+
+# Set subdomain component to OutputSolnSubset (subset of domain).
+output.subdomain = pylith.meshio.OutputSolnSubset
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+# We 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).
+
+# Set the parameters for Dirichlet boundary conditions applied on the
+# +x and -x faces of the box. Note that we only use a subset of the
+# boundary conditions provided in the 6 BC container.
+
+# We fix the x and y degrees of freedom on the +x and -x faces, and
+# fix the z degree of freedom on the bottom face.
+
+# The label corresponds to the name of the pset in LaGriT.
+
+[pylithapp.timedependent.bc.x_pos]
+bc_dof = [0, 1]
+label = boundary_xp
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on +x
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+[pylithapp.timedependent.bc.x_neg]
+bc_dof = [0, 1]
+label = boundary_xm
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on -x
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+[pylithapp.timedependent.bc.z_neg]
+bc_dof = [2]
+label = boundary_zm
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on -z
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Give basename for VTK domain output of solution over domain.
+[pylithapp.problem.formulation.output.domain.writer]
+filename = output/step01.vtk
+
+# Give basename for VTK domain output of solution over ground surface.
+[pylithapp.problem.formulation.output.subdomain]
+label = boundary_zp
+writer.filename = output/step01-groundsurf.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.elastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step01-elastic.vtk
+
+[pylithapp.timedependent.materials.viscoelastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step01-viscoelastic.vtk

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/step02.cfg (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/step02.cfg)
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/step02.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/step02.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,117 @@
+# -*- Python -*-
+[pylithapp]
+
+# This is not a self-contained simulation configuration file. This
+# file only specifies parameters specific to the boundary
+# conditions. The general parameters are specificed in the pylithapp.cfg
+# file which is read by default.
+#
+# To run the simulation:
+# pylith step02.cfg
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+# Set the BC to an array with 3 boundary conditions.
+bc = x_pos,x_neg,z_neg
+
+[pylithapp.timedependent.implicit]
+# Set the output to an array of 2 output managers.
+# We will output the solution over the domain and the ground surface.
+output = [domain,subdomain]
+
+# Set subdomain component to OutputSolnSubset (subset of domain).
+output.subdomain = pylith.meshio.OutputSolnSubset
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator]
+# Refine mesh by a factor of 2
+refiner = pylith.topology.RefineUniform
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+# We 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).
+
+# Set the parameters for Dirichlet boundary conditions applied on the
+# +x and -x faces of the box. Note that we only use a subset of the
+# boundary conditions provided in the 6 BC container.
+
+# We fix the x and y degrees of freedom on the +x and -x faces, and
+# fix the z degree of freedom on the bottom face.
+
+# The label corresponds to the name of the pset in LaGriT.
+
+[pylithapp.timedependent.bc.x_pos]
+bc_dof = [0, 1]
+label = boundary_xp
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on +x
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+[pylithapp.timedependent.bc.x_neg]
+bc_dof = [0, 1]
+label = boundary_xm
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on -x
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+[pylithapp.timedependent.bc.z_neg]
+bc_dof = [2]
+label = boundary_zm
+db_initial = spatialdata.spatialdb.SimpleDB
+db_initial.label = Dirichlet BC on -z
+db_initial.iohandler.filename = spatialdb/fixeddisp_shear.spatialdb
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Give basename for VTK domain output of solution over domain.
+[pylithapp.problem.formulation.output.domain.writer]
+filename = output/step02.vtk
+
+# Give basename for VTK domain output of solution over ground surface.
+[pylithapp.problem.formulation.output.subdomain]
+label = boundary_zp
+writer.filename = output/step02-groundsurf.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.elastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step02-elastic.vtk
+
+[pylithapp.timedependent.materials.viscoelastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step02-viscoelastic.vtk
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+
+# Field split preconditioning. We use an algebraic multigrid
+# preconditioner from Trilinos/ML built via PETSc on each component of
+# the displacement field separately. In this way, we split the
+# fields. This method requires the 'aij' matrix type.
+[pylithapp.timedependent.formulation]
+split_fields = True
+matrix_type = aij
+
+[pylithapp.petsc]
+# We split the fields into 3, corresponding to the number of degrees
+# of freeom at each vertex.
+fs_pc_type = fieldsplit
+fs_pc_fieldsplit_real_diagonal = 
+fs_pc_fieldsplit_type = multiplicative
+fs_fieldsplit_0_pc_type = ml
+fs_fieldsplit_1_pc_type = ml
+fs_fieldsplit_2_pc_type = ml
+fs_fieldsplit_0_ksp_type = preonly
+fs_fieldsplit_1_ksp_type = preonly
+fs_fieldsplit_2_ksp_type = preonly
+

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/step03.cfg (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/step03.cfg)
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/step03.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/step03.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,100 @@
+# -*- Python -*-
+[pylithapp]
+
+# This is not a self-contained simulation configuration file. This
+# file only specifies parameters specific to the boundary and
+# interface conditions. The general parameters are specificed in the
+# pylithapp.cfg file which is read by default.
+#
+# To run the simulation:
+# pylith step03.cfg
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+# Set the BC to an array with 2 boundary conditions.
+bc = x_pos,x_neg
+
+# Set the interfaces to an array with 1 fault.
+interfaces = fault
+
+[pylithapp.timedependent.implicit]
+# Set the output to an array of 2 output managers.
+# We will output the solution over the domain and the ground surface.
+output = [domain,subdomain]
+
+# Set subdomain component to OutputSolnSubset (subset of domain).
+output.subdomain = pylith.meshio.OutputSolnSubset
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+
+# We use the default spatial database for the Dirichlet BC which sets
+# the displacements to zero for all time.
+#
+# Set the parameters for the desired boundary conditions. Note that we
+# only use a subset of the boundary conditions provided in the 6 BC
+# container.
+#
+# Note: A more natural set of boundary conditions involves pinning the
+# z-DOF on the bottom (-z) face. Howver, the current release of PyLith
+# does not permit overlapping fault interfaces and Dirichlet boundary
+# conditions with the block Jacobi preconditioner.
+
+# The label corresponds to the label in LaGriT.
+
+[pylithapp.timedependent.bc.x_pos]
+bc_dof = [0, 1, 2]
+label = boundary_xp
+db_initial.label = Dirichlet BC on +x
+
+[pylithapp.timedependent.bc.x_neg]
+bc_dof = [0, 1, 2]
+label = boundary_xm
+db_initial.label = Dirichlet BC on -x
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces]
+# Set the type of fault interface condition.
+fault = pylith.faults.FaultCohesiveKin
+
+# Set the parameters for the fault interface condition.
+
+[pylithapp.timedependent.interfaces.fault]
+label = fault
+quadrature.cell = pylith.feassemble.FIATSimplex
+quadrature.cell.shape = triangle
+
+[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+slip.iohandler.filename = spatialdb/finalslip.spatialdb
+slip_time.iohandler.filename = spatialdb/sliptime.spatialdb
+
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Set the root name for output.
+[pylithapp.problem.formulation.output.domain.writer]
+filename = output/step03.vtk
+
+# Give basename for VTK domain output of solution over ground surface.
+[pylithapp.problem.formulation.output.subdomain]
+label = boundary_zp
+writer.filename = output/step03-groundsurf.vtk
+
+# Give basename for vtk fault output.
+[pylithapp.timedependent.interfaces.fault.output]
+writer.filename = output/step03-fault.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.elastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step03-elastic.vtk
+
+[pylithapp.timedependent.materials.viscoelastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step03-viscoelastic.vtk

Copied: short/3D/PyLith/branches/multifields/examples/3d/tet4/step04.cfg (from rev 18641, short/3D/PyLith/trunk/examples/3d/tet4/step04.cfg)
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/step04.cfg	                        (rev 0)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/step04.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -0,0 +1,139 @@
+# -*- Python -*-
+[pylithapp]
+
+# This is not a self-contained simulation configuration file. This
+# file only specifies parameters specific to the boundary and
+# interface conditions. The general parameters are specificed in the
+# pylithapp.cfg file which is read by default.
+#
+# To run the simulation:
+# pylith step04.cfg
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+# Set the BC to an array with 2 boundary conditions.
+bc = x_pos,x_neg
+
+# Set the interfaces to an array with 1 fault.
+interfaces = fault
+
+[pylithapp.timedependent.implicit]
+# Set the output to an array of 2 output managers.
+# We will output the solution over the domain and the ground surface.
+output = [domain,subdomain]
+
+# Set subdomain component to OutputSolnSubset (subset of domain).
+output.subdomain = pylith.meshio.OutputSolnSubset
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator]
+# Refine mesh by a factor of 2
+refiner = pylith.topology.RefineUniform
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+
+# We use the default spatial database for the Dirichlet BC which sets
+# the displacements to zero for all time.
+#
+# Set the parameters for the desired boundary conditions. Note that we
+# only use a subset of the boundary conditions provided in the 6 BC
+# container.
+#
+# Note: A more natural set of boundary conditions involves pinning the
+# z-DOF on the bottom (-z) face. Howver, the current release of PyLith
+# does not permit overlapping fault interfaces and Dirichlet boundary
+# conditions with the block Jacobi preconditioner.
+
+# The label corresponds to the label in LaGriT.
+
+[pylithapp.timedependent.bc.x_pos]
+bc_dof = [0, 1, 2]
+label = boundary_xp
+db_initial.label = Dirichlet BC on +x
+
+[pylithapp.timedependent.bc.x_neg]
+bc_dof = [0, 1, 2]
+label = boundary_xm
+db_initial.label = Dirichlet BC on -x
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces]
+# Set the type of fault interface condition.
+fault = pylith.faults.FaultCohesiveKin
+
+# Set the parameters for the fault interface condition.
+
+[pylithapp.timedependent.interfaces.fault]
+label = fault
+quadrature.cell = pylith.feassemble.FIATSimplex
+quadrature.cell.shape = triangle
+
+[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+slip.iohandler.filename = spatialdb/finalslip.spatialdb
+slip_time.iohandler.filename = spatialdb/sliptime.spatialdb
+
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+# Set the root name for output.
+[pylithapp.problem.formulation.output.domain.writer]
+filename = output/step04.vtk
+
+# Give basename for VTK domain output of solution over ground surface.
+[pylithapp.problem.formulation.output.subdomain]
+label = boundary_zp
+writer.filename = output/step04-groundsurf.vtk
+
+# Give basename for vtk fault output.
+[pylithapp.timedependent.interfaces.fault.output]
+writer.filename = output/step04-fault.vtk
+
+# Give basename for VTK output of state variables.
+[pylithapp.timedependent.materials.elastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step04-elastic.vtk
+
+[pylithapp.timedependent.materials.viscoelastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = output/step04-viscoelastic.vtk
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+
+# Field split preconditioning. As in step02, we use an algebraic
+# multigrid preconditioner from Trilinos/ML built via PETSc on each
+# component of the displacement field. We also apply a custom
+# preconditioner for the Lagrange multiplier vertices. In this way, we
+# split the fields.
+[pylithapp.timedependent.formulation]
+split_fields = True
+# Use custom preconditioning for the Lagrange multiplier vertices
+use_custom_constraint_pc = True
+matrix_type = aij
+
+[pylithapp.petsc]
+# Note that with 3 displacement components plus the Lagrange
+# multiplier vertices, we have split the fields into 4.
+fs_pc_type = fieldsplit
+fs_pc_fieldsplit_real_diagonal = 
+fs_pc_fieldsplit_type = multiplicative
+fs_fieldsplit_0_pc_type = ml
+fs_fieldsplit_1_pc_type = ml
+fs_fieldsplit_2_pc_type = ml
+fs_fieldsplit_3_pc_type = ml
+fs_fieldsplit_0_ksp_type = preonly
+fs_fieldsplit_1_ksp_type = preonly
+fs_fieldsplit_2_ksp_type = preonly
+fs_fieldsplit_3_ksp_type = preonly
+

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4-mesh.jpg
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.gmv
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.gmv	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.gmv	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,1109 +0,0 @@
-gmvinput ascii
-codename LaGriT
-simdate  /19/08
-nodes          245
-  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003
-  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003
-  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003
-  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000
-  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003
-  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003
-  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003
- -1.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003
- -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003
- -1.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003
- -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003
- -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003
- -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003
-  1.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  2.00000E+003
-  2.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003
-  3.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000
-  0.00000E+000  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003
-  1.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  2.00000E+003
-  2.00000E+003  3.00000E+003  3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003
- -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003
- -1.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003
- -2.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -3.00000E+003
- -3.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003
- -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003
- -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003
- -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003
- -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003
-  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003
-  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003
-  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003
- -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003
- -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003
- -1.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003
-  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003
- -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003
- -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003
- -1.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003
-  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003
-  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -3.00000E+003 -2.00000E+003
- -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -2.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003 -1.00000E+003
- -1.00000E+003  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  1.00000E+003  1.00000E+003  1.00000E+003
-  1.00000E+003  1.00000E+003  1.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  2.00000E+003  3.00000E+003
-  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003  3.00000E+003
- -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003
- -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003
-  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000
- -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003
- -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003
-  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000
- -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003
- -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003
-  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000
- -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003
- -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003
-  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000
- -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003
- -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003
-  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -2.00000E+003 -1.00000E+003  0.00000E+000 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003
- -3.00000E+003 -4.00000E+003 -3.00000E+003 -4.00000E+003 -3.00000E+003
-cells          852
-tet         4     64     73    199     76
-tet         4    188    239    197    189
-tet         4      4     17     14     13
-tet         4     13     91      2      1
-tet         4     13      1      2      4
-tet         4    223    231    121    229
-tet         4     88     94     95     85
-tet         4     95     99    105     98
-tet         4     98    108    105    104
-tet         4    223    231    229    228
-tet         4    242    234    235    237
-tet         4    193     55     67     58
-tet         4     41     54     53     44
-tet         4    213    212    214    218
-tet         4     52     50     65     53
-tet         4    126    132    122    125
-tet         4     98    101    108    107
-tet         4     11     20     23     24
-tet         4     68     57     72     71
-tet         4     88    215     97    213
-tet         4    176    187    184    186
-tet         4    191    197     64     61
-tet         4     10    153    163      7
-tet         4     14     26     27    101
-tet         4    121    231    235    229
-tet         4    174    173    181    183
-tet         4     62     51    138     63
-tet         4    115    125    122    121
-tet         4     13     26    109     25
-tet         4    119    126    129    120
-tet         4     62     63    138     75
-tet         4    135    132    125    131
-tet         4    213    210    212    218
-tet         4     64    193     79    191
-tet         4     13     91     92      2
-tet         4    183    173     52     40
-tet         4    135    147    137    138
-tet         4     23     20     35     24
-tet         4    213    210    206    212
-tet         4    213    212    206    214
-tet         4    193    187     70    195
-tet         4    217    211    218    210
-tet         4    193    195     70    203
-tet         4     20     31     34     35
-tet         4    112    113    122    116
-tet         4     31     40    177     43
-tet         4     98    106     95     94
-tet         4    160    169    163    161
-tet         4    160    169    161    159
-tet         4    218    221    224    220
-tet         4    136    239    181     61
-tet         4    159     19    161    153
-tet         4     98     94     95     88
-tet         4    161     19    163    153
-tet         4    118    128    127     49
-tet         4    127    128    136     49
-tet         4     37    118     49     50
-tet         4    101    111     27    102
-tet         4    132    141    140    143
-tet         4     38    119    120     27
-tet         4    183    173    181     52
-tet         4    233    124    136    127
-tet         4     52     50     53     41
-tet         4    139    142    241    133
-tet         4     68     71     72     81
-tet         4    239    231    133    136
-tet         4    233    124    127    118
-tet         4     41     51     50     54
-tet         4     97    215    106    213
-tet         4    160    161    163    153
-tet         4     97     88     98     91
-tet         4    181    180    191    188
-tet         4    112    116    122    115
-tet         4    169    170    176    168
-tet         4     13     26     25     28
-tet         4     81     71     84     80
-tet         4     62    146     61     74
-tet         4    213    210    207    206
-tet         4    106    107    116    109
-tet         4      7     20     16     19
-tet         4    101    111    107    110
-tet         4    110    111    107    119
-tet         4     26    109    119    110
-tet         4    188    189    197    191
-tet         4     26    109    110    101
-tet         4    116    123    122    126
-tet         4     64    199     79     76
-tet         4    164    167    166    156
-tet         4     24     33     35     36
-tet         4     62    146     74     75
-tet         4    104    108    105    116
-tet         4      3     18     14     17
-tet         4     61    136    146     62
-tet         4     53     56     68     55
-tet         4    109    100     97    101
-tet         4     64     76     79     77
-tet         4     41     39     54     42
-tet         4    233    231    136    124
-tet         4     95     96    105     99
-tet         4    142    243    241    237
-tet         4     41     39     42     30
-tet         4     28     25     37     26
-tet         4     25    109     37     26
-tet         4    121    125    122    133
-tet         4    116    114    126    117
-tet         4    112    113    116    106
-tet         4    109     25     37    165
-tet         4    165     28     37    167
-tet         4    101     91     98     92
-tet         4     50     51     65     54
-tet         4    188    232    239    181
-tet         4    188    245    244    197
-tet         4     25     28     37    165
-tet         4     13     17     14     28
-tet         4     61    239    181    189
-tet         4    181    227    233    118
-tet         4    197    239    245     61
-tet         4      9      5      8     20
-tet         4    135    138    137    129
-tet         4      3    102     14     15
-tet         4    101    102    108    111
-tet         4    228    225    231    224
-tet         4      8      5      7     20
-tet         4    188    232    181    180
-tet         4     62    136    146    137
-tet         4    188    244    245    238
-tet         4    125    131    133    134
-tet         4    242    234    237    236
-tet         4    183    174    184    182
-tet         4    169    168    176    166
-tet         4     64     55    193    191
-tet         4    191    190    201    198
-tet         4    242    236    237    238
-tet         4     88    215    207     91
-tet         4    224    225    231    232
-tet         4     41     27     39     30
-tet         4    159     16      7      4
-tet         4    157     13    215    109
-tet         4    106    219    217    213
-tet         4     13    157    149      4
-tet         4    149    215    209    208
-tet         4    215    207    208    214
-tet         4    219    218    217    213
-tet         4    218    219    225    221
-tet         4    219    106    225    221
-tet         4     13    157    215    149
-tet         4    194    203    200    202
-tet         4    184    177    183    185
-tet         4    185    177    183     55
-tet         4    218    215    221    214
-tet         4    193     55    187    185
-tet         4     21     18      6     17
-tet         4    193    185    187    184
-tet         4    160    163    170    162
-tet         4     29     33     44     32
-tet         4     43     40    177     55
-tet         4     37    119     50     38
-tet         4     89     96     95     99
-tet         4    100     91     97    101
-tet         4     61     49     50     52
-tet         4     53     68     65     55
-tet         4    183     40     52    177
-tet         4    173     37    181     52
-tet         4     49     37     50     52
-tet         4    244    242    245    238
-tet         4     65     75     74     78
-tet         4    157     13    109    165
-tet         4    169    168    166    160
-tet         4    157     13    165     28
-tet         4     65     62     61     74
-tet         4    169    170    168    160
-tet         4     54     57     68     53
-tet         4      4    159    149    151
-tet         4     65     68     69     78
-tet         4    151    159    149    150
-tet         4     64     73     76     77
-tet         4     86     96     95     89
-tet         4    135    134    125    137
-tet         4    135    143    134    137
-tet         4     94    213    106    211
-tet         4    208    157    156    149
-tet         4    135    131    125    134
-tet         4     38    120    119     51
-tet         4    135    131    134    143
-tet         4    121    122    130    133
-tet         4    123    132    122    126
-tet         4    245    239    133    136
-tet         4    135    132    131    143
-tet         4    116    117    126    120
-tet         4    116    108    117    120
-tet         4     13    215    109    100
-tet         4    142    245    243    237
-tet         4    125    122    133    131
-tet         4    140    133    139    130
-tet         4     49    233    136    127
-tet         4    227    231    118    115
-tet         4     13    215    100     91
-tet         4    238    231    239    232
-tet         4    109    215     97    100
-tet         4     52     37     38     41
-tet         4    191    183     52     55
-tet         4      4    157    149    159
-tet         4    173    167     40    175
-tet         4    238    230    231    232
-tet         4    175    167     40    177
-tet         4    100    215     97     91
-tet         4    160    163    162    154
-tet         4    167     28     37     40
-tet         4     80     71     84     83
-tet         4    193    184    183    185
-tet         4    193    185    183     55
-tet         4     37     28     38     41
-tet         4     80     71     83     82
-tet         4    214    215    221    164
-tet         4     54     66     65     69
-tet         4    165     13    109     25
-tet         4     66     78     65     69
-tet         4    222    225    224    218
-tet         4     37    109    119     38
-tet         4    112    231    121    223
-tet         4    142    245    136    145
-tet         4     61    181     49     52
-tet         4    245    239    242    237
-tet         4     85     88    211    205
-tet         4     11      9     21     24
-tet         4     49    181     37     52
-tet         4     41     30     45     44
-tet         4    233    231    124    118
-tet         4     61     49    136     50
-tet         4    181    233    136     49
-tet         4     17     26     29     30
-tet         4     28     26     37     38
-tet         4     29     26     41     30
-tet         4     34     31     43     44
-tet         4    159     28     31     16
-tet         4     54     45     57     44
-tet         4     30     21     33     20
-tet         4    181    233     49    118
-tet         4    127    118    124    128
-tet         4     44     33     45     35
-tet         4     41     38     51     39
-tet         4     20     33     32     35
-tet         4     30     33     45     44
-tet         4     26    109     37     38
-tet         4     65     61     64     74
-tet         4     32     33     44     35
-tet         4     31     32     44     35
-tet         4     31     20     32     35
-tet         4     14    102     27     15
-tet         4     14     15     27     18
-tet         4     54     57     69     68
-tet         4    241    243    242    237
-tet         4    243    245    242    237
-tet         4    106     98     95    104
-tet         4     89     90     87     99
-tet         4     98     99    108    102
-tet         4     94     88    213    211
-tet         4    224    225    232    227
-tet         4    220    227    226    172
-tet         4     28    167    165    157
-tet         4    226    227    232    172
-tet         4     62     51    137    138
-tet         4     91    215    207    209
-tet         4    126    135    125    137
-tet         4     91    215    209    149
-tet         4    245    239    237    133
-tet         4    190    184    193    192
-tet         4     64     73     77     74
-tet         4    113    123    122    116
-tet         4    192    184    193    194
-tet         4    183    173     40    175
-tet         4    167    177    166    169
-tet         4    183    175     40    177
-tet         4    174    167    173    175
-tet         4    183    177     52     55
-tet         4    184    174    183    177
-tet         4    174    167    175    177
-tet         4    135    141    132    143
-tet         4    159    157    149    150
-tet         4    231    115    121    124
-tet         4     34     44     47     35
-tet         4    180    232    181    173
-tet         4    191    183    184    190
-tet         4    191    180    183    190
-tet         4    167    169    166    160
-tet         4    198    190    201    200
-tet         4    200    190    201    193
-tet         4    191    180    190    188
-tet         4    200    193    201    194
-tet         4    200    190    193    192
-tet         4    231    124    121    133
-tet         4    229    231    235    228
-tet         4    217    103    112    225
-tet         4    225    115    112    231
-tet         4    235    231    130    133
-tet         4    231    121    130    133
-tet         4    118    231    124    115
-tet         4    136    124    133    125
-tet         4    112    225    231    223
-tet         4    230    228    234    231
-tet         4     19     20     16     31
-tet         4     41     44     55     40
-tet         4    166    159    160    158
-tet         4      4     13    157    159
-tet         4    115    125    121    124
-tet         4    124    125    121    133
-tet         4     36     33     35     48
-tet         4      7     19     10     20
-tet         4    107    111    108    119
-tet         4     41     44     40     31
-tet         4     17     27     30     18
-tet         4    109    101     98    107
-tet         4     62    136    137     50
-tet         4     62     61     50     52
-tet         4     17     14     26     27
-tet         4    224    227    232    226
-tet         4      4     13    159     16
-tet         4    160    159    161    153
-tet         4     34     31    177     43
-tet         4     53     44     56     55
-tet         4     56     59     71     58
-tet         4     26    110    111    101
-tet         4     98    108    104    107
-tet         4    107    108    104    116
-tet         4     50     51    137     62
-tet         4    116    126    125    119
-tet         4    143    136    133    137
-tet         4     41     38     39     27
-tet         4    188    239    245    197
-tet         4    107    108    116    119
-tet         4    149    157    156    150
-tet         4    106     98    107    109
-tet         4     89     98     95     88
-tet         4    215    221    164    157
-tet         4      6     21     17     20
-tet         4     92     90     99    102
-tet         4     64    197    199     73
-tet         4    221    109     37    165
-tet         4     38    109    119     26
-tet         4    119    115    125    116
-tet         4    134    131    133    143
-tet         4    235    121    130    231
-tet         4     65     50     62     51
-tet         4    116    114    117    108
-tet         4    135    144    141    143
-tet         4     56     60     59     47
-tet         4    231    115    112    121
-tet         4     44     57     56     47
-tet         4     61    189    181    191
-tet         4     62    146    147    137
-tet         4    133    235    241    139
-tet         4     16     13    159     28
-tet         4    159     13    157     28
-tet         4    166    159    158    156
-tet         4    164    167    174    166
-tet         4     57     60     71     56
-tet         4     55    177     58    187
-tet         4      7     19    163     10
-tet         4     55    177    187    185
-tet         4    176    179    186    178
-tet         4     31     28    177     40
-tet         4     31     28    167    177
-tet         4     19     22     10     23
-tet         4    177    187    176    179
-tet         4    177    179    176    170
-tet         4    193    195    203    194
-tet         4    201    193     79     82
-tet         4     57     60     56     47
-tet         4     56     60     71     59
-tet         4     56     71     68     58
-tet         4     94    106    103    211
-tet         4     41     39     51     54
-tet         4    211    204    207    210
-tet         4    211    210    213    218
-tet         4    209    215    207    208
-tet         4     41     30     42     45
-tet         4     19     34    163     22
-tet         4    125    134    133    137
-tet         4    225    103    112    106
-tet         4    234    235    241    242
-tet         4    237    234    235    231
-tet         4    146    143    147    137
-tet         4    238    236    237    230
-tet         4    142    145    136    146
-tet         4    133    235    237    241
-tet         4    143    133    139    140
-tet         4     14    109     26    101
-tet         4     89     90     99     92
-tet         4     14     13     92      2
-tet         4     33     45     35     48
-tet         4     28     26     41     29
-tet         4    177    171    179    170
-tet         4     19     22    163     10
-tet         4    171     31    177     34
-tet         4     20     23     10     11
-tet         4    163     31    171     34
-tet         4     28     26     29     17
-tet         4     62    138    137    147
-tet         4     68     72     69     81
-tet         4      7      5      4     17
-tet         4     65     54     69     68
-tet         4     56     57     68     71
-tet         4     44     48     57     47
-tet         4     40     44     55     43
-tet         4     78     68     69     81
-tet         4     64     55     68     67
-tet         4     55     56     68     58
-tet         4     54     57     53     44
-tet         4     38    120     51     39
-tet         4    213    206    207    214
-tet         4     14     13      2      4
-tet         4     97    215     88     91
-tet         4      7      5     17     20
-tet         4    119    108    116    120
-tet         4     14    101    102     92
-tet         4    109    107    116    119
-tet         4    238    230    237    231
-tet         4    101     98    102     92
-tet         4     14     13    109    101
-tet         4      3     15     14     18
-tet         4    119    120    129     51
-tet         4    116    126    119    120
-tet         4    115    116    122    125
-tet         4    109    101    107    110
-tet         4     13     14    109     26
-tet         4     55     44     56     58
-tet         4    224    225    227    221
-tet         4    143    146    136    137
-tet         4      5      6     17     20
-tet         4     52     38     50     41
-tet         4    224    227    226    220
-tet         4    157    167    156    159
-tet         4    157    159    156    150
-tet         4    156    159    158    150
-tet         4    159     19    153      7
-tet         4    159    153    150    151
-tet         4    159      7    153      4
-tet         4     11      9      8     20
-tet         4    227    231    233    118
-tet         4    176    179    178    170
-tet         4     64     67     68     79
-tet         4    171     34    177    179
-tet         4    193     70     82    203
-tet         4    124    118    125    128
-tet         4     34     43    177    179
-tet         4    177    176    174    166
-tet         4    239    231    136    233
-tet         4    239    233    136    181
-tet         4    217    210    218    216
-tet         4    217    216    218    222
-tet         4    218    219    221    213
-tet         4    221    215    106    109
-tet         4    225    221    106    109
-tet         4    164    167    173    174
-tet         4    215    109    221    157
-tet         4     64    197     73     61
-tet         4    191    199     79     64
-tet         4    238    242    245    239
-tet         4    188    238    245    239
-tet         4    191    197    199     64
-tet         4    188    238    239    232
-tet         4    173    165     37    167
-tet         4    164    221    173    165
-tet         4    164    165    173    167
-tet         4    160    171    170    163
-tet         4    221    165    164    157
-tet         4    165    167    164    157
-tet         4     29     30     41     44
-tet         4     17     14     27     18
-tet         4     17     21     30     20
-tet         4     57     48     60     47
-tet         4     53     57     68     56
-tet         4     44     45     48     35
-tet         4    109    165    221    157
-tet         4     40     44     43     31
-tet         4     34     31     44     35
-tet         4     52     62     61     65
-tet         4     52     61    191     64
-tet         4     61     73     74    145
-tet         4     52     61     64     65
-tet         4     61    191    181     52
-tet         4     61    239    245    136
-tet         4    208    149    156    148
-tet         4     61    197     73    145
-tet         4    148    149    156    150
-tet         4    122    131    130    133
-tet         4     38    120     39     27
-tet         4    131    140    130    133
-tet         4     78     68     81     77
-tet         4     86     89     95     85
-tet         4    116    123    126    114
-tet         4    131    140    133    143
-tet         4    106     98    104    107
-tet         4    125    132    122    131
-tet         4    113    114    116    105
-tet         4    106    217    103    211
-tet         4    116    105    114    108
-tet         4     94     88     97    213
-tet         4     98    106     94     97
-tet         4    112    103    113    106
-tet         4    129    138    137     51
-tet         4    135    147    144    143
-tet         4     98     97     94     88
-tet         4    109     97     98    101
-tet         4     62    146     75    147
-tet         4     13     91    100    101
-tet         4     97     91     98    101
-tet         4     68     80     79     82
-tet         4    154    160    163    153
-tet         4     68     71     81     80
-tet         4     19     34     22     23
-tet         4    169     31    163     19
-tet         4     68     71     80     82
-tet         4     62     75     65     63
-tet         4    220    227    172    164
-tet         4    232    227    173    172
-tet         4    183    174    182    180
-tet         4    191    190    198    188
-tet         4    191    201     79    199
-tet         4    191    199    197    198
-tet         4     52     55     65     64
-tet         4    191    201    199    198
-tet         4     62     63     65     51
-tet         4    188    197    198    191
-tet         4    215    157    214    208
-tet         4    215    157    164    214
-tet         4    167    169    160    159
-tet         4    159    160    150    153
-tet         4    172    227    173    164
-tet         4    219    106    221    213
-tet         4     13    149     91      1
-tet         4    124    115    125    118
-tet         4     63     75     65     78
-tet         4    232    227    181    173
-tet         4    227     37    181    173
-tet         4    227     37    173    221
-tet         4    232    227    231    233
-tet         4     63     66     65     54
-tet         4     92     93     90    102
-tet         4      9      6      5     20
-tet         4     34     43    179     46
-tet         4     46     43    179     58
-tet         4     86     87     96     89
-tet         4     28     29     41     31
-tet         4     92    102     14      3
-tet         4     28     17     29     31
-tet         4     30     33     44     29
-tet         4     30     33     29     20
-tet         4     29     20     32     31
-tet         4      7     20     10     11
-tet         4    169     19    163    161
-tet         4      2      6      3     17
-tet         4     20     21     35     24
-tet         4     11     21     20     24
-tet         4     29     44     41     31
-tet         4    136    231    133    124
-tet         4    181    118     49     37
-tet         4    119    129     50     51
-tet         4    177     40     52     55
-tet         4    174    180    181    173
-tet         4     37    109    227    118
-tet         4    232    227    233    181
-tet         4    173    221     37    165
-tet         4    165     13     25     28
-tet         4     11      9     24     12
-tet         4     41     45     54     44
-tet         4     53     54     65     68
-tet         4    223    217    112    225
-tet         4     51     63     65     54
-tet         4     50    129    137     51
-tet         4     68     58     71     67
-tet         4    222    225    223    228
-tet         4     68     57     69     72
-tet         4    210    204    207    206
-tet         4    193    187    195    194
-tet         4    188    181    239    189
-tet         4     89     88     95     85
-tet         4     14     13    101     92
-tet         4    188    181    189    191
-tet         4    109    215    106     97
-tet         4    102     98     99     92
-tet         4    113    123    116    114
-tet         4     92     88     98     89
-tet         4    191    189    197     61
-tet         4    225    106    115    109
-tet         4    189    239    197     61
-tet         4    180    232    173    172
-tet         4    134    143    133    137
-tet         4    133    235    139    130
-tet         4    234    228    235    231
-tet         4    154    153    163    155
-tet         4    143    142    136    146
-tet         4    155    153    163     10
-tet         4    208    157    214    156
-tet         4    214    157    164    156
-tet         4    167     31    169    159
-tet         4    157    167    164    156
-tet         4    118    109    227    115
-tet         4    232    225    231    227
-tet         4    183    182    184    190
-tet         4    232    231    239    233
-tet         4    232    233    239    181
-tet         4    174    180    173    172
-tet         4    191    193     79    201
-tet         4     62    138    147     75
-tet         4     63     78     65     66
-tet         4    200    192    193    194
-tet         4    112    115    122    121
-tet         4    211    205    207    204
-tet         4     88    207    211    205
-tet         4    106    213    217    211
-tet         4    222    217    223    225
-tet         4    222    225    228    224
-tet         4    227    109    225    115
-tet         4    218    225    224    221
-tet         4    227    225    231    115
-tet         4    224    221    227    220
-tet         4    103    104    113    106
-tet         4    237    235    242    241
-tet         4     61    145     74    146
-tet         4    103     95    104    106
-tet         4    106    104    113    116
-tet         4    177    170    176    169
-tet         4     13    149      1      4
-tet         4     95     98    105    104
-tet         4     92      3     14      2
-tet         4     92      3     93    102
-tet         4     17     18     30     21
-tet         4     29     33     32     20
-tet         4     89     87     96     99
-tet         4     17     30     29     20
-tet         4     41     42     54     45
-tet         4    193     58     70    187
-tet         4    193     67     82     70
-tet         4     44     48     47     35
-tet         4    193     67     70     58
-tet         4    193    187    194    184
-tet         4     52     55     64    191
-tet         4     68     67     71     82
-tet         4     65     64     68     79
-tet         4     65     55     68     64
-tet         4     41     44     53     55
-tet         4     44     47     56     58
-tet         4     77     68     81     80
-tet         4     52     53     65     55
-tet         4     52     41     53     55
-tet         4     13    100    109    101
-tet         4    106    107    104    116
-tet         4    101    111    108    107
-tet         4     41     50     53     54
-tet         4     89     95     98     99
-tet         4     92     98     99     89
-tet         4    223    225    231    228
-tet         4    136    124    125    128
-tet         4    115    112    116    106
-tet         4    225    112    115    106
-tet         4    115    109    116    119
-tet         4    115    106    116    109
-tet         4     53     50     65     54
-tet         4     20     19     10     23
-tet         4    132    140    131    143
-tet         4    136    133    137    125
-tet         4    159    153    151      4
-tet         4     20     34     19     23
-tet         4    153     19    163      7
-tet         4    159     19      7     16
-tet         4    149    215    208    157
-tet         4    169     19    161    159
-tet         4    159     31     19     16
-tet         4    177    187    184    176
-tet         4    177    169    176    166
-tet         4    167    177    174    166
-tet         4     19     31     34     20
-tet         4    181    183     52    191
-tet         4    181    174    183    180
-tet         4    181    183    191    180
-tet         4     40     41     52     55
-tet         4    174    173    183    175
-tet         4    183    180    182    190
-tet         4      5      6      2     17
-tet         4      4      2     14     17
-tet         4    201    203    200    194
-tet         4      2      3     14     17
-tet         4    228    224    231    230
-tet         4    230    224    231    232
-tet         4    217    103    225    106
-tet         4    218    217    225    219
-tet         4    222    217    225    218
-tet         4    213    218    217    211
-tet         4    230    234    237    231
-tet         4    236    234    237    230
-tet         4    239    231    237    133
-tet         4    215    213    214    218
-tet         4    234    241    240    242
-tet         4      6     18      3     17
-tet         4     23     20     34     35
-tet         4    219    217    225    106
-tet         4    218    213    221    215
-tet         4    213    106    221    215
-tet         4     40     37    173     52
-tet         4    167     37    173     40
-tet         4     28     41     40     31
-tet         4     40     28     37     41
-tet         4     52     40     37     41
-tet         4    174    175    183    177
-tet         4    167     28     40    177
-tet         4     53     57     56     44
-tet         4     44     45     57     48
-tet         4    211    210    207    213
-tet         4    207    206    208    214
-tet         4    215    213    207    214
-tet         4     94     97    106    213
-tet         4    188    196    198    197
-tet         4     62     75     74     65
-tet         4    188    244    196    197
-tet         4    176    187    186    179
-tet         4    177    179     58    187
-tet         4     91     88     98     92
-tet         4     13     91    101     92
-tet         4    109     97    106     98
-tet         4     13    149    215     91
-tet         4    104    105    113    116
-tet         4     98     99    105    108
-tet         4     46     43     58     47
-tet         4     61    245    197    145
-tet         4    125    126    137    129
-tet         4    119    126    125    129
-tet         4    128    118    125    119
-tet         4    116    122    125    126
-tet         4     61    136    245    145
-tet         4     49    233    127    118
-tet         4    143    142    139    133
-tet         4     61    136    145    146
-tet         4    119    125    128    129
-tet         4    142    245    133    136
-tet         4    143    142    133    136
-tet         4    166    167    159    156
-tet         4    158    159    160    150
-tet         4    166    167    160    159
-tet         4      7     20     17     16
-tet         4    167     28     31    159
-tet         4    157     28    167    159
-tet         4    169     31     19    159
-tet         4     19     31    163     34
-tet         4    128    125    137    129
-tet         4    119    129    128     50
-tet         4    177    176    184    174
-tet         4    128    129    137     50
-tet         4    119    111    108    120
-tet         4     67     58     71     70
-tet         4    193     55     58    187
-tet         4    191    184    193    190
-tet         4    191    193    201    190
-tet         4    185    177    187    184
-tet         4    191    193    183     55
-tet         4    191    184    183    193
-tet         4     27    119    120    111
-tet         4     26    119     27    111
-tet         4     26    111     27    101
-tet         4     88    213    211    207
-tet         4    227    109     37    221
-tet         4    225    109    227    221
-tet         4    118    128     49     50
-tet         4    181    227    118     37
-tet         4    227    221    173    164
-tet         4    174    172    173    164
-tet         4     26    119    111    110
-tet         4     95    106    103     94
-tet         4     85     88     94    211
-tet         4     88    215    213    207
-tet         4     16     17     13     28
-tet         4      4     17     13     16
-tet         4     31     17     16     28
-tet         4      7     17      4     16
-tet         4     16     20     17     31
-tet         4     64     73     74     61
-tet         4     65     74     64     77
-tet         4     65     77     64     79
-tet         4     24     21     35     33
-tet         4     20     21     33     35
-tet         4     62     61    136     50
-tet         4     52     50     62     65
-tet         4    118    119    128     50
-tet         4     50     37     38     52
-tet         4     49    128    136     50
-tet         4     38    119     50     51
-tet         4     41     38     50     51
-tet         4     64     55     67    193
-tet         4     64     67     79    193
-tet         4     55     58     68     67
-tet         4     67     68     79     82
-tet         4    193     67     79     82
-tet         4     77     68     80     79
-tet         4     81     71     72     84
-tet         4     65     68     78     77
-tet         4     65     68     77     79
-tet         4     65     74     77     78
-tet         4    109    110    107    119
-tet         4     98    102    108    101
-tet         4     56     47     59     58
-tet         4     14    101     27    102
-tet         4     13     14     26     28
-tet         4    136    128    137     50
-tet         4     37    119    118     50
-tet         4     61    181    136     49
-tet         4    118    115    125    119
-tet         4    136    125    137    128
-tet         4    136    127    124    128
-tet         4    118    109    115    119
-tet         4     37    109    118    119
-tet         4    135    147    143    137
-tet         4     57     60     72     71
-tet         4    126    132    125    135
-tet         4     58     43     55     44
-tet         4    126    135    137    129
-tet         4    152    150    160    153
-tet         4    154    152    160    153
-tet         4    177     43     55     58
-tet         4    169    171    170    160
-tet         4    177    171    170    169
-tet         4    169     31    171    163
-tet         4    160    169    171    163
-tet         4    169    167    177     31
-tet         4    171    169    177     31
-tet         4    184    186    187    194
-tet         4    179     43    177     58
-tet         4     34     43     46     47
-tet         4     34     44     43     47
-tet         4    201    193    203    194
-tet         4    201    193     82    203
-tet         4     43     44     58     47
-tet         4     67     70     71     82
-tet         4     41     26     38     27
-tet         4     29     32     44     31
-tet         4     17     27     26     30
-tet         4    220    214    221    164
-tet         4    218    214    221    220
-tet         4    220    221    227    164
-tet         4    142    245    237    133
-tet         4    142    237    241    133
-tet         4     26     27     41     30
-tet         4    238    237    239    231
-tet         4    242    237    239    238
-tet         4    237    231    235    133
-tet         4      4      5      2     17
-tet         4     11      8      7     20
-tet         4      9     21      6     20
-tet         4     11     21      9     20
-tet         4     28     26     38     41
-tet         4     28     14     26     17
-tet         4     17     20     29     31
-tet         4     38    119     27     26
-variable
-imt1                             1
-  2.00000E+000  2.00000E+000  2.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000
-  1.00000E+000  1.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000
-  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  2.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000
-  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000
-  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000
-  2.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000
-  1.00000E+000  2.00000E+000  2.00000E+000  1.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000
-  1.00000E+000  1.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  3.00000E+000  1.00000E+000
-  1.00000E+000  3.00000E+000  1.00000E+000  1.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000
-  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000
-  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000
-  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000
-  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000
-  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000
-  2.00000E+000  2.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  2.00000E+000  2.00000E+000  4.00000E+000  3.00000E+000  3.00000E+000
-  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  4.00000E+000  4.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000
-  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  4.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000
-  3.00000E+000  4.00000E+000  4.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  4.00000E+000
-  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000
-  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000  3.00000E+000
-  3.00000E+000  3.00000E+000  3.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000
-  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000
-  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000
-  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000
-  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000  4.00000E+000
-itp1                             1
-  1.20000E+001  1.20000E+001  1.20000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001
-  1.00000E+001  1.00000E+001  2.00000E+000  2.00000E+000  1.20000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000
-  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  2.00000E+000  1.20000E+001  2.00000E+000  0.00000E+000  1.00000E+001
-  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  2.00000E+000  1.20000E+001  2.00000E+000
-  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  2.00000E+000
-  1.20000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001
-  2.00000E+000  2.00000E+000  1.20000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001
-  1.00000E+001  1.00000E+001  1.20000E+001  1.20000E+001  1.20000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001
-  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001
-  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000
-  0.00000E+000  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000
-  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001
-  1.20000E+001  1.00000E+001  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001
-  1.00000E+001  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  2.00000E+000  0.00000E+000  1.00000E+001  1.20000E+001  1.00000E+001
-  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.20000E+001  1.20000E+001  1.00000E+001
-  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.20000E+001  2.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001
-  0.00000E+000  1.00000E+001  1.00000E+001  1.20000E+001  2.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001
-  1.00000E+001  1.20000E+001  2.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.20000E+001
-  2.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.20000E+001  2.00000E+000  1.00000E+001
-  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.20000E+001  1.20000E+001  1.00000E+001  1.00000E+001  1.00000E+001
-  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001
-  1.00000E+001  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.00000E+001  0.00000E+000  1.00000E+001
-  0.00000E+000  1.00000E+001  1.00000E+001  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.00000E+001
-  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001  1.00000E+001  1.00000E+001  0.00000E+000  1.00000E+001  0.00000E+000  1.00000E+001
-  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001  1.00000E+001
-icr1                             1
-  3.00000E+000  3.00000E+000  1.90000E+001  3.00000E+000  3.00000E+000  1.90000E+001  3.00000E+000  3.00000E+000  1.90000E+001  7.00000E+000
-  7.00000E+000  2.00000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000
-  6.00000E+000  2.00000E+000  2.00000E+000  2.10000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000
-  0.00000E+000  0.00000E+000  6.00000E+000  2.00000E+000  2.00000E+000  2.10000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000
-  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  2.00000E+000  2.00000E+000  2.10000E+001  0.00000E+000  0.00000E+000
-  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  2.00000E+000  2.00000E+000  2.10000E+001
-  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  2.00000E+000
-  2.00000E+000  2.10000E+001  4.00000E+000  4.00000E+000  2.20000E+001  4.00000E+000  4.00000E+000  2.20000E+001  4.00000E+000  4.00000E+000
-  2.20000E+001  9.00000E+000  9.00000E+000  2.30000E+001  8.00000E+000  8.00000E+000  2.40000E+001  3.00000E+000  3.00000E+000  1.90000E+001
-  3.00000E+000  3.00000E+000  1.90000E+001  1.00000E+000  1.00000E+000  2.50000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000
-  0.00000E+000  6.00000E+000  1.00000E+000  1.00000E+000  2.50000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000
-  6.00000E+000  1.00000E+000  1.00000E+000  2.50000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000
-  1.00000E+000  1.00000E+000  2.50000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  1.00000E+000
-  1.00000E+000  2.50000E+001  0.00000E+000  0.00000E+000  6.00000E+000  0.00000E+000  0.00000E+000  6.00000E+000  1.00000E+001  1.00000E+001
-  2.60000E+001  4.00000E+000  4.00000E+000  2.20000E+001  4.00000E+000  4.00000E+000  2.20000E+001  1.10000E+001  3.00000E+000  1.10000E+001
-  3.00000E+000  1.10000E+001  3.00000E+000  1.20000E+001  7.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000
-  0.00000E+000  1.30000E+001  2.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.30000E+001
-  2.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.30000E+001  2.00000E+000  5.00000E+000
-  0.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.30000E+001  2.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000
-  0.00000E+000  5.00000E+000  0.00000E+000  1.30000E+001  2.00000E+000  1.40000E+001  4.00000E+000  1.40000E+001  4.00000E+000  1.40000E+001
-  4.00000E+000  1.50000E+001  9.00000E+000  1.60000E+001  8.00000E+000  1.10000E+001  3.00000E+000  1.10000E+001  3.00000E+000  1.70000E+001
-  1.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.70000E+001  1.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000
-  0.00000E+000  1.70000E+001  1.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.70000E+001  1.00000E+000  5.00000E+000
-  0.00000E+000  5.00000E+000  0.00000E+000  1.70000E+001  1.00000E+000  5.00000E+000  0.00000E+000  5.00000E+000  0.00000E+000  1.80000E+001
-  1.00000E+001  1.40000E+001  4.00000E+000  1.40000E+001  4.00000E+000
-isn1                             1
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000  0.00000E+000
-endvars
-flags    
-imt1            5         1
-mr_elast
-mr_elast
-mr_visco
-mr_visco
-ERROR
-    2    2    2    3    1    1    3    1    1    3    1    1    4    2    2    3    1    1    1    1
-    1    3    1    1    2    1    1    3    1    1    3    1    1    3    1    1    3    1    1    1
-    1    1    3    1    1    3    1    1    1    1    2    3    1    1    1    1    1    3    1    1
-    1    2    2    1    1    1    3    1    1    3    1    1    4    2    2    3    1    1    3    1
-    1    3    1    1    2    2    2    2    2    2    2    2    2    2    2    2    4    2    2    4
-    2    2    4    2    2    4    2    2    4    2    2    2    2    2    4    2    2    4    2    2
-    4    2    2    4    2    2    4    2    2    2    2    2    2    2    2    4    2    2    4    2
-    2    2    2    2    4    2    2    4    3    3    3    3    3    3    3    4    4    3    3    3
-    3    3    3    3    4    3    3    3    3    3    3    4    4    3    3    3    3    3    3    4
-    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3    3
-    3    3    3    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4
-    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4    4
-    4    4    4    4    4
-endflag
-material            3         0
-mr_elast
-mr_elast
-ERROR
-    2    2    1    1    1    2    1    1    1    2    2    2    1    2    1    1    1    1    1    2
-    2    2    2    1    2    2    1    1    1    1    1    1    2    2    1    2    1    1    2    2
-    2    2    2    1    1    2    1    2    2    2    2    2    1    2    1    1    1    1    1    1
-    2    2    1    2    1    2    2    1    2    2    1    2    1    2    1    1    1    2    1    1
-    1    1    1    2    1    1    2    2    1    1    1    1    1    1    1    1    1    2    1    2
-    1    1    1    1    1    1    2    2    1    1    2    2    2    1    2    2    2    1    1    1
-    1    2    1    2    1    2    1    2    2    2    2    2    2    2    2    1    2    2    2    2
-    2    2    2    2    2    2    2    2    2    2    2    1    2    2    1    2    1    1    1    1
-    1    2    2    1    2    1    2    2    2    1    2    1    2    1    2    1    1    1    1    2
-    2    1    1    1    1    1    2    1    1    1    2    2    1    1    2    2    2    2    2    1
-    2    2    2    2    2    2    2    2    1    2    2    1    1    2    1    2    1    2    1    2
-    2    2    2    2    1    2    1    2    1    2    1    1    1    1    2    1    1    2    1    1
-    1    1    1    1    1    1    1    1    1    1    1    2    2    1    1    1    2    2    2    2
-    2    1    2    1    2    2    2    1    1    2    2    2    2    2    2    2    2    1    2    2
-    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    1    2    2
-    1    1    2    2    1    1    1    1    1    1    1    1    1    1    1    2    2    2    2    1
-    1    1    1    1    1    1    1    1    2    1    2    1    1    2    1    1    2    2    1    1
-    1    2    1    1    1    1    2    1    2    1    2    2    2    2    2    1    2    2    2    2
-    2    2    1    2    2    2    2    1    1    1    2    1    2    2    2    1    2    1    2    2
-    2    1    2    1    2    1    1    1    1    1    1    2    2    2    1    2    1    1    1    1
-    1    1    1    1    1    1    1    1    1    2    1    2    1    1    1    1    2    1    1    1
-    1    1    1    1    1    1    2    1    1    1    2    2    2    2    2    2    2    1    2    2
-    1    2    2    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2
-    2    2    2    2    2    2    2    1    1    1    1    1    1    2    1    1    1    2    1    1
-    2    2    2    2    2    1    1    1    1    1    1    1    1    1    1    2    1    2    1    1
-    1    1    1    1    1    1    1    1    2    1    1    2    1    1    2    2    2    2    2    2
-    1    2    1    2    2    2    2    2    2    2    2    1    1    2    2    2    2    1    1    1
-    2    2    1    1    1    1    1    1    1    1    2    1    1    1    1    2    2    1    2    2
-    2    2    2    2    1    1    1    2    1    1    1    2    1    2    2    2    1    1    2    2
-    1    1    1    2    2    2    2    1    2    2    2    1    2    2    2    2    2    2    2    2
-    2    2    2    2    1    1    2    1    2    2    2    2    2    2    2    2    2    1    2    1
-    1    1    2    2    1    1    1    1    1    1    1    1    2    2    1    2    2    2    1    1
-    1    1    1    1    1    1    1    1    1    1    1    1    2    1    1    2    1    1    1    1
-    1    1    2    1    2    2    2    2    2    2    2    2    1    2    2    2    1    2    2    1
-    1    2    1    2    2    2    2    2    2    2    2    2    2    2    1    1    2    2    2    2
-    2    1    1    1    2    2    1    1    2    2    2    2    2    1    2    2    2    1    1    1
-    2    1    1    1    2    1    1    1    1    2    2    1    1    1    2    1    2    2    2    1
-    2    2    2    2    1    1    2    1    1    1    2    2    2    2    2    2    1    1    1    2
-    2    2    1    2    2    2    1    1    2    2    1    1    1    1    1    1    1    1    1    1
-    1    1    1    1    1    1    1    2    2    1    1    2    1    1    1    1    1    1    1    1
-    1    1    1    1    2    1    1    1    1    1    1    1    1    1    1    2    2    2    2    2
-    2    2    2    2    2    2    1    1    2    2    1    1    1    1    1    2    2    2    2    2
-    1    2    2    2    1    1    1    1    1    1    1    1
-cycleno          0
-probtime   0.00000E+000
-endgmv

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.pset
===================================================================
--- short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.pset	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_ascii.pset	2011-06-16 16:32:15 UTC (rev 18642)
@@ -1,38 +0,0 @@
-pset ascii         7
-fault    1         35
-         1          2          3         13         14         15         25         26         27         37
-        38         39         49         50         51         61         62         63         73         74
-        75        148        149        156        157        164        165        172        173        180
-       181        188        189        196        197
-boundary_xm    2         35
-        85         86         87         94         95         96        103        104        105        112
-       113        114        121        122        123        130        131        132        139        140
-       141        204        205        210        211        216        217        222        223        228
-       229        234        235        240        241
-boundary_xp    3         35
-        10         11         12         22         23         24         34         35         36         46
-        47         48         58         59         60         70         71         72         82         83
-        84        154        155        162        163        170        171        178        179        186
-       187        194        195        202        203
-boundary_ym    4         35
-         1          2          3          4          5          6          7          8          9         10
-        11         12         85         86         87         88         89         90         91         92
-        93        148        149        150        151        152        153        154        155        204
-       205        206        207        208        209
-boundary_yp    5         35
-        73         74         75         76         77         78         79         80         81         82
-        83         84        139        140        141        142        143        144        145        146
-       147        196        197        198        199        200        201        202        203        240
-       241        242        243        244        245
-boundary_zm    6         49
-       148        150        152        154        156        158        160        162        164        166
-       168        170        172        174        176        178        180        182        184        186
-       188        190        192        194        196        198        200        202        204        206
-       208        210        212        214        216        218        220        222        224        226
-       228        230        232        234        236        238        240        242        244
-boundary_zp    7         49
-         3          6          9         12         15         18         21         24         27         30
-        33         36         39         42         45         48         51         54         57         60
-        63         66         69         72         75         78         81         84         87         90
-        93         96         99        102        105        108        111        114        117        120
-       123        126        129        132        135        138        141        144        147

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_binary.gmv
===================================================================
(Binary files differ)

Deleted: short/3D/PyLith/branches/multifields/examples/3d/tet4/tet4_1000m_binary.pset
===================================================================
(Binary files differ)

Modified: short/3D/PyLith/branches/multifields/examples/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/hex8/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/quad4/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/tet4/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/output/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/output/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/bar_shearwave/tri3/output/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/hex8/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/hex8/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/hex8/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/hex8/designdata.py
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/hex8/designdata.py	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/hex8/designdata.py	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfimpulses/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfimpulses/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfimpulses/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfresponses/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfresponses/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfresponses/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfspatialdb/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfspatialdb/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/greensfns/hex8/gfspatialdb/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/journal/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/journal/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/contours/journal/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.cfg
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.cfg	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.cfg	2011-06-16 16:32:15 UTC (rev 18642)
@@ -2,8 +2,10 @@
 [dem2lines]
 input_dem = ruapehu-nzmg-1km.txt
 vtk_output_file = ruapehu-nzmg-1km-resampled.vtk
+master_journal = ruapehu_topo.jou
 u_line_prefix = ulines/ruapehu-nzmg-1km
 v_line_prefix = vlines/ruapehu-nzmg-1km
+acis_filename = ruapehu_topo.sab
 x_min = 2724000.0
 x_max = 2744000.0
 y_min = 6200000.0

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.py
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.py	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/dem2lines.py	2011-06-16 16:32:15 UTC (rev 18642)
@@ -31,8 +31,12 @@
     ## \b Properties
     ## @li \b input_dem Input DEM file (ASCII).
     ## @li \b vtk_output_file Filename of VTK output file.
+    ## @li \b master_journal Output master journal file.
     ## @li \b u_line_prefix Prefix for u (east) output lines.
+    ## @li \b u_line_journal Output journal file for u (east) output lines.
     ## @li \b v_line_prefix Prefix for v (north) output lines.
+    ## @li \b v_line_journal Output journal file for v (north) output lines.
+    ## @li \b acis_filename Name of ACIS output file created by Cubit.
     ## @li \b x_min Minimum x-value for full resolution.
     ## @li \b x_max Maximum x-value for full resolution.
     ## @li \b y_min Minimum y-value for full resolution.
@@ -48,12 +52,24 @@
     vtkOutputFile = pyre.inventory.str("vtk_output_file", default="DEM.vtk")
     vtkOutputFile.meta['tip'] = "VTK output file."
     
+    masterJournal = pyre.inventory.str("master_journal", default="mktopo.jou")
+    masterJournal.meta['tip'] = "Filename of output master journal file."
+    
     uLinePrefix = pyre.inventory.str("u_line_prefix", default="u_lines")
     uLinePrefix.meta['tip'] = "Prefix for u (east) lines."
     
+    uLineJournal = pyre.inventory.str("u_line_journal", default="u_lines.jou")
+    uLineJournal.meta['tip'] = "Outputjournal file for u (east) lines."
+    
     vLinePrefix = pyre.inventory.str("v_line_prefix", default="v_lines")
     vLinePrefix.meta['tip'] = "Prefix for v (north) lines."
     
+    vLineJournal = pyre.inventory.str("v_line_journal", default="v_lines.jou")
+    vLineJournal.meta['tip'] = "Outputjournal file for v (north) lines."
+    
+    acisFilename = pyre.inventory.str("acis_filename", default="topo.sab")
+    acisFilename.meta['tip'] = "Name of ACIS output file created by Cubit."
+    
     xMin = pyre.inventory.float("x_min", default=-1.0)
     xMin.meta['tip'] = "Minimum x-value for full resolution."
     
@@ -94,7 +110,7 @@
     # pdb.set_trace()
     self._readDem()
     self._resampleDem()
-    self._writeDemLines()
+    self._writeCubitJournals()
     self._writeDemVtk()
 
     return
@@ -111,8 +127,12 @@
     # Filenames
     self.inputDem = self.inventory.inputDem
     self.vtkOutputFile = self.inventory.vtkOutputFile
+    self.masterJournal = self.inventory.masterJournal
     self.uLinePrefix = self.inventory.uLinePrefix
+    self.uLineJournal = self.inventory.uLineJournal
     self.vLinePrefix = self.inventory.vLinePrefix
+    self.vLineJournal = self.inventory.vLineJournal
+    self.acisFilename = self.inventory.acisFilename
 
     # Parameters
     self.xMin = self.inventory.xMin
@@ -292,19 +312,60 @@
     return zAvg
 
 
-  def _writeDemLines(self):
+  def _writeCubitJournals(self):
     """
-    Writes lines of the DEM as sets of Cubit journal files.
+    Writes lines of the DEM as sets of Cubit journal files and write master
+    journal file.
     """
 
     numWidth = 4
     fmt = " location %15.11e %15.11e %15.11e"
+    newLine = "\n"
+    masterPref = "playback '"
+    separator = "# ----------------------------------------------------------\n"
+    comment = "#"
 
+    # Write master journal file.
+    playCmd = \
+            "reset\n" + \
+            "# This is a simple Cubit journal file to create an ACIS\n" + \
+            "# NURBS surface from a set of intersecting lines.\n" + \
+            comment + newLine + separator + \
+            "# Create u-lines and v-lines, then create a net surface.\n" + \
+            separator + \
+            "playback 'ulines.jou'\n" + \
+            "playback 'vlines.jou'\n"
+    m = open(self.masterJournal, 'w')
+    m.write(playCmd)
+    c1 = 1
+    c2 = self.numYOut
+    c3 = c2 + 1
+    c4 = c2 + self.numXOut
+    netCmd = "create surface net u curve " + repr(c1) + " to " + repr(c2) + \
+             " v curve " + repr(c3) + " to " + repr(c4) + newLine
+    m.write(netCmd)
+    comment2 = comment + newLine + separator + \
+               "# Delete curves and any extra vertices.\n" + \
+               separator
+    m.write(comment2)
+    delCmd = "delete curve " + repr(c1) + " to " + repr(c4) + newLine + \
+             "delete vertex all\n"
+    m.write(delCmd)
+    comment3 = comment + newLine + separator + \
+               "# Export binary ACIS file.\n" + separator
+    m.write(comment3)
+    exportCmd = "export Acis '" + self.acisFilename + "'\n"
+    m.write(exportCmd)
+    m.close()
+
     # Write out u (east) lines.
+    um = open(self.uLineJournal, 'w')
     for row in range(self.numYOut):
       y = self.yOut[row]
       uString = repr(row + 1).rjust(numWidth, '0')
       outputFileName = self.uLinePrefix + "_u" + uString + ".jou"
+      masterString = masterPref + outputFileName + "'" + newLine
+      um.write(masterString)
       u = open(outputFileName, 'w')
       u.write('create curve spline')
       for column in range(self.numXOut):
@@ -312,13 +373,17 @@
 
       u.close()
 
+    um.close()
     print "Number of u-lines = " + repr(self.numYOut)
 
     # Write out v (north) lines.
+    vm = open(self.vLineJournal, 'w')
     for column in range(self.numXOut):
       x = self.xOut[column]
       vString = repr(column + 1).rjust(numWidth, '0')
       outputFileName = self.vLinePrefix + "_v" + vString + ".jou"
+      masterString = masterPref + outputFileName + "'" + newLine
+      vm.write(masterString)
       v = open(outputFileName, 'w')
       v.write('create curve spline')
       for row in range(self.numYOut):
@@ -326,6 +391,7 @@
 
       v.close()
 
+    vm.close()
     print "Number of v-lines = " + repr(self.numXOut)
 
     return

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/ulines/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/ulines/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/ulines/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/vlines/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/vlines/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/dem/vlines/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/mksurface.jou
===================================================================
--- short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/mksurface.jou	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/meshing/surface_nurbs/triangles/mksurface.jou	2011-06-16 16:32:15 UTC (rev 18642)
@@ -10,6 +10,7 @@
 
 # Create a mapped mesh, using a size of 4 km.
 surface 1 size 4000.0
+surface 1 scheme map
 mesh surface 1
 
 # Smooth the mesh.
@@ -24,3 +25,4 @@
 set geometry engine acis
 export acis "ruapehu-nzmg-1km.sab" surface 2 binary overwrite
 
+

Modified: short/3D/PyLith/branches/multifields/examples/run_examples.sh
===================================================================
--- short/3D/PyLith/branches/multifields/examples/run_examples.sh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/run_examples.sh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -55,7 +55,7 @@
 # ----------------------------------------------------------------------
 # 3d/tet4
 dir="3d/tet4"
-examples="shearxy.cfg dislocation.cfg"
+examples="step01.cfg step02.cfg step03.cfg step04.cfg"
 run_examples
 
 # 3d/hex8
@@ -64,6 +64,12 @@
 run_examples
 
 # ----------------------------------------------------------------------
+# subduction
+dir="2d/subduction"
+examples="step01.cfg step02.cfg step03.cfg"
+run_examples
+
+# ----------------------------------------------------------------------
 # bar_shearwave/tri3
 dir="bar_shearwave/tri3"
 examples="pylithapp.cfg"

Modified: short/3D/PyLith/branches/multifields/examples/twocells/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twohex27-cubit/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twohex27-cubit/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twohex27-cubit/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twohex8/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twohex8/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twohex8/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twoquad4/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twoquad4/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twoquad4/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twotet4/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twotet4/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twotet4/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twotet4-geoproj/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twotet4-geoproj/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twotet4-geoproj/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/examples/twocells/twotri3/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/examples/twocells/twotri3/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/examples/twocells/twotri3/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/libsrc/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #
@@ -28,7 +28,18 @@
 	problems
 
 .cu.lo:
-	$(LIBTOOL) --tag=CC --mode=compile nvcc --compile -m64 $(NVCC_FLAGS) -o ${@F} $<
+	$(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile nvcc --compile -prefer-non-pic -m64 $(NVCC_FLAGS) -o ${@F} $<
+	echo "# ${@F} - a libtool object file" > ${@}
+	echo "# Generated by ltmain.sh (GNU libtool) 2.2.4" >> ${@}
+	echo "#" >> ${@}
+	echo "# Please DO NOT delete this file!" >> ${@}
+	echo "# It is necessary for linking the library." >> ${@}
+	echo >> ${@}
+	echo "# Name of the PIC object." >> ${@}
+	echo "pic_object='../.libs/${*F}.o'" >> ${@}
+	echo  >> ${@}
+	echo "# Name of the non-PIC object" >> ${@}
+	echo "non_pic_object=none" >> ${@}
 
 lib_LTLIBRARIES = libpylith.la
 
@@ -104,6 +115,7 @@
 	materials/ElasticIsotropic3D.cc \
 	materials/ViscoelasticMaxwell.cc \
 	materials/GenMaxwellIsotropic3D.cc \
+	materials/GenMaxwellPlaneStrain.cc \
 	materials/GenMaxwellQpQsIsotropic3D.cc \
 	materials/MaxwellIsotropic3D.cc \
 	materials/MaxwellPlaneStrain.cc \
@@ -178,6 +190,7 @@
 
 if ENABLE_CUBIT
   libpylith_la_SOURCES += \
+	meshio/ExodusII.cc \
 	meshio/MeshIOCubit.cc
   libpylith_la_LIBADD += -lnetcdf_c++ -lnetcdf
 endif
@@ -187,8 +200,6 @@
 	feassemble/ElasticityImplicitCUDA.cc \
 	feassemble/ElasticityImplicitCUDAKernel.cu
   libpylith_la_LIBADD += -lcudart -lcuda 
-#    -L/usr/local/cuda/lib
-# INCLUDES +=  -I/usr/local/cuda/include
 endif
 
 

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/AbsorbingDampers.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BCIntegratorSubMesh.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryCondition.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/BoundaryConditionPoints.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBC.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/DirichletBoundary.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Makefile.am
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Makefile.am	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Makefile.am	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 # This code was developed as part of the Computational Infrastructure
 # for Geodynamics (http://geodynamics.org).
 #
-# Copyright (c) 2010 University of California, Davis
+# Copyright (c) 2010-2011 University of California, Davis
 #
 # See COPYING for license information.
 #

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.hh	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.icc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.icc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/Neumann.icc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.cc
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.cc	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.cc	2011-06-16 16:32:15 UTC (rev 18642)
@@ -9,7 +9,7 @@
 // This code was developed as part of the Computational Infrastructure
 // for Geodynamics (http://geodynamics.org).
 //
-// Copyright (c) 2010 University of California, Davis
+// Copyright (c) 2010-2011 University of California, Davis
 //
 // See COPYING for license information.
 //

Modified: short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.hh
===================================================================
--- short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.hh	2011-06-16 16:17:45 UTC (rev 18641)
+++ short/3D/PyLith/branches/multifields/libsrc/pylith/bc/PointForce.hh	2011-