[cig-commits] r13021 - short/3D/PyLith/trunk/libsrc/faults
knepley at geodynamics.org
knepley at geodynamics.org
Mon Oct 13 17:42:02 PDT 2008
Author: knepley
Date: 2008-10-13 17:42:01 -0700 (Mon, 13 Oct 2008)
New Revision: 13021
Modified:
short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc
Log:
Fixed renumbering of fault (had to convert local numbers to global numbers)
Modified: short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc 2008-10-12 18:12:32 UTC (rev 13020)
+++ short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc 2008-10-14 00:42:01 UTC (rev 13021)
@@ -951,9 +951,19 @@
// Can I figure this out in a nicer way?
Obj<Mesh::send_overlap_type> sendParallelMeshOverlap = (*ifault)->getSendOverlap();
Obj<Mesh::recv_overlap_type> recvParallelMeshOverlap = (*ifault)->getRecvOverlap();
- ALE::SetFromMap<Mesh::renumbering_type> globalPoints(fRenumbering);
- ALE::OverlapBuilder<>::constructOverlap(globalPoints, fRenumbering, sendParallelMeshOverlap, recvParallelMeshOverlap);
+ // Must process the renumbering local --> fault to global --> fault
+ Mesh::renumbering_type& renumbering = mesh->getRenumbering();
+ Mesh::renumbering_type gRenumbering;
+
+ for(Mesh::renumbering_type::const_iterator r_iter = renumbering.begin(); r_iter != renumbering.end(); ++r_iter) {
+ if (fRenumbering.find(r_iter->second) != fRenumbering.end()) {
+ gRenumbering[r_iter->first] = fRenumbering[r_iter->second];
+ }
+ }
+
+ ALE::SetFromMap<Mesh::renumbering_type> globalPoints(gRenumbering);
+ ALE::OverlapBuilder<>::constructOverlap(globalPoints, gRenumbering, sendParallelMeshOverlap, recvParallelMeshOverlap);
(*ifault)->setCalculatedOverlap(true);
sendParallelMeshOverlap->view("Send parallel fault overlap");
recvParallelMeshOverlap->view("Recv parallel fault overlap");
More information about the cig-commits
mailing list