[cig-commits] r7173 - in short/3D/PyLith/trunk: . libsrc/faults
modulesrc/feassemble pylith/faults pylith/feassemble tests/1d/line2
brad at geodynamics.org
brad at geodynamics.org
Tue Jun 12 14:02:27 PDT 2007
Author: brad
Date: 2007-06-12 14:02:27 -0700 (Tue, 12 Jun 2007)
New Revision: 7173
Added:
short/3D/PyLith/trunk/tests/1d/line2/axialextension_disp.spatialdb
short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
short/3D/PyLith/trunk/tests/1d/line2/dislocation_disp.spatialdb
short/3D/PyLith/trunk/tests/1d/line2/dislocation_slip.spatialdb
short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliprate.spatialdb
short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliptime.spatialdb
Removed:
short/3D/PyLith/trunk/tests/1d/line2/dispbc.spatialdb
Modified:
short/3D/PyLith/trunk/TODO
short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc
short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveDyn.cc
short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
short/3D/PyLith/trunk/pylith/faults/EqKinSrc.py
short/3D/PyLith/trunk/pylith/faults/Fault.py
short/3D/PyLith/trunk/pylith/faults/FaultCohesiveKin.py
short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py
short/3D/PyLith/trunk/tests/1d/line2/Makefile.am
short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
short/3D/PyLith/trunk/tests/1d/line2/bar.mesh
Log:
Started work on fault test for line2 cells. Fixed some trivial bugs in fault implementation and getting qudarature to work in 0-D.
Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/TODO 2007-06-12 21:02:27 UTC (rev 7173)
@@ -23,9 +23,6 @@
(1) axial compression
(2) shear
-3. Implement faults for kinematic source
- a. Creation of cohesive cells
-
5. Additional unit tests
b. ElasticityExplicit and ElasticityImplicit
i. multiple materials
@@ -38,9 +35,10 @@
containers
faults.odb
- bc.odb
materials.odb
+Check trapping of errors in reading spatialdata files.
+
======================================================================
SECONDARY PRIORITIES
======================================================================
Modified: short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc 2007-06-12 21:02:27 UTC (rev 7173)
@@ -54,7 +54,6 @@
typedef std::set<Mesh::point_type>::const_iterator vert_iterator;
assert(!mesh.isNull());
- assert(!faultMesh.isNull());
assert(0 != cs);
assert(0 != _dbFinalSlip);
assert(0 != _dbSlipTime);
Modified: short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveDyn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveDyn.cc 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveDyn.cc 2007-06-12 21:02:27 UTC (rev 7173)
@@ -41,160 +41,7 @@
const spatialdata::geocoords::CoordSys* cs,
const double_array& upDir)
{ // initialize
- assert(0 != _quadrature);
- assert(0 != _faultMesh);
- assert(!_faultMesh->isNull());
- assert(0 != cs);
-
- if (3 != upDir.size())
- throw std::runtime_error("Up direction for fault orientation must be "
- "a vector with 3 components.");
-
-#if 0
- // Allocate section for orientation at quadrature points
- ALE::Obj<real_section_type> orientation =
- new real_section_type((*_faultMesh)->comm(), (*_faultMesh)->debug());
- assert(!orientation.isNull());
- const int cellDim = (*_faultMesh)->getDimension();
- const int spaceDim = cs->spaceDim();
- const int orientationSize = cellDim*spaceDim;
- orientation->setFiberDimension((*_faultMesh)->depthStratum(0),
- orientationSize);
- (*_faultMesh)->allocate(orientation);
-
- // Get section containing coordinates of vertices
- const ALE::Obj<real_section_type>& coordinates =
- mesh->getRealSection("coordinates");
- assert(!coordinates.isNull());
-
- // Set orientation method
- const int cellDim = _quadrature->cellDim();
- const int spaceDim = _quadrature->spaceDim();
- orient_fn_type orientFn;
- switch (cellDim)
- { // switch
- case 1 :
- orientFn = _orient1D;
- break;
- case 2 :
- orientFn = _orient2D;
- break;
- case 3 :
- orientFn = _orient3D;
- break;
- default :
- assert(0);
- } // switch
-
- // Loop over cells, computing orientation at each vertex in cell
- const ALE::Obj<sieve_type>& sieve = (*_faultMesh)->getSieve();
- assert(!sieve.isNull());
- const ALE::Obj<Mesh::label_sequence>& cells =
- (*_faultMesh)->heightStratum(0);
- const Mesh::label_sequence::iterator cBegin = cells->begin();
- const Mesh::label_sequence::iterator cEnd = cells->end();
- double_array cellOrientation(_quadrature->numBasis()*orientationSize);
- const int numVertices = _quadrature->numBasis();
- for (Mesh::label_sequence::iterator c_iter=cBegin;
- c_iter != cEnd;
- ++c_iter) {
- // Compute cell geometry at vertices
- _quadrature->computeGeometryVert(*_faultMesh, coordinates, *c_iter);
-
- const double_array& jacobian = _quadrature->jacobianVert();
- const double_array& jacobianDet = _quadrature->jacobianDetVert();
-
- // Compute weighted orientation of face at vertices (using geometry info)
- orientFn(&cellOrientation, jacobian, jacobianDet, upDir, numVertices);
-
- // Update orientation section for vertices in cell
- const ALE::Obj<sieve_type::traits::coneSequence>& cone =
- sieve->cone(*c_iter);
- assert(!cone.isNull());
- const sieve_type::traits::coneSequence::iterator vBegin = cone->begin();
- const sieve_type::traits::coneSequence::iterator vEnd = cone->end();
- int index = 0;
- for(sieve_type::traits::coneSequence::iterator v_iter=vBegin;
- v_iter != vEnd;
- ++v_iter)
- orientation->updatePoint(*v_iter, &cellOrientation[index]);
- index += orientationSize;
- } // for
-
- // Assemble orientation information
- //orientation->complete();
-
- // Loop over vertices, make orientation information unit magnitude
- const ALE::Obj<Mesh::label_sequence>& vertices =
- (*_faultMesh)->depthStratum(0);
- const Mesh::label_sequence::iterator vBegin = vertices->begin();
- const Mesh::label_sequence::iterator vEnd = vertices->end();
- double_array vertexDir(orientationSize);
- for (Mesh::label_sequence::iterator v_iter=vBegin;
- v_iter != vEnd;
- ++v_iter) {
- const real_section_type::value_type* vertexOrient =
- orientation->restrictPoint(*v_iter);
-
- assert(cellDim*spaceDim == orientationSize);
- for (int iDim=0, index=0; iDim < cellDim; ++iDim, index+=cellDim) {
- double mag = 0;
- for (int jDim=0; jDim < spaceDim; ++jDim)
- mag *= vertexOrient[index*cellDim+jDim];
- for (int jDim=0; jDim < cellDim; ++jDim)
- vertexDir[index*cellDim+jDim] = vertexOrient[index*cellDim+jDim] / mag;
- } // for
- orientation->updatePoint(*v_iter, &vertexDir[0]);
- } // for
-
- // Create set of constraint vertices
- std::set<Mesh::point_type> setVert;
- for (Mesh::label_sequence::iterator c_iter=cBegin;
- c_iter != cEnd;
- ++c_iter) {
- // Vertices for each cohesive cell are in groups of N.
- // 0 to N-1: vertices on negative side of the fault
- // N-1 to 2N-1: vertices on positive side of the fault
- // 2N to 3N-1: vertices associated with constraint forces
- const ALE::Obj<sieve_type::traits::coneSequence>& cone =
- sieve->cone(*c_iter);
- assert(!cone.isNull());
- const sieve_type::traits::coneSequence::iterator vBegin = cone->begin();
- const sieve_type::traits::coneSequence::iterator vEnd = cone->end();
- const int coneSize = cone->size();
- assert(coneSize % 3 == 0);
- sieve_type::traits::coneSequence::iterator v_iter = vBegin;
- // Skip over non-constraint vertices
- for (int i=0, numSkip=2*coneSize/3; i < numSkip; ++i)
- ++v_iter;
- // Add constraint vertices to set
- for(int i=0, numConstraintVert = coneSize/3;
- i < numConstraintVert;
- ++i, ++v_iter)
- setVert.insert(*v_iter);
- } // for
-
- // Only store orientation information at constraint vertices
- _orientation =
- new real_section_type((*_faultMesh)->comm(), (*_faultMesh)->debug());
- assert(!_orientation.isNull());
- const std::set<Mesh::point_type>::const_iterator cvBegin =
- _constraintVert.begin();
- const std::set<Mesh::point_type>::const_iterator cvEnd =
- _constraintVert.end();
- for (std::set<Mesh::point_type>::const_iterator v_iter=cvBegin;
- v_iter != cvEnd;
- ++v_iter)
- _orientation->setFiberDimension(*v_iter, orientationSize);
- (*_faultMesh)->allocate(_orientation);
- for (std::set<Mesh::point_type>::const_iterator v_iter=cvBegin;
- v_iter != cvEnd;
- ++v_iter) {
- const real_section_type::value_type* vertexOrient =
- orientation->restrictPoint(*v_iter);
- _orientation->updatePoint(*v_iter, vertexOrient);
- } // for
-#endif
+ throw std::logic_error("FaultCohesiveDyn::initialize() not implemented.");
} // initialize
// ----------------------------------------------------------------------
@@ -205,46 +52,7 @@
topology::FieldsManager* const fields,
const ALE::Obj<Mesh>& mesh)
{ // integrateResidual
-#if 0
- // Subtract constraint forces (which are disp at the constraint
- // DOF) to residual; contributions are at DOF of normal vertices (i and j)
-
- const ALE::Obj<Mesh::label_sequence>& cells =
- (*_faultMesh)->heightStratum(0);
- const Mesh::label_sequence::iterator cBegin = cells->begin();
- const Mesh::label_sequence::iterator cEnd = cells->end();
-
- // Allocate vector for cell values (if necessary)
- _initCellVector();
-
- // Loop over cohesive cells
- const int numVertices = _quadrature->numBasis();
- const int numConstraintVert = numVertices / 3;
- assert(numVertices == numConstraintVert * 3);
- for (Mesh::label_sequence::iterator c_iter=cBegin;
- c_iter != cEnd;
- ++c_iter) {
- _resetCellVector();
-
- // Get values at vertices (want constraint forces in disp vector)
- const real_section_type::value_type* cellDisp =
- mesh->restrict(disp, *c_iter);
-
- // Transfer constraint forces to cell's constribution to residual vector
- for (int i=0; i < numConstraintVert; ++i) {
- const double constraintForce = cellDisp[2*numConstraintVert+i];
- _cellVector[ i] = -constraintForce;
- _cellVector[numConstraintVert+i] = -constraintForce;
- } // for
- PetscErrorCode err =
- PetscLogFlops(numConstraintVert*2);
- if (err)
- throw std::runtime_error("Logging PETSc flops failed.");
-
- // Update residual
- mesh->updateAdd(residual, *c_iter, _cellVector);
- } // for
-#endif
+ throw std::logic_error("FaultCohesiveDyn::integrateResidual() not implemented.");
} // integrateResidual
// ----------------------------------------------------------------------
@@ -255,6 +63,7 @@
topology::FieldsManager* const fields,
const ALE::Obj<Mesh>& mesh)
{ // integrateJacobian
+ throw std::logic_error("FaultCohesiveDyn::integrateJacobian() not implemented.");
} // integrateJacobian
Modified: short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
===================================================================
--- short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-06-12 21:02:27 UTC (rev 7173)
@@ -526,9 +526,14 @@
raise TypeError, \
"Argument 'vertices' must be a contiguous, 2-D array " \
"of type double."
- if numBasis != vertices.shape[0] or cellDim != vertices.shape[1]:
- raise TypeError, \
- "Shape of argument 'vertices' must be (numBasis, cellDim)."
+ if cellDim > 0:
+ if numBasis != vertices.shape[0] or cellDim != vertices.shape[1]:
+ raise TypeError, \
+ "Shape of argument 'vertices' must be (numBasis, cellDim)."
+ else:
+ if 1 != vertices.shape[0] or 1 != vertices.shape[1]:
+ raise TypeError, \
+ "Shape of argument 'vertices' must be (1, 1) for 0-D cell."
# basis
basis = spatialdata.utils.simplearray.objAsSimpleArray(basis)
@@ -548,12 +553,19 @@
raise TypeError, \
"Argument 'basisDeriv' must be a contiguous, 3-D array " \
"of type double."
- if numQuadPts != basisDeriv.shape[0] or \
- numBasis != basisDeriv.shape[1] or \
- cellDim != basisDeriv.shape[2]:
- raise TypeError, \
- "Shape of argument 'basisDeriv' must be (numQuadPts, " \
- "numBasis, cellDim)."
+ if cellDim > 0:
+ if numQuadPts != basisDeriv.shape[0] or \
+ numBasis != basisDeriv.shape[1] or \
+ cellDim != basisDeriv.shape[2]:
+ raise TypeError, \
+ "Shape of argument 'basisDeriv' must be (numQuadPts, " \
+ "numBasis, cellDim)."
+ else:
+ if 1 != basisDeriv.shape[0] or \
+ 1 != basisDeriv.shape[1] or \
+ 1 != basisDeriv.shape[2]:
+ raise TypeError, \
+ "Shape of argument 'basisDeriv' must be (1, 1, 1) for 0-D cell."
# quadPts
quadPts = spatialdata.utils.simplearray.objAsSimpleArray(quadPts)
@@ -562,9 +574,14 @@
raise TypeError, \
"Argument 'quadPts' must be a contiguous, 2-D array " \
"of type double."
- if numQuadPts != quadPts.shape[0] or cellDim != quadPts.shape[1]:
- raise TypeError, \
- "Shape of argument 'quadPts' must be (numQuadPts, cellDim)."
+ if cellDim > 0:
+ if numQuadPts != quadPts.shape[0] or cellDim != quadPts.shape[1]:
+ raise TypeError, \
+ "Shape of argument 'quadPts' must be (numQuadPts, cellDim)."
+ else:
+ if 1 != quadPts.shape[0] or 1 != quadPts.shape[1]:
+ raise TypeError, \
+ "Shape of argument 'quadPts' must be (1, 1) for 0-D cell."
# quadWts
quadWts = spatialdata.utils.simplearray.objAsSimpleArray(quadWts)
Modified: short/3D/PyLith/trunk/pylith/faults/EqKinSrc.py
===================================================================
--- short/3D/PyLith/trunk/pylith/faults/EqKinSrc.py 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/pylith/faults/EqKinSrc.py 2007-06-12 21:02:27 UTC (rev 7173)
@@ -84,7 +84,7 @@
Setup members using inventory.
"""
Component._configure(self)
- slipfn = self.inventory.slipfn
+ self.slipfn = self.inventory.slipfn
return
Modified: short/3D/PyLith/trunk/pylith/faults/Fault.py
===================================================================
--- short/3D/PyLith/trunk/pylith/faults/Fault.py 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/pylith/faults/Fault.py 2007-06-12 21:02:27 UTC (rev 7173)
@@ -30,7 +30,7 @@
msg = "Up-direction must be a 3 component vector (list)."
if not isinstance(value, list):
raise ValueError(msg)
- if 3 != len(list):
+ if 3 != len(value):
raise ValueError(msg)
try:
nums = map(float, value)
@@ -63,7 +63,7 @@
## \b Properties
## @li \b id Fault identifier
## @li \b name Name of fault
- ## @li \b up-dir Up-dip or up direction
+ ## @li \b up_dir Up-dip or up direction
## (perpendicular to along-strike and not collinear with fault normal)
##
## \b Facilities
@@ -78,7 +78,7 @@
label = pyre.inventory.str("label", default="")
label.meta['tip'] = "Name of material."
- upDir = pyre.inventory.list("up-dir", default=[0, 0, 1],
+ upDir = pyre.inventory.list("up_dir", default=[0, 0, 1],
validator=validateUpDir)
upDir.meta['tip'] = "Up-dip or up direction " \
"(perpendicular to along-strike and not collinear " \
Modified: short/3D/PyLith/trunk/pylith/faults/FaultCohesiveKin.py
===================================================================
--- short/3D/PyLith/trunk/pylith/faults/FaultCohesiveKin.py 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/pylith/faults/FaultCohesiveKin.py 2007-06-12 21:02:27 UTC (rev 7173)
@@ -147,7 +147,7 @@
Setup members using inventory.
"""
FaultCohesive._configure(self)
- eqsrc = self.inventory.eqsrc
+ self.eqsrc = self.inventory.eqsrc
return
Modified: short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py 2007-06-12 21:02:27 UTC (rev 7173)
@@ -117,10 +117,11 @@
self.cellDim = 0
self.numCorners = 1
self.numQuadPts = 1
- self.basis = numpy.array([1.0])
- self.basisDeriv = numpy.array([1.0])
- self.quadPts = numpy.array([0.0])
+ self.basis = numpy.array([[1.0]])
+ self.basisDeriv = numpy.array([[[1.0]]])
+ self.quadPts = numpy.array([[0.0]])
self.quadWts = numpy.array([1.0])
+ self.vertices = numpy.array([[0.0]])
self._info.line("Cell geometry: ")
self._info.line(self.geometry)
Modified: short/3D/PyLith/trunk/tests/1d/line2/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/Makefile.am 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/Makefile.am 2007-06-12 21:02:27 UTC (rev 7173)
@@ -20,11 +20,17 @@
noinst_DATA = \
bar.mesh \
axialextension.cfg \
- dispbc.spatialdb \
+ axialextension_disp.spatialdb \
+ dislocation.cfg \
+ dislocation_disp.spatialdb \
+ dislocation_slip.spatialdb \
+ dislocation_sliprate.spatialdb \
+ dislocation_sliptime.spatialdb \
matprops.spatialdb
noinst_TMP = \
- output.vtk
+ axialextension.vtk \
+ dislocation.vtk
TESTS_ENVIRONMENT = $(PYTHON)
Modified: short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg 2007-06-12 21:02:27 UTC (rev 7173)
@@ -57,10 +57,16 @@
id = 10
label = end points
db.label = Dirichlet BC
-db.iohandler.filename = dispbc.spatialdb
+db.iohandler.filename = axialextension_disp.spatialdb
# ----------------------------------------------------------------------
# PETSc
# ----------------------------------------------------------------------
[pylithapp.petsc]
pc_type = jacobi
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output]
+filename = axialextension.vtk
Copied: short/3D/PyLith/trunk/tests/1d/line2/axialextension_disp.spatialdb (from rev 7165, short/3D/PyLith/trunk/tests/1d/line2/dispbc.spatialdb)
Modified: short/3D/PyLith/trunk/tests/1d/line2/bar.mesh
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/bar.mesh 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/bar.mesh 2007-06-12 21:02:27 UTC (rev 7173)
@@ -28,12 +28,20 @@
}
}
group = {
+ name = end points
type = vertices
- name = end points
count = 2
indices = {
0
4
}
}
+ group = {
+ name = fault
+ type = vertices
+ count = 1
+ indices = {
+ 2
+ }
+ }
}
Added: short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg 2007-06-12 21:02:27 UTC (rev 7173)
@@ -0,0 +1,91 @@
+# -*- Python -*-
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# ----------------------------------------------------------------------
+[pylithapp.journal.info]
+timedependent = 1
+explicit = 1
+implicit = 1
+petsc = 1
+solverlinear = 1
+meshioascii = 1
+homogeneous = 1
+implicitelasticity = 1
+quadrature1d = 1
+fiatsimplex = 1
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator]
+debug = 1
+
+[pylithapp.mesh_generator.importer]
+filename = bar.mesh
+coordsys.space_dim = 1
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+total_time = 0.0*s
+default_dt = 1.0*s
+dimension = 1
+formulation = pylith.problems.Implicit
+bc = pylith.bc.BCSingle
+interfaces = pylith.faults.SingleFault
+
+# ----------------------------------------------------------------------
+# materials
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.materials]
+material = pylith.materials.ElasticStrain1D
+
+[pylithapp.timedependent.materials.material]
+label = elastic material
+id = 1
+db.iohandler.filename = matprops.spatialdb
+quadrature = pylith.feassemble.quadrature.Quadrature1D
+quadrature.cell.shape = line
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.bc.bc]
+fixed_dof = [0]
+id = 10
+label = end points
+db.label = Dirichlet BC
+db.iohandler.filename = dislocation_disp.spatialdb
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces]
+fault = pylith.faults.FaultCohesiveKin
+
+[pylithapp.timedependent.interfaces.fault]
+id = 20
+label = fault
+quadrature = pylith.feassemble.quadrature.Quadrature0D
+quadrature.cell.shape = point
+
+[pylithapp.timedependent.interfaces.fault.eq_src.slip_function]
+slip.iohandler.filename = dislocation_slip.spatialdb
+slip_rate.iohandler.filename = dislocation_sliprate.spatialdb
+slip_time.iohandler.filename = dislocation_sliptime.spatialdb
+
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+pc_type = jacobi
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output]
+filename = dislocation.vtk
Added: short/3D/PyLith/trunk/tests/1d/line2/dislocation_disp.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation_disp.spatialdb 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation_disp.spatialdb 2007-06-12 21:02:27 UTC (rev 7173)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+ num-values = 1
+ value-names = dof-0
+ value-units = m
+ num-locs = 1
+ data-dim = 0
+ space-dim = 1
+ cs-data = cartesian {
+ to-meters = 1.0
+ space-dim = 1
+ }
+}
+0.0 0.0
Added: short/3D/PyLith/trunk/tests/1d/line2/dislocation_slip.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation_slip.spatialdb 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation_slip.spatialdb 2007-06-12 21:02:27 UTC (rev 7173)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+ num-values = 1
+ value-names = slip
+ value-units = m
+ num-locs = 1
+ data-dim = 0
+ space-dim = 1
+ cs-data = cartesian {
+ to-meters = 1.0
+ space-dim = 1
+ }
+}
+0.0 1.0
Added: short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliprate.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliprate.spatialdb 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliprate.spatialdb 2007-06-12 21:02:27 UTC (rev 7173)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+ num-values = 1
+ value-names = slip-rate
+ value-units = m/s
+ num-locs = 1
+ data-dim = 0
+ space-dim = 1
+ cs-data = cartesian {
+ to-meters = 1.0
+ space-dim = 1
+ }
+}
+0.0 1.0e+6
Added: short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliptime.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliptime.spatialdb 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation_sliptime.spatialdb 2007-06-12 21:02:27 UTC (rev 7173)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+ num-values = 1
+ value-names = slip-time
+ value-units = s
+ num-locs = 1
+ data-dim = 0
+ space-dim = 1
+ cs-data = cartesian {
+ to-meters = 1.0
+ space-dim = 1
+ }
+}
+0.0 -1.0
Deleted: short/3D/PyLith/trunk/tests/1d/line2/dispbc.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dispbc.spatialdb 2007-06-12 20:44:07 UTC (rev 7172)
+++ short/3D/PyLith/trunk/tests/1d/line2/dispbc.spatialdb 2007-06-12 21:02:27 UTC (rev 7173)
@@ -1,15 +0,0 @@
-#SPATIAL.ascii 1
-SimpleDB {
- num-values = 1
- value-names = dof-0
- value-units = m
- num-locs = 2
- data-dim = 1
- space-dim = 1
- cs-data = cartesian {
- to-meters = 1.0
- space-dim = 1
- }
-}
-0.0 -0.2
-4.0 +0.2
More information about the cig-commits
mailing list