[cig-commits] r14888 - in short/3D/PyLith/trunk: . examples/3d/hex8 tests/1d/line2
brad at geodynamics.org
brad at geodynamics.org
Wed May 6 10:52:50 PDT 2009
Author: brad
Date: 2009-05-06 10:52:49 -0700 (Wed, 06 May 2009)
New Revision: 14888
Added:
short/3D/PyLith/trunk/tests/1d/line2/TestLine2.py
Modified:
short/3D/PyLith/trunk/TODO
short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg
short/3D/PyLith/trunk/tests/1d/line2/Makefile.am
short/3D/PyLith/trunk/tests/1d/line2/TestAxial.py
short/3D/PyLith/trunk/tests/1d/line2/TestDislocation.py
short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
short/3D/PyLith/trunk/tests/1d/line2/finalslip.spatialdb
short/3D/PyLith/trunk/tests/1d/line2/testpylith.py
Log:
Finished test for 1-D dislocation problem.
Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/TODO 2009-05-06 17:52:49 UTC (rev 14888)
@@ -10,7 +10,7 @@
1-D
1. axial disp [DONE]
- 2. dislocation
+ 2. dislocation [DONE]
2-D
1. axial/shear (DirichletBC)
@@ -41,6 +41,12 @@
(6) Tidy up
+ How do we determine the orientation for a fault in a 1-D mesh? We
+ assume normaldir is +1.0, but cohesive cells could be created so
+ that the fault has a normaldir of -1.0. If the normaldir is -1.0,
+ then we need to flip the orientation field to get the correct
+ sense of slip.
+
Add simple stableTimeStep() for elastic materials.
Cleanup logging. Constraints and Integrators should log at the C++
Modified: short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg 2009-05-06 17:52:49 UTC (rev 14888)
@@ -84,4 +84,4 @@
log_summary = true
ksp_max_it = 100
ksp_gmres_restart = 50
-start_in_debugger = true
+#start_in_debugger = true
Modified: short/3D/PyLith/trunk/tests/1d/line2/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/Makefile.am 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/Makefile.am 2009-05-06 17:52:49 UTC (rev 14888)
@@ -15,13 +15,18 @@
check_SCRIPTS = testpylith.py
noinst_PYTHON = \
- TestAxial.py
+ TestLine2.py \
+ TestAxial.py \
+ TestDislocation.py
noinst_DATA = \
bar.mesh \
+ matprops.spatialdb \
axialextension.cfg \
axialextension_disp.spatialdb \
- matprops.spatialdb
+ dislocation.cfg \
+ finalslip.spatialdb \
+ sliptime.spatialdb
noinst_TMP = \
axialextension_t0000000.vtk \
Modified: short/3D/PyLith/trunk/tests/1d/line2/TestAxial.py
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/TestAxial.py 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/TestAxial.py 2009-05-06 17:52:49 UTC (rev 14888)
@@ -14,8 +14,8 @@
##
## @brief Test suite for testing pylith with 1-D axial extension.
-import unittest
import numpy
+from TestLine2 import TestLine2
from pylith.utils.VTKDataReader import has_vtk
from pylith.utils.VTKDataReader import VTKDataReader
@@ -40,7 +40,7 @@
return
-class TestAxial(unittest.TestCase):
+class TestAxial(TestLine2):
"""
Test suite for testing pylith with 1-D axial extension.
"""
@@ -49,7 +49,9 @@
"""
Setup for test.
"""
+ TestLine2.setUp(self)
run_pylith()
+ self.outputRoot = "axialextension"
if has_vtk():
self.reader = VTKDataReader()
else:
@@ -57,63 +59,6 @@
return
- def test_elastic_info(self):
- """
- Check elastic info.
- """
- if self.reader is None:
- return
-
- data = self.reader.read("axialextension-statevars-elastic_info.vtk")
-
- # Check cells
- ncellsE = 4
- ncornersE = 2
- (ncells, ncorners) = data['cells'].shape
- self.assertEqual(ncellsE, ncells)
- self.assertEqual(ncornersE, ncorners)
-
- # Check vertices
- nverticesE = 5
- spaceDimE = 3
- (nvertices, spaceDim) = data['vertices'].shape
- self.assertEqual(nverticesE, nvertices)
- self.assertEqual(spaceDimE, spaceDim)
-
- # Check physical properties
- tolerance = 1.0e-5
- vsE = 3000.0
- vpE = 5291.502622129181
- densityE = 2500.0
-
- # Lame's constant mu (shear modulus)
- muE = densityE*vsE**2
- diff = numpy.abs(1.0 - data['cell_fields']['mu']/muE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected Lame's constant mu: ",muE
- print "Lame's constant mu: ",data['cell_fields']['mu']
- self.assertEqual(ncells, numpy.sum(okay))
-
- # Lame's constant lambda
- lambdaE = densityE*vpE**2 - 2*muE
- diff = numpy.abs(1.0 - data['cell_fields']['lambda']/lambdaE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected Lame's constant lambda: ",lambdaE
- print "Lame's constant lambda: ",data['cell_fields']['lambda']
- self.assertEqual(ncells, numpy.sum(okay))
-
- # Density
- diff = numpy.abs(1.0 - data['cell_fields']['density']/densityE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected density: ",densityE
- print "Density: ",data['cell_fields']['density']
- self.assertEqual(ncells, numpy.sum(okay))
- return
-
-
def test_soln(self):
"""
Check solution (displacement) field.
@@ -121,22 +66,18 @@
if self.reader is None:
return
- data = self.reader.read("axialextension_t0000000.vtk")
+ data = self.reader.read("%s_t0000000.vtk" % self.outputRoot)
# Check cells
- ncellsE = 4
- ncornersE = 2
(ncells, ncorners) = data['cells'].shape
- self.assertEqual(ncellsE, ncells)
- self.assertEqual(ncornersE, ncorners)
+ self.assertEqual(self.ncells, ncells)
+ self.assertEqual(self.ncorners, ncorners)
# Check vertices
- nverticesE = 5
- spaceDimE = 3
vertices = data['vertices']
(nvertices, spaceDim) = vertices.shape
- self.assertEqual(nverticesE, nvertices)
- self.assertEqual(spaceDimE, spaceDim)
+ self.assertEqual(self.nvertices, nvertices)
+ self.assertEqual(self.spaceDim, spaceDim)
# Check displacement solution
tolerance = 1.0e-5
@@ -172,11 +113,52 @@
return
- #def test_elastic_statevars(self):
- # """
- # Check elastic state variables.
- # """
- # return
+ def test_elastic_statevars(self):
+ """
+ Check elastic state variables.
+ """
+ if self.reader is None:
+ return
+ data = self.reader.read("%s-statevars-elastic_t0000000.vtk" % \
+ self.outputRoot)
+ # Check cells
+ (ncells, ncorners) = data['cells'].shape
+ self.assertEqual(self.ncells, ncells)
+ self.assertEqual(self.ncorners, ncorners)
+
+ # Check vertices
+ vertices = data['vertices']
+ (nvertices, spaceDim) = vertices.shape
+ self.assertEqual(self.nvertices, nvertices)
+ self.assertEqual(self.spaceDim, spaceDim)
+
+ # Check strains
+ tolerance = 1.0e-5
+ exx = 0.1
+ strainE = exx*numpy.ones( (ncells, self.tensorSize), dtype=numpy.float64)
+ strain = data['cell_fields']['total_strain']
+ diff = numpy.abs(strain[:]-strainE[:,0])
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Strain field expected: ",strainE
+ print "Strain field: ",strain
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ # Check stresses
+ lp2m = self.density*self.vp**2
+ stressE = lp2m*exx * numpy.ones( (ncells, self.tensorSize),
+ dtype=numpy.float64)
+ stress = data['cell_fields']['stress']
+ diff = numpy.abs(stress[:]-stressE[:,0])
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Stress field expected: ",stressE
+ print "Stress field: ",stress
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ return
+
+
# End of file
Modified: short/3D/PyLith/trunk/tests/1d/line2/TestDislocation.py
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/TestDislocation.py 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/TestDislocation.py 2009-05-06 17:52:49 UTC (rev 14888)
@@ -14,8 +14,8 @@
##
## @brief Test suite for testing pylith with 1-D axial extension.
-import unittest
import numpy
+from TestLine2 import TestLine2
from pylith.utils.VTKDataReader import has_vtk
from pylith.utils.VTKDataReader import VTKDataReader
@@ -40,7 +40,7 @@
return
-class TestDislocation(unittest.TestCase):
+class TestDislocation(TestLine2):
"""
Test suite for testing pylith with 1-D axial extension.
"""
@@ -49,7 +49,12 @@
"""
Setup for test.
"""
+ TestLine2.setUp(self)
+ self.nvertices = 6
+ self.nverticesO = 5
+
run_pylith()
+ self.outputRoot = "dislocation"
if has_vtk():
self.reader = VTKDataReader()
else:
@@ -57,63 +62,6 @@
return
- def test_elastic_info(self):
- """
- Check elastic info.
- """
- if self.reader is None:
- return
-
- data = self.reader.read("dislocation-statevars-elastic_info.vtk")
-
- # Check cells
- ncellsE = 4
- ncornersE = 2
- (ncells, ncorners) = data['cells'].shape
- self.assertEqual(ncellsE, ncells)
- self.assertEqual(ncornersE, ncorners)
-
- # Check vertices
- nverticesE = 5
- spaceDimE = 3
- (nvertices, spaceDim) = data['vertices'].shape
- self.assertEqual(nverticesE, nvertices)
- self.assertEqual(spaceDimE, spaceDim)
-
- # Check physical properties
- tolerance = 1.0e-5
- vsE = 3000.0
- vpE = 5291.502622129181
- densityE = 2500.0
-
- # Lame's constant mu (shear modulus)
- muE = densityE*vsE**2
- diff = numpy.abs(1.0 - data['cell_fields']['mu']/muE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected Lame's constant mu: ",muE
- print "Lame's constant mu: ",data['cell_fields']['mu']
- self.assertEqual(ncells, numpy.sum(okay))
-
- # Lame's constant lambda
- lambdaE = densityE*vpE**2 - 2*muE
- diff = numpy.abs(1.0 - data['cell_fields']['lambda']/lambdaE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected Lame's constant lambda: ",lambdaE
- print "Lame's constant lambda: ",data['cell_fields']['lambda']
- self.assertEqual(ncells, numpy.sum(okay))
-
- # Density
- diff = numpy.abs(1.0 - data['cell_fields']['density']/densityE)
- okay = diff < tolerance
- if numpy.sum(okay) != ncells:
- print "Expected density: ",densityE
- print "Density: ",data['cell_fields']['density']
- self.assertEqual(ncells, numpy.sum(okay))
- return
-
-
def test_soln(self):
"""
Check solution (displacement) field.
@@ -121,27 +69,28 @@
if self.reader is None:
return
- data = self.reader.read("dislocation_t0000000.vtk")
+ data = self.reader.read("%s_t0000000.vtk" % self.outputRoot)
# Check cells
- ncellsE = 4
- ncornersE = 2
(ncells, ncorners) = data['cells'].shape
- self.assertEqual(ncellsE, ncells)
- self.assertEqual(ncornersE, ncorners)
+ self.assertEqual(self.ncells, ncells)
+ self.assertEqual(self.ncorners, ncorners)
# Check vertices
- nverticesE = 5
- spaceDimE = 3
vertices = data['vertices']
(nvertices, spaceDim) = vertices.shape
- self.assertEqual(nverticesE, nvertices)
- self.assertEqual(spaceDimE, spaceDim)
+ self.assertEqual(self.nvertices, nvertices)
+ self.assertEqual(self.spaceDim, spaceDim)
# Check displacement solution
tolerance = 1.0e-5
dispE = numpy.zeros( (nvertices, spaceDim), dtype=numpy.float64)
- dispE[:,0] = -0.2 + 0.1 * vertices[:,0]
+ maskP = vertices[:,0] >= 2.0
+ maskP[self.nverticesO:self.nvertices] = False
+ maskN = numpy.bitwise_and(vertices[:,0] <= 2.0, ~maskP)
+ dispE[:,0] = \
+ maskN*(-0.20 - 0.025*vertices[:,0]) + \
+ maskP*(+0.30 - 0.025*vertices[:,0])
disp = data['vertex_fields']['displacement']
@@ -151,7 +100,7 @@
if numpy.sum(okay) != nvertices:
print "Displacement field expected: ",dispE
print "Displacement field: ",disp
- self.assertEqual(nvertices, numpy.sum(okay))
+ self.assertEqual(nvertices, numpy.sum(okay))
# Check y displacements
diff = numpy.abs(disp[:,1] - dispE[:,1])
@@ -159,7 +108,7 @@
if numpy.sum(okay) != nvertices:
print "Displacement field expected: ",dispE
print "Displacement field: ",disp
- self.assertEqual(nvertices, numpy.sum(okay))
+ self.assertEqual(nvertices, numpy.sum(okay))
# Check z displacements
diff = numpy.abs(disp[:,2] - dispE[:,2])
@@ -167,16 +116,57 @@
if numpy.sum(okay) != nvertices:
print "Displacement field expected: ",dispE
print "Displacement field: ",disp
- self.assertEqual(nvertices, numpy.sum(okay))
+ self.assertEqual(nvertices, numpy.sum(okay))
return
- #def test_elastic_statevars(self):
- # """
- # Check elastic state variables.
- # """
- # return
+ def test_elastic_statevars(self):
+ """
+ Check elastic state variables.
+ """
+ if self.reader is None:
+ return
+ data = self.reader.read("%s-statevars-elastic_t0000000.vtk" % \
+ self.outputRoot)
+ # Check cells
+ (ncells, ncorners) = data['cells'].shape
+ self.assertEqual(self.ncells, ncells)
+ self.assertEqual(self.ncorners, ncorners)
+
+ # Check vertices
+ vertices = data['vertices']
+ (nvertices, spaceDim) = vertices.shape
+ self.assertEqual(self.nvertices, nvertices)
+ self.assertEqual(self.spaceDim, spaceDim)
+
+ # Check strains
+ tolerance = 1.0e-5
+ exx = -0.025
+ strainE = exx*numpy.ones( (ncells, self.tensorSize), dtype=numpy.float64)
+ strain = data['cell_fields']['total_strain']
+ diff = numpy.abs(strain[:]-strainE[:,0])
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Strain field expected: ",strainE
+ print "Strain field: ",strain
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ # Check stresses
+ lp2m = self.density*self.vp**2
+ stressE = lp2m*exx * numpy.ones( (ncells, self.tensorSize),
+ dtype=numpy.float64)
+ stress = data['cell_fields']['stress']
+ diff = numpy.abs(stress[:]-stressE[:,0])
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Stress field expected: ",stressE
+ print "Stress field: ",stress
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ return
+
+
# End of file
Added: short/3D/PyLith/trunk/tests/1d/line2/TestLine2.py
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/TestLine2.py (rev 0)
+++ short/3D/PyLith/trunk/tests/1d/line2/TestLine2.py 2009-05-06 17:52:49 UTC (rev 14888)
@@ -0,0 +1,90 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file tests/1d/line2/TestLine2.py
+##
+## @brief Generic tests for problems using 1-D bar mesh.
+
+import unittest
+import numpy
+
+class TestLine2(unittest.TestCase):
+ """
+ Generic tests for problems using 1-D bar mesh.
+ """
+
+ def setUp(self):
+ """
+ Setup for tests.
+ """
+ self.ncells = 4
+ self.ncorners = 2
+ self.nvertices = 5
+ self.spaceDim = 3
+ self.tensorSize = 1
+ self.vs = 3000.0
+ self.vp = 5291.502622129181
+ self.density = 2500.0
+ return
+
+ def test_elastic_info(self):
+ """
+ Check elastic info.
+ """
+ if self.reader is None:
+ return
+
+ data = self.reader.read("%s-statevars-elastic_info.vtk" % self.outputRoot)
+
+ # Check cells
+ (ncells, ncorners) = data['cells'].shape
+ self.assertEqual(self.ncells, ncells)
+ self.assertEqual(self.ncorners, ncorners)
+
+ # Check vertices
+ (nvertices, spaceDim) = data['vertices'].shape
+ self.assertEqual(self.nvertices, nvertices)
+ self.assertEqual(self.spaceDim, spaceDim)
+
+ # Check physical properties
+ tolerance = 1.0e-5
+
+ # Lame's constant mu (shear modulus)
+ muE = self.density*self.vs**2
+ diff = numpy.abs(1.0 - data['cell_fields']['mu']/muE)
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Expected Lame's constant mu: ",muE
+ print "Lame's constant mu: ",data['cell_fields']['mu']
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ # Lame's constant lambda
+ lambdaE = self.density*self.vp**2 - 2*muE
+ diff = numpy.abs(1.0 - data['cell_fields']['lambda']/lambdaE)
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Expected Lame's constant lambda: ",lambdaE
+ print "Lame's constant lambda: ",data['cell_fields']['lambda']
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ # Density
+ diff = numpy.abs(1.0 - data['cell_fields']['density']/self.density)
+ okay = diff < tolerance
+ if numpy.sum(okay) != ncells:
+ print "Expected density: ",self.density
+ print "Density: ",data['cell_fields']['density']
+ self.assertEqual(ncells, numpy.sum(okay))
+
+ return
+
+
+# End of file
Modified: short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg 2009-05-06 17:52:49 UTC (rev 14888)
@@ -8,14 +8,14 @@
# journal
# ----------------------------------------------------------------------
[axialextension.journal.info]
-timedependent = 1
-implicit = 1
-petsc = 1
-solverlinear = 1
-meshiocubit = 1
-implicitelasticity = 1
-quadrature = 1
-fiatsimplex = 1
+#timedependent = 1
+#implicit = 1
+#petsc = 1
+#solverlinear = 1
+#meshiocubit = 1
+#implicitelasticity = 1
+#quadrature = 1
+#fiatsimplex = 1
# ----------------------------------------------------------------------
# mesh_generator
@@ -74,8 +74,8 @@
#ksp_view = true
#log_summary = true
#start_in_debugger = true
-snes_monitor = true
-snes_view = true
+#snes_monitor = true
+#snes_view = true
# ----------------------------------------------------------------------
# output
Modified: short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg 2009-05-06 17:52:49 UTC (rev 14888)
@@ -1,53 +1,53 @@
# -*- Python -*-
-[pylithapp]
+[dislocation]
-[pylithapp.launcher]
+[dislocation.launcher]
command = mpiexec -n ${nodes}
# ----------------------------------------------------------------------
# journal
# ----------------------------------------------------------------------
-[pylithapp.journal.info]
-timedependent = 1
-implicit = 1
-petsc = 1
-solverlinear = 1
-meshiocubit = 1
-implicitelasticity = 1
-quadrature = 1
-fiatsimplex = 1
+[dislocation.journal.info]
+#timedependent = 1
+#implicit = 1
+#petsc = 1
+#solverlinear = 1
+#meshiocubit = 1
+#implicitelasticity = 1
+#quadrature = 1
+#fiatsimplex = 1
# ----------------------------------------------------------------------
# mesh_generator
# ----------------------------------------------------------------------
-[pylithapp.mesh_generator]
+[dislocation.mesh_generator]
#debug = 1
-[pylithapp.mesh_generator.reader]
+[dislocation.mesh_generator.reader]
filename = bar.mesh
coordsys.space_dim = 1
# ----------------------------------------------------------------------
# problem
# ----------------------------------------------------------------------
-[pylithapp.timedependent]
+[dislocation.timedependent]
dimension = 1
bc = [bc]
interfaces = [fault]
#formulation.solver = pylith.problems.SolverNonlinear
-[pylithapp.timedependent.formulation.time_step]
+[dislocation.timedependent.formulation.time_step]
total_time = 0.0*s
# ----------------------------------------------------------------------
# materials
# ----------------------------------------------------------------------
-[pylithapp.timedependent]
+[dislocation.timedependent]
materials = [elastic]
materials.elastic = pylith.materials.ElasticStrain1D
-[pylithapp.timedependent.materials.elastic]
+[dislocation.timedependent.materials.elastic]
label = Elastic material
id = 1
properties_db.iohandler.filename = matprops.spatialdb
@@ -56,7 +56,7 @@
# ----------------------------------------------------------------------
# boundary conditions
# ----------------------------------------------------------------------
-[pylithapp.timedependent.bc.bc]
+[dislocation.timedependent.bc.bc]
fixed_dof = [0]
label = end points
db = spatialdata.spatialdb.SimpleDB
@@ -66,18 +66,18 @@
# ----------------------------------------------------------------------
# faults
# ----------------------------------------------------------------------
-[pylithapp.timedependent.interfaces]
+[dislocation.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]
+[dislocation.timedependent.interfaces.fault]
label = fault
quadrature.cell.shape = point
mat_db.iohandler.filename = matprops.spatialdb
-[pylithapp.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
+[dislocation.timedependent.interfaces.fault.eq_srcs.rupture.slip_function]
slip.iohandler.filename = finalslip.spatialdb
slip_time.iohandler.filename = sliptime.spatialdb
@@ -85,7 +85,7 @@
# ----------------------------------------------------------------------
# PETSc
# ----------------------------------------------------------------------
-[pylithapp.petsc]
+[dislocation.petsc]
ksp_rtol = 1.0e-8
pc_type = asm
ksp_max_it = 100
@@ -94,15 +94,18 @@
#ksp_view = true
#log_summary = true
#start_in_debugger = true
-snes_monitor = true
-snes_view = true
+#snes_monitor = true
+#snes_view = true
# ----------------------------------------------------------------------
# output
# ----------------------------------------------------------------------
-[pylithapp.problem.formulation.output.output.writer]
+[dislocation.problem.formulation.output.output.writer]
filename = dislocation.vtk
-[pylithapp.timedependent.materials.elastic.output]
+[dislocation.timedependent.materials.elastic.output]
cell_filter = pylith.meshio.CellFilterAvgMesh
writer.filename = dislocation-statevars-elastic.vtk
+
+[dislocation.timedependent.interfaces.fault.output.writer]
+filename = dislocation-fault.vtk
Modified: short/3D/PyLith/trunk/tests/1d/line2/finalslip.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/finalslip.spatialdb 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/finalslip.spatialdb 2009-05-06 17:52:49 UTC (rev 14888)
@@ -12,4 +12,4 @@
space-dim = 1
}
}
-0.0 +0.50
+0.0 -0.50
Modified: short/3D/PyLith/trunk/tests/1d/line2/testpylith.py
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/testpylith.py 2009-05-06 16:58:12 UTC (rev 14887)
+++ short/3D/PyLith/trunk/tests/1d/line2/testpylith.py 2009-05-06 17:52:49 UTC (rev 14888)
@@ -23,6 +23,9 @@
from TestAxial import TestAxial
suite.addTest(unittest.makeSuite(TestAxial))
+ from TestDislocation import TestDislocation
+ suite.addTest(unittest.makeSuite(TestDislocation))
+
return suite
More information about the CIG-COMMITS
mailing list