[cig-commits] r17144 - short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble

brad at geodynamics.org brad at geodynamics.org
Mon Aug 30 08:48:10 PDT 2010


Author: brad
Date: 2010-08-30 08:48:10 -0700 (Mon, 30 Aug 2010)
New Revision: 17144

Modified:
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryHex3D.cc
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine1D.cc
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine2D.cc
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine3D.cc
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad2D.cc
   short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad3D.cc
Log:
Adjust checking to allow quadratic cells.

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryHex3D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryHex3D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryHex3D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -172,7 +172,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear hex
+	  ((numCorners()+19)*spaceDim() == vertices.size()) ); // quadratic hex
   assert(cellDim() == location.size());
   assert(spaceDim()*cellDim() == jacobian->size());
 

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine1D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine1D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine1D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -99,7 +99,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear edge
+	  ((numCorners()+1)*spaceDim() == vertices.size()) ); // quadratic edge
   assert(spaceDim()*cellDim() == jacobian->size());
 
   const double x0 = vertices[0];

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine2D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine2D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine2D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -106,7 +106,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear
+	  ((numCorners()+1)*spaceDim() == vertices.size()) ); // quadratic
   assert(spaceDim()*cellDim() == jacobian->size());
 
   const double x0 = vertices[0];

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine3D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine3D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryLine3D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -110,7 +110,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear edge
+	  ((numCorners()+1)*spaceDim() == vertices.size()) ); // quadratic edge
   assert(spaceDim()*cellDim() == jacobian->size());
 
   const double x0 = vertices[0];

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad2D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad2D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad2D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -121,7 +121,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear quad
+	  ((numCorners()+5)*spaceDim() == vertices.size()) ); // quadratic quad
   assert(cellDim() == location.size());
   assert(spaceDim()*cellDim() == jacobian->size());
   

Modified: short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad3D.cc
===================================================================
--- short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad3D.cc	2010-08-29 22:49:17 UTC (rev 17143)
+++ short/3D/PyLith/branches/v1.5-stable/libsrc/feassemble/GeometryQuad3D.cc	2010-08-30 15:48:10 UTC (rev 17144)
@@ -131,7 +131,8 @@
   assert(0 != jacobian);
   assert(0 != det);
 
-  assert(numCorners()*spaceDim() == vertices.size());
+  assert( (numCorners()*spaceDim() == vertices.size()) || // linear quad
+	  ((numCorners()+5)*spaceDim() == vertices.size()) ); // quadratic quad
   assert(cellDim() == location.size());
   assert(spaceDim()*cellDim() == jacobian->size());
   



More information about the CIG-COMMITS mailing list