[cig-commits] r21331 - short/3D/PyLith/trunk/unittests/libtests/bc
knepley at geodynamics.org
knepley at geodynamics.org
Mon Feb 4 18:41:37 PST 2013
Author: knepley
Date: 2013-02-04 18:41:37 -0800 (Mon, 04 Feb 2013)
New Revision: 21331
Modified:
short/3D/PyLith/trunk/unittests/libtests/bc/TestAbsorbingDampers.cc
short/3D/PyLith/trunk/unittests/libtests/bc/TestNeumann.cc
Log:
Use closure insted of cone
Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestAbsorbingDampers.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestAbsorbingDampers.cc 2013-02-04 23:42:56 UTC (rev 21330)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestAbsorbingDampers.cc 2013-02-05 02:41:37 UTC (rev 21331)
@@ -124,16 +124,21 @@
PetscInt dp = 0;
for(PetscInt c = cStart; c < cEnd; ++c) {
- const PetscInt *cone;
- PetscInt numCorners;
+ PetscInt *closure = PETSC_NULL;
+ PetscInt closureSize, numCorners = 0;
- // Assume non-interpolated mesh
- err = DMPlexGetConeSize(subMesh, c, &numCorners);CHECK_PETSC_ERROR(err);
+ err = DMPlexGetTransitiveClosure(subMesh, c, PETSC_TRUE, &closureSize, &closure);CHECK_PETSC_ERROR(err);
+ for(PetscInt p = 0; p < closureSize*2; p += 2) {
+ const PetscInt point = closure[p];
+ if ((point >= vStart) && (point < vEnd)) {
+ closure[numCorners++] = point;
+ }
+ }
CPPUNIT_ASSERT_EQUAL(_data->numCorners, numCorners);
- err = DMPlexGetCone(subMesh, c, &cone);CHECK_PETSC_ERROR(err);
for(PetscInt p = 0; p < numCorners; ++p, ++dp) {
- CPPUNIT_ASSERT_EQUAL(_data->cells[dp], cone[p]);
+ CPPUNIT_ASSERT_EQUAL(_data->cells[dp], closure[p]);
}
+ err = DMPlexRestoreTransitiveClosure(subMesh, c, PETSC_TRUE, &closureSize, &closure);CHECK_PETSC_ERROR(err);
} // for
// Check damping constants
Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestNeumann.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestNeumann.cc 2013-02-04 23:42:56 UTC (rev 21330)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestNeumann.cc 2013-02-05 02:41:37 UTC (rev 21331)
@@ -179,15 +179,21 @@
PetscInt dp = 0;
for(PetscInt c = cStart; c < cEnd; ++c) {
- const PetscInt *cone;
- PetscInt numCorners;
+ PetscInt *closure = PETSC_NULL;
+ PetscInt closureSize, numCorners = 0;
- err = DMPlexGetConeSize(subMesh, c, &numCorners);CHECK_PETSC_ERROR(err);
- err = DMPlexGetCone(subMesh, c, &cone);CHECK_PETSC_ERROR(err);
+ err = DMPlexGetTransitiveClosure(subMesh, c, PETSC_TRUE, &closureSize, &closure);CHECK_PETSC_ERROR(err);
+ for(PetscInt p = 0; p < closureSize*2; p += 2) {
+ const PetscInt point = closure[p];
+ if ((point >= vStart) && (point < vEnd)) {
+ closure[numCorners++] = point;
+ }
+ }
CPPUNIT_ASSERT_EQUAL(_data->numCorners, numCorners);
for(PetscInt p = 0; p < numCorners; ++p, ++dp) {
- CPPUNIT_ASSERT_EQUAL(_data->cells[dp], cone[p]);
+ CPPUNIT_ASSERT_EQUAL(_data->cells[dp], closure[p]);
}
+ err = DMPlexRestoreTransitiveClosure(subMesh, c, PETSC_TRUE, &closureSize, &closure);CHECK_PETSC_ERROR(err);
} // for
// Check traction values
More information about the CIG-COMMITS
mailing list