[cig-commits] r15313 - in short/3D/PyLith/trunk: libsrc/faults pylith/problems unittests/libtests/faults unittests/libtests/faults/data
brad at geodynamics.org
brad at geodynamics.org
Tue Jun 16 23:07:52 PDT 2009
Author: brad
Date: 2009-06-16 23:07:50 -0700 (Tue, 16 Jun 2009)
New Revision: 15313
Modified:
short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
short/3D/PyLith/trunk/pylith/problems/Implicit.py
short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataHex8.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataLine2.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4e.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4e.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4f.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3d.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc
short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc
Log:
Fixed bugs in integrating residual for fault. Orientation for missing term was transposed and integrateResidualAssembled needed updateAllPoint not updatePoint. Calculation of fault orientation was okay. Bugs offset each other (for solution) in linear solves. Updated unit tests to include missing term.
Modified: short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -246,7 +246,7 @@
double_array orientationCell(numConstraintVert*orientationSize);
double_array dispTCell(numCorners*spaceDim);
double_array dispTIncrCell(numCorners*spaceDim);
- double_array dispTpdtCell(numBasis*spaceDim);
+ double_array dispTpdtCell(numCorners*spaceDim);
double_array residualCell(numCorners*spaceDim);
// Tributary area for the current for each vertex.
@@ -292,14 +292,12 @@
dispTCell.size(),
&dispTCell[0]);
-#if 0 // :TODO: Need to use solution
topology::Field<topology::Mesh>& dispTIncr = fields->get("dispIncr(t->t+dt)");
const ALE::Obj<RealSection>& dispTIncrSection = dispTIncr.section();
assert(!dispTIncrSection.isNull());
topology::Mesh::RestrictVisitor dispTIncrVisitor(*dispTIncrSection,
dispTIncrCell.size(),
&dispTIncrCell[0]);
-#endif
const ALE::Obj<RealSection>& residualSection = residual.section();
topology::Mesh::UpdateAddVisitor residualVisitor(*residualSection,
@@ -353,11 +351,9 @@
dispTVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTVisitor);
-#if 0 // :TODO: need to use solution
// Get dispIncr(t) at cohesive cell's vertices.
dispTIncrVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTIncrVisitor);
-#endif
// Compute current estimate of displacement at time t+dt using
// solution increment.
@@ -382,7 +378,7 @@
for (int iDim=0; iDim < spaceDim; ++iDim) {
for (int kDim=0; kDim < spaceDim; ++kDim)
residualCell[indexI*spaceDim+iDim] -=
- dispTCell[indexK*spaceDim+kDim] *
+ dispTpdtCell[indexK*spaceDim+kDim] *
-orientationVertex[kDim*spaceDim+iDim] * wt;
} // for
@@ -390,33 +386,31 @@
for (int jDim=0; jDim < spaceDim; ++jDim) {
for (int kDim=0; kDim < spaceDim; ++kDim)
residualCell[indexJ*spaceDim+jDim] -=
- dispTCell[indexK*spaceDim+kDim] *
+ dispTpdtCell[indexK*spaceDim+kDim] *
orientationVertex[kDim*spaceDim+jDim] * wt;
} // for
-
-#if 0 // :TODO: Is this a missing -C u term??
+
// Entries associated with relative displacements between node i
// and node j for constraint node k
for (int kDim=0; kDim < spaceDim; ++kDim) {
- for (int iDim=0; iDim < spaceDim; ++iDim)
+ for (int iDim=0; iDim < spaceDim; ++iDim)
residualCell[indexK*spaceDim+kDim] -=
- (dispTpdtCell[indexI*spaceDim+iDim] -
- dispTpdtCell[indexJ*spaceDim+iDim]) *
+ (dispTpdtCell[indexJ*spaceDim+iDim] -
+ dispTpdtCell[indexI*spaceDim+iDim]) *
orientationVertex[kDim*spaceDim+iDim] * wt;
} // for
-#endif
} // for
#if 0 // DEBUGGING
std::cout << "Updating fault residual for cell " << *c_iter << std::endl;
- for(int i = 0; i < numConstraintVert; ++i) {
- std::cout << " stif["<<i<<"]: " << stiffnessCell[i] << std::endl;
+ for(int i = 0; i < numCorners*spaceDim; ++i) {
+ std::cout << " dispTpdt["<<i<<"]: " << dispTpdtCell[i] << std::endl;
}
- for(int i = 0; i < numConstraintVert*spaceDim; ++i) {
- std::cout << " slip["<<i<<"]: " << cellSlip[i] << std::endl;
+ for(int i = 0; i < numCorners*spaceDim; ++i) {
+ std::cout << " dispT["<<i<<"]: " << dispTCell[i] << std::endl;
}
for(int i = 0; i < numCorners*spaceDim; ++i) {
- std::cout << " soln["<<i<<"]: " << dispTpdtCell[i] << std::endl;
+ std::cout << " dispIncr["<<i<<"]: " << dispTIncrCell[i] << std::endl;
}
for(int i = 0; i < numCorners*spaceDim; ++i) {
std::cout << " v["<<i<<"]: " << residualCell[i] << std::endl;
@@ -452,29 +446,16 @@
topology::Field<topology::SubMesh>& slip = _fields->get("slip");
slip.zero();
- if (!_useSolnIncr) {
- // Compute slip field at current time step
- const srcs_type::const_iterator srcsEnd = _eqSrcs.end();
- for (srcs_type::iterator s_iter=_eqSrcs.begin();
- s_iter != srcsEnd;
- ++s_iter) {
- EqKinSrc* src = s_iter->second;
- assert(0 != src);
- if (t >= src->originTime())
- src->slip(&slip, t);
- } // for
- } else {
- // Compute increment of slip field at current time step
- const srcs_type::const_iterator srcsEnd = _eqSrcs.end();
- for (srcs_type::iterator s_iter=_eqSrcs.begin();
- s_iter != srcsEnd;
- ++s_iter) {
- EqKinSrc* src = s_iter->second;
- assert(0 != src);
- if (t >= src->originTime())
- src->slipIncr(&slip, t-_dt, t);
- } // for
- } // else
+ // Compute slip field at current time step
+ const srcs_type::const_iterator srcsEnd = _eqSrcs.end();
+ for (srcs_type::iterator s_iter=_eqSrcs.begin();
+ s_iter != srcsEnd;
+ ++s_iter) {
+ EqKinSrc* src = s_iter->second;
+ assert(0 != src);
+ if (t >= src->originTime())
+ src->slip(&slip, t);
+ } // for
const int spaceDim = _quadrature->spaceDim();
@@ -498,6 +479,7 @@
faultSieveMesh->getRenumbering();
const SieveSubMesh::renumbering_type::const_iterator renumberingEnd =
renumbering.end();
+
for (SieveSubMesh::label_sequence::iterator v_iter=verticesBegin;
v_iter != verticesEnd;
++v_iter)
@@ -508,7 +490,7 @@
assert(spaceDim == slipSection->getFiberDimension(vertexFault));
assert(spaceDim == residualSection->getFiberDimension(vertexMesh));
assert(0 != slipVertex);
- residualSection->updatePoint(vertexMesh, slipVertex);
+ residualSection->updateAddPoint(vertexMesh, slipVertex);
} // if
} // integrateResidualAssembled
@@ -1006,26 +988,30 @@
assert(3 == spaceDim);
double_array normalDirVertex(&orientationVertex[6], 3);
- const double dot =
+ const double normalDot =
normalDir[0]*normalDirVertex[0] +
normalDir[1]*normalDirVertex[1] +
normalDir[2]*normalDirVertex[2];
- if (dot < 0.0)
+
+ const int istrike = 0;
+ const int idip = 3;
+ const int inormal = 6;
+ if (normalDot < 0.0) {
+ // Flip dip direction
for (SieveSubMesh::label_sequence::iterator v_iter=verticesBegin;
v_iter != verticesEnd;
++v_iter) {
orientationSection->restrictPoint(*v_iter, &orientationVertex[0],
orientationVertex.size());
assert(9 == orientationSection->getFiberDimension(*v_iter));
- // Flip up-dip direction
- for (int iDim=3; iDim < 6; ++iDim)
- orientationVertex[iDim] = -orientationVertex[iDim];
+ for (int iDim=0; iDim < 3; ++iDim) // flip dip
+ orientationVertex[idip+iDim] *= -1.0;
// Update direction
orientationSection->updatePoint(*v_iter, &orientationVertex[0]);
} // for
-
- PetscLogFlops(5 + count * 3);
+ PetscLogFlops(5 + count * 3);
+ } // if
} // if
//orientation.view("ORIENTATION");
Modified: short/3D/PyLith/trunk/pylith/problems/Implicit.py
===================================================================
--- short/3D/PyLith/trunk/pylith/problems/Implicit.py 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/pylith/problems/Implicit.py 2009-06-17 06:07:50 UTC (rev 15313)
@@ -191,6 +191,12 @@
residual = self.fields.get("residual")
self._eventLogger.stagePush("Solve")
self.solver.solve(dispIncr, self.jacobian, residual)
+
+ # DEBUGGING
+ # Verify solution makes residual 0
+ #self._reformResidual(t+dt, dt)
+ #residual.view("RESIDUAL")
+
self._eventLogger.stagePop()
return
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -299,19 +299,12 @@
const double* vals = residualSection->restrictPoint(*v_iter);
CPPUNIT_ASSERT(0 != vals);
- const bool isConstraint = _isConstraintVertex(*v_iter);
- if (!isConstraint) {
- for (int i=0; i < fiberDimE; ++i) {
- const int index = iVertex*spaceDim+i;
- const double valE = valsE[index];
- if (fabs(valE) > tolerance)
- CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[i]/valE, tolerance);
- else
- CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
- } // for
- } else {
- const double valE = 0.0; // no contribution
- for (int i=0; i < fiberDimE; ++i)
+ for (int i=0; i < fiberDimE; ++i) {
+ const int index = iVertex*spaceDim+i;
+ const double valE = valsE[index];
+ if (fabs(valE) > tolerance)
+ CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[i]/valE, tolerance);
+ else
CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
} // for
} // for
@@ -938,7 +931,8 @@
// Setup fields
fields->add("residual", "residual");
fields->add("disp(t)", "displacement");
- fields->solutionName("disp(t)");
+ fields->add("dispIncr(t->t+dt)", "displacement_increment");
+ fields->solutionName("dispIncr(t->t+dt)");
const int spaceDim = _data->spaceDim;
topology::Field<topology::Mesh>& residual = fields->get("residual");
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataHex8.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataHex8.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataHex8.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -109,18 +109,18 @@
4.2, 6.2, 8.2,
4.3, 6.3, 8.3,
4.4, 6.4, 8.4,
- 4.5, 6.5, 8.5,
- 4.6, 6.6, 8.6,
- 4.7, 6.7, 8.7,
- 4.8, 6.8, 8.8,
+ 4.5, 6.5, 8.5, // 6
+ 4.6, 6.6, 8.6, // 7
+ 4.7, 6.7, 8.7, // 8
+ 4.8, 6.8, 8.8, // 9
4.9, 6.9, 8.9,
4.0, 6.0, 8.0,
5.1, 7.1, 9.1,
5.2, 7.2, 9.2,
- 5.3, 7.3, 9.3,
- 5.5, 7.5, 9.5,
- 5.7, 7.7, 9.7,
- 5.9, 7.9, 9.9,
+ 5.3, 7.3, 9.3, // 14
+ 5.5, 7.5, 9.5, // 15
+ 5.7, 7.7, 9.7, // 16
+ 5.9, 7.9, 9.9, // 17
5.4, 7.4, 9.4, // 18
5.6, 7.6, 9.6, // 19
5.8, 7.8, 9.8, // 20
@@ -188,10 +188,10 @@
+9.6,+5.6,+7.6, // 15
+9.8,+5.8,+7.8, // 16
+9.0,+5.0,+7.0, // 17
- 0.01271057284, -0.00386843521, 0.00055263360, // 18 (constraint)
- 0.01411467401, -0.00470489134, 0.00117622283, // 19 (constraint)
- 0.01544188788, -0.00555907964, 0.00185302655, // 20 (constraint)
- 0.01656103940, -0.00636963054, 0.00254785222, // 21 (constraint)
+ 0.8, 0.8, 0.8, // 18 (constraint)
+ 0.9, 0.9, 0.9, // 19 (constraint)
+ 1.0, 1.0, 1.0, // 20 (constraint)
+ 1.1, 1.1, 1.1, // 21 (constraint)
};
const double pylith::faults::CohesiveKinDataHex8::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataLine2.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataLine2.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataLine2.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -101,7 +101,7 @@
7.5,
0.0,
-7.5,
- 0.01257664078
+ -0.2,
};
const double pylith::faults::CohesiveKinDataLine2::_valsResidual[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -95,12 +95,12 @@
const double pylith::faults::CohesiveKinDataQuad4::_fieldT[] = {
8.1, 9.1,
8.2, 9.2,
- 8.3, 9.3,
- 8.4, 9.4,
+ 8.3, 9.3, // 4
+ 8.4, 9.4, // 5
8.5, 9.5,
8.6, 9.6,
- 8.7, 9.7,
- 8.9, 9.9,
+ 8.7, 9.7, // 8
+ 8.9, 9.9, // 9
8.8, 9.8, // 10
8.0, 9.0, // 11
};
@@ -147,8 +147,8 @@
0.0, 0.0,
-9.8, -8.8, // 8
-9.0, -8.0, // 9
- 0.01401378019, 0.00116781502, // 10
- 0.01257113624, 0.00054657114, // 11
+ -0.4, -0.4, // 10
+ -0.5, -0.5, // 11
};
const double pylith::faults::CohesiveKinDataQuad4::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4e.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4e.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataQuad4e.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -114,16 +114,16 @@
const double pylith::faults::CohesiveKinDataQuad4e::_fieldT[] = {
3.1, 5.1,
3.2, 5.2,
- 3.3, 5.3,
- 3.4, 5.4,
+ 3.3, 5.3, // 6
+ 3.4, 5.4, // 7
3.5, 5.5,
3.6, 5.6,
3.7, 5.7,
- 3.8, 5.8,
+ 3.8, 5.8, // 11
3.9, 5.9,
- 3.0, 5.0,
- 4.2, 6.2,
- 4.4, 6.4,
+ 3.0, 5.0, // 13
+ 4.2, 6.2, // 14
+ 4.4, 6.4, // 15
4.1, 6.1, // 16
4.3, 6.3, // 17
4.5, 6.5, // 18
@@ -183,9 +183,9 @@
+6.1, +4.1, // 13
+6.3, +4.3, // 15
+6.5, +4.5, // 17
- 0.01401378019, 0.00116781502, // 16
- 0.01257113624, 0.00054657114, // 17
- 0.01543608228, 0.00185232987, // 18
+ -0.3, -0.3, // 16
+ 0.8, 0.8, // 17
+ 0.6, 0.6, // 18
};
const double pylith::faults::CohesiveKinDataQuad4e::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -22,7 +22,7 @@
*
* Cells are 0-1,10, vertices are 2-9.
*
- * 2 3,4,5 7,8,19 6
+ * 2 3,4,5 7,8,9 6
* 10,11,12
* ^^^^^^^^^^^^ Cohesive element in x-y plane.
*/
@@ -82,13 +82,13 @@
const double pylith::faults::CohesiveKinDataTet4::_fieldT[] = {
7.1, 8.1, 9.1,
- 7.2, 8.2, 9.2,
- 7.3, 8.3, 9.3,
- 7.4, 8.4, 9.4,
+ 7.2, 8.2, 9.2, // 3
+ 7.3, 8.3, 9.3, // 4
+ 7.4, 8.4, 9.4, // 5
7.5, 8.5, 9.5,
- 7.6, 8.6, 9.6,
- 7.8, 8.8, 9.8,
- 7.0, 8.0, 9.0,
+ 7.6, 8.6, 9.6, // 7
+ 7.8, 8.8, 9.8, // 8
+ 7.0, 8.0, 9.0, // 9
7.7, 8.7, 9.7, // 10
7.9, 8.9, 9.9, // 11
7.1, 8.1, 9.1, // 12
@@ -139,9 +139,9 @@
-9.7, -7.7, -8.7, // 7
-9.9, -7.9, -8.9, // 4
-9.1, -7.1, -8.1, // 5
- 0.01271057284, -0.00386843521, 0.00055263360, // 10
- 0.01411467401, -0.00470489134, 0.00117622283, // 11
- 0.01544188788, -0.00555907964, 0.00185302655, // 12
+ -0.4, -0.4, -0.4, // 10
+ -0.5, -0.5, -0.5, // 11
+ 0.4, 0.4, 0.4, // 12
};
const double pylith::faults::CohesiveKinDataTet4::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4e.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4e.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4e.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -82,15 +82,15 @@
const double pylith::faults::CohesiveKinDataTet4e::_fieldT[] = {
3.1, 5.1, 7.1,
- 3.2, 5.2, 7.2,
- 3.3, 5.3, 7.3,
- 3.4, 5.4, 7.4,
- 3.5, 5.5, 7.5,
+ 3.2, 5.2, 7.2, // 5
+ 3.3, 5.3, 7.3, // 6
+ 3.4, 5.4, 7.4, // 7
+ 3.5, 5.5, 7.5, // 8
3.6, 5.6, 7.6,
- 3.7, 5.7, 7.7,
- 3.9, 5.9, 7.9,
- 4.1, 6.1, 8.1,
- 4.3, 6.3, 8.3,
+ 3.7, 5.7, 7.7, // 10
+ 3.9, 5.9, 7.9, // 11
+ 4.1, 6.1, 8.1, // 12
+ 4.3, 6.3, 8.3, // 13
3.8, 5.8, 7.8, // 14
3.0, 5.0, 7.0, // 15
4.2, 6.2, 8.2, // 16
@@ -149,10 +149,10 @@
-7.0, -3.0, -5.0, // 11
-8.2, -4.2, -6.2, // 12
-8.4, -4.4, -6.4, // 13
- 0.01271057284, -0.00386843521, 0.00055263360, // 14
- 0.01411467401, -0.00470489134, 0.00117622283, // 15
- 0.01544188788, -0.00555907964, 0.00185302655, // 16
- 0.01656103940, -0.00636963054, 0.00254785222, // 17
+ -0.5, -0.5, -0.5, // 14
+ -0.6, -0.6, -0.6, // 15
+ -0.7, -0.7, -0.7, // 16
+ -0.8, -0.8, -0.8, // 17
};
const double pylith::faults::CohesiveKinDataTet4e::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4f.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4f.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTet4f.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -82,13 +82,13 @@
const double pylith::faults::CohesiveKinDataTet4f::_fieldT[] = {
7.1, 8.1, 9.1,
- 7.2, 8.2, 9.2,
- 7.3, 8.3, 9.3,
- 7.4, 8.4, 9.4,
+ 7.2, 8.2, 9.2, // 3
+ 7.3, 8.3, 9.3, // 4
+ 7.4, 8.4, 9.4, // 5
7.5, 8.5, 9.5,
- 7.6, 8.6, 9.6,
- 7.8, 8.8, 9.8,
- 7.0, 8.0, 9.0,
+ 7.6, 8.6, 9.6, // 7
+ 7.8, 8.8, 9.8, // 8
+ 7.0, 8.0, 9.0, // 9
7.7, 8.7, 9.7, // 10
7.9, 8.9, 9.9, // 11
7.1, 8.1, 9.1, // 12
@@ -139,9 +139,9 @@
+9.7, +7.7, +8.7, // 7
+9.9, +7.9, +8.9, // 8
+9.1, +7.1, +8.1, // 9
- 0.01271057284, -0.00386843521, 0.00055263360, // 10
- 0.01411467401, -0.00470489134, 0.00117622283, // 11
- 0.01544188788, -0.00555907964, 0.00185302655, // 12
+ 0.4, 0.4, 0.4, // 10
+ 0.5, 0.5, 0.5, // 11
+ -0.4, -0.4, -0.4, // 12
};
const double pylith::faults::CohesiveKinDataTet4f::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -97,11 +97,11 @@
const double pylith::faults::CohesiveKinDataTri3::_fieldT[] = {
8.1, 9.1,
- 8.2, 9.2,
- 8.3, 9.3,
+ 8.2, 9.2, // 3
+ 8.3, 9.3, // 4
8.4, 9.4,
- 8.5, 9.5,
- 8.7, 9.7,
+ 8.5, 9.5, // 6
+ 8.7, 9.7, // 7
8.6, 9.6, // 8
8.8, 9.8, // 9
};
@@ -144,8 +144,8 @@
0.0, 0.0,
+9.6, +8.6, // 6
+9.8, +8.8, // 7
- 0.01257113624, 0.00054657114, // 8
- 0.01401378019, 0.00116781502, // 9
+ 0.3, 0.3, // 8
+ 0.4, 0.4, // 9
};
const double pylith::faults::CohesiveKinDataTri3::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3d.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3d.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinDataTri3d.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -112,14 +112,14 @@
const double pylith::faults::CohesiveKinDataTri3d::_fieldT[] = {
6.1, 8.1,
- 6.2, 8.2,
- 6.3, 8.3,
+ 6.2, 8.2, // 5
+ 6.3, 8.3, // 6
6.4, 8.4,
- 6.5, 8.5,
+ 6.5, 8.5, // 8
6.6, 8.6,
- 6.7, 8.7,
- 6.9, 8.9,
- 7.1, 9.1,
+ 6.7, 8.7, // 10
+ 6.9, 8.9, // 11
+ 7.1, 9.1, // 12
6.8, 8.8, // 13
6.0, 8.0, // 14
7.2, 9.2, // 15
@@ -173,9 +173,9 @@
+1.4142135623730949, +11.030865786510143, // 10
+8.0, +6.0, // 11
-7.2, +9.2, // 12
- 0.01257113624, 0.00054657114, // 13
- 0.01401378019, 0.00116781502, // 14
- 0.01543608228, 0.00185232987, // 15
+ 0.0, +0.70710678118654757, // 13
+ 0.6, 0.6, // 14
+ -0.6, 0.6, // 15
};
const double pylith::faults::CohesiveKinDataTri3d::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -188,10 +188,10 @@
+9.6,+5.6,+7.6, // 15
+9.8,+5.8,+7.8, // 16
+9.0,+5.0,+7.0, // 17
- 0.02640548173, -0.00803645096, 0.00114806442, // 18 (constraint)
- 0.02731113725, -0.00910371242, 0.00227592810, // 19 (constraint)
- 0.02695149106, -0.00970253678, 0.00323417893, // 20 (constraint)
- 0.02466176975, -0.00948529606, 0.00379411842, // 21 (constraint)
+ 0.8, 0.8, 0.8, // 18 (constraint)
+ 0.9, 0.9, 0.9, // 19 (constraint)
+ 1.0, 1.0, 1.0, // 20 (constraint)
+ 1.1, 1.1, 1.1, // 21 (constraint)
};
const double pylith::faults::CohesiveKinSrcsDataHex8::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -101,7 +101,7 @@
7.5,
0.0,
-7.5,
- 0.02585951076
+ -0.2
};
const double pylith::faults::CohesiveKinSrcsDataLine2::_valsResidual[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -95,12 +95,12 @@
const double pylith::faults::CohesiveKinSrcsDataQuad4::_fieldT[] = {
8.1, 9.1,
8.2, 9.2,
- 8.3, 9.3,
- 8.4, 9.4,
+ 8.3, 9.3, // 4
+ 8.4, 9.4, // 5
8.5, 9.5,
8.6, 9.6,
- 8.7, 9.7,
- 8.9, 9.9,
+ 8.7, 9.7, // 8
+ 8.9, 9.9, // 9
8.8, 9.8, // 10
8.0, 9.0, // 11
};
@@ -147,8 +147,8 @@
0.0, 0.0,
-9.8, -8.8, // 8
-9.0, -8.0, // 9
- 0.02698044341, 0.00224837028, // 10
- 0.02583782954, 0.00112338389, // 11
+ -0.4, -0.4, // 10
+ -0.5, -0.5, // 11
};
const double pylith::faults::CohesiveKinSrcsDataQuad4::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -139,9 +139,9 @@
-9.7, -7.7, -8.7, // 7
-9.9, -7.9, -8.9, // 4
-9.1, -7.1, -8.1, // 5
- 0.02640548173, -0.00803645096, 0.00114806442, // 10
- 0.02731113725, -0.00910371242, 0.00227592810, // 11
- 0.02695149106, -0.00970253678, 0.00323417893, // 12
+ -0.4, -0.4, -0.4, // 10
+ -0.5, -0.5, -0.5, // 11
+ 0.4, 0.4, 0.4, // 12
};
const double pylith::faults::CohesiveKinSrcsDataTet4::_valsJacobian[] = {
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc 2009-06-17 05:08:41 UTC (rev 15312)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc 2009-06-17 06:07:50 UTC (rev 15313)
@@ -155,8 +155,8 @@
0.0, 0.0,
+9.6, +8.6, // 6
+9.8, +8.8, // 7
- 0.02583782954, 0.00112338389, // 8
- 0.02698044341, 0.00224837028, // 9
+ 0.3, 0.3, // 8
+ 0.4, 0.4, // 9
};
const double pylith::faults::CohesiveKinSrcsDataTri3::_valsJacobian[] = {
More information about the CIG-COMMITS
mailing list