[cig-commits] r13434 - in short/3D/PyLith/trunk/libsrc: bc faults feassemble

brad at geodynamics.org brad at geodynamics.org
Mon Dec 1 16:12:18 PST 2008


Author: brad
Date: 2008-12-01 16:12:17 -0800 (Mon, 01 Dec 2008)
New Revision: 13434

Modified:
   short/3D/PyLith/trunk/libsrc/bc/DirichletBoundary.cc
   short/3D/PyLith/trunk/libsrc/bc/DirichletPoints.cc
   short/3D/PyLith/trunk/libsrc/bc/Neumann.cc
   short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc
   short/3D/PyLith/trunk/libsrc/faults/ConstRateSlipFn.cc
   short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
   short/3D/PyLith/trunk/libsrc/faults/LiuCosSlipFn.cc
   short/3D/PyLith/trunk/libsrc/faults/StepSlipFn.cc
   short/3D/PyLith/trunk/libsrc/feassemble/IntegratorElasticity.cc
Log:
Switch to restrictPoint w/array argument.

Modified: short/3D/PyLith/trunk/libsrc/bc/DirichletBoundary.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/bc/DirichletBoundary.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/bc/DirichletBoundary.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -128,10 +128,8 @@
        v_iter != verticesEnd;
        ++v_iter) {
     // Get coordinates of vertex
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(*v_iter);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(*v_iter, 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     _normalizer->dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 				lengthScale);
     int err = _db->query(&queryValues[0], numFixedDOF, 
@@ -371,17 +369,15 @@
   } // if
 
   // dimensionalize values
-  double_array pointValues(fiberDim);
+  double_array values(fiberDim);
   for (Mesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter) {
     assert(fiberDim == field->getFiberDimension(*v_iter));
     assert(fiberDim == _buffer->getFiberDimension(*v_iter));
-    const real_section_type::value_type* values = 
-      field->restrictPoint(*v_iter);
-    for (int i=0; i < fiberDim; ++i)
-      pointValues[i] = _normalizer->dimensionalize(values[i], scale);
-    _buffer->updatePointAll(*v_iter, &pointValues[0]);
+    field->restrictPoint(*v_iter, &values[0], values.size());
+    _normalizer->dimensionalize(&values[0], values.size(), scale);
+    _buffer->updatePointAll(*v_iter, &values[0]);
   } // for
 
   return _buffer;

Modified: short/3D/PyLith/trunk/libsrc/bc/DirichletPoints.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/bc/DirichletPoints.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/bc/DirichletPoints.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -107,10 +107,8 @@
   double_array vCoordsGlobal(spaceDim);
   for (int iPoint=0; iPoint < numPoints; ++iPoint) {
     // Get coordinates of vertex
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(_points[iPoint]);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(_points[iPoint], 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     _normalizer->dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 				lengthScale);
     int err = _db->query(&queryValues[0], numFixedDOF, 

Modified: short/3D/PyLith/trunk/libsrc/bc/Neumann.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/bc/Neumann.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/bc/Neumann.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -401,17 +401,15 @@
   } // if
 
   // dimensionalize values
-  double_array cellValues(fiberDim);
+  double_array values(fiberDim);
   for (Mesh::label_sequence::iterator c_iter=cells->begin();
        c_iter != cellsEnd;
        ++c_iter) {
     assert(fiberDim == field->getFiberDimension(*c_iter));
     assert(fiberDim == _buffer->getFiberDimension(*c_iter));
-    const real_section_type::value_type* values = 
-      field->restrictPoint(*c_iter);
-    for (int i=0; i < fiberDim; ++i)
-      cellValues[i] = _normalizer->dimensionalize(values[i], scale);
-    _buffer->updatePointAll(*c_iter, &cellValues[0]);
+    field->restrictPoint(*c_iter, &values[0], values.size());
+    _normalizer->dimensionalize(&values[0], values.size(), scale);
+    _buffer->updatePointAll(*c_iter, &values[0]);
   } // for
 
   return _buffer;

Modified: short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/faults/BruneSlipFn.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -139,12 +139,8 @@
   for (Mesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter) {
-
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(*v_iter);
-    assert(0 != vCoordsNondim);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(*v_iter, 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     normalizer.dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 			      lengthScale);
         

Modified: short/3D/PyLith/trunk/libsrc/faults/ConstRateSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/ConstRateSlipFn.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/faults/ConstRateSlipFn.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -128,12 +128,8 @@
   for (Mesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter) {
-
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(*v_iter);
-    assert(0 != vCoordsNondim);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(*v_iter, 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     normalizer.dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 			      lengthScale);
     

Modified: short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -642,7 +642,7 @@
 
   if (0 != scale) {
     // dimensionalize values
-    double_array valuesGlobal(fiberDim);
+    double_array values(fiberDim);
     const ALE::Obj<Mesh::label_sequence>& vertices = _faultMesh->depthStratum(0);
     assert(!vertices.isNull());
     const Mesh::label_sequence::iterator verticesEnd = vertices->end();
@@ -650,11 +650,9 @@
 	 v_iter != verticesEnd;
 	 ++v_iter) {
       assert(fiberDim == _bufferTmp->getFiberDimension(*v_iter));
-      const real_section_type::value_type* valuesNondim = 
-	_bufferTmp->restrictPoint(*v_iter);
-      for (int i=0; i < fiberDim; ++i)
-	valuesGlobal[i] = _normalizer->dimensionalize(valuesNondim[i], scale);
-      _bufferTmp->updatePointAll(*v_iter, &valuesGlobal[0]);
+      _bufferTmp->restrictPoint(*v_iter, &values[0], values.size());
+      _normalizer->dimensionalize(&values[0], values.size(), scale);
+      _bufferTmp->updatePointAll(*v_iter, &values[0]);
     } // for
   } // if
 
@@ -882,22 +880,24 @@
 
   assert(0 != _normalizer);
   const double pressureScale = _normalizer->pressureScale();
+  const double lengthScale = _normalizer->lengthScale();
 
   double_array matprops(numStiffnessVals);
+  double_array vCoords(spaceDim);
   int count = 0;
+  
   for (SubMesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter, ++count) {
-    const real_section_type::value_type* vertexCoords = 
-      coordinates->restrictPoint(*v_iter);
-    assert(0 != vertexCoords);
-    int err = matDB->query(&matprops[0], numStiffnessVals, vertexCoords, 
-			   spaceDim, cs);
+    coordinates->restrictPoint(*v_iter, &vCoords[0], vCoords.size());
+    _normalizer->dimensionalize(&vCoords[0], vCoords.size(), lengthScale);
+    int err = matDB->query(&matprops[0], numStiffnessVals, &vCoords[0], 
+			   vCoords.size(), cs);
     if (err) {
       std::ostringstream msg;
       msg << "Could not find material properties at (";
       for (int i=0; i < spaceDim; ++i)
-	msg << "  " << vertexCoords[i];
+	msg << "  " << vCoords[i];
       msg << ") using spatial database " << matDB->label() << ".";
       throw std::runtime_error(msg.str());
     } // if

Modified: short/3D/PyLith/trunk/libsrc/faults/LiuCosSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/LiuCosSlipFn.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/faults/LiuCosSlipFn.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -137,12 +137,8 @@
   for (Mesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter) {
-
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(*v_iter);
-    assert(0 != vCoordsNondim);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(*v_iter, 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     normalizer.dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 			      lengthScale);
         

Modified: short/3D/PyLith/trunk/libsrc/faults/StepSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/StepSlipFn.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/faults/StepSlipFn.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -126,12 +126,8 @@
   for (Mesh::label_sequence::iterator v_iter=vertices->begin();
        v_iter != verticesEnd;
        ++v_iter) {
-
-    const real_section_type::value_type* vCoordsNondim = 
-      coordinates->restrictPoint(*v_iter);
-    assert(0 != vCoordsNondim);
-    for (int i=0; i < spaceDim; ++i)
-      vCoordsGlobal[i] = vCoordsNondim[i];
+    coordinates->restrictPoint(*v_iter, 
+			       &vCoordsGlobal[0], vCoordsGlobal.size());
     normalizer.dimensionalize(&vCoordsGlobal[0], vCoordsGlobal.size(),
 			      lengthScale);
         

Modified: short/3D/PyLith/trunk/libsrc/feassemble/IntegratorElasticity.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/IntegratorElasticity.cc	2008-12-01 23:33:58 UTC (rev 13433)
+++ short/3D/PyLith/trunk/libsrc/feassemble/IntegratorElasticity.cc	2008-12-02 00:12:17 UTC (rev 13434)
@@ -412,10 +412,7 @@
   for (Mesh::label_sequence::iterator c_iter=cells->begin();
        c_iter != cellsEnd;
        ++c_iter) {
-    const real_section_type::value_type* strainVals = 
-      (*field)->restrictPoint(*c_iter);
-    memcpy(&totalStrain[0], strainVals, sizeof(double)*totalStrain.size());
-
+    (*field)->restrictPoint(*c_iter, &totalStrain[0], totalStrain.size());
     _material->getPropertiesCell(*c_iter, numQuadPts);
     const double_array& stress = _material->calcStress(totalStrain);
     (*field)->updatePoint(*c_iter, &stress[0]);	



More information about the CIG-COMMITS mailing list