[MOAB-dev] r5931 - in MOAB/trunk: test/parallel tools/mbcslam

iulian at mcs.anl.gov iulian at mcs.anl.gov
Fri Jan 11 10:26:50 CST 2013


Author: iulian
Date: 2013-01-11 10:26:50 -0600 (Fri, 11 Jan 2013)
New Revision: 5931

Modified:
   MOAB/trunk/test/parallel/par_intx_sph.cpp
   MOAB/trunk/tools/mbcslam/CslamUtils.cpp
   MOAB/trunk/tools/mbcslam/CslamUtils.hpp
   MOAB/trunk/tools/mbcslam/Intx2Mesh.cpp
   MOAB/trunk/tools/mbcslam/Intx2Mesh.hpp
   MOAB/trunk/tools/mbcslam/Intx2MeshInPlane.cpp
   MOAB/trunk/tools/mbcslam/Intx2MeshOnSphere.cpp
   MOAB/trunk/tools/mbcslam/Intx2MeshOnSphere.hpp
Log:
locate the departure points in parallel, for spherical meshes
replicate some of the MBCoupler code
  - build the local KD tree
  - send departure points to target procs, based on their boxes (crystal router 1)
  - find locally the elements, send the info back to source procs (crystal router 2)
      need to use spherical utils for localization, and did not want to pollute regular MBCoupler with this
  - set the LOC tag appropriately, with the processor and the index of the element for that processor


Modified: MOAB/trunk/test/parallel/par_intx_sph.cpp
===================================================================
--- MOAB/trunk/test/parallel/par_intx_sph.cpp	2012-12-18 22:47:35 UTC (rev 5930)
+++ MOAB/trunk/test/parallel/par_intx_sph.cpp	2013-01-11 16:26:50 UTC (rev 5931)
@@ -39,14 +39,26 @@
 #endif
 
 using namespace moab;
-
+double EPS1=0.2;
 void test_intx_in_parallel();
 
 int main(int argc, char **argv)
 {
   MPI_Init(&argc, &argv);
+  EPS1 = 0.2;
   int result = 0;
 
+  if (argc>1)
+  {
+    int index=1;
+    while (index<argc)
+    {
+      if (!strcmp( argv[index], "-eps"))
+      {
+        EPS1=atof(argv[++index]);
+      }
+    }
+  }
   result += RUN_TEST(test_intx_in_parallel);
 
   MPI_Finalize();
@@ -151,7 +163,9 @@
  
   Intx2MeshOnSphere worker(&mb);
 
-  //worker.locate_departure_points(euler_set);
+  worker.SetRadius(3*sqrt(3.));
+  worker.set_box_error(EPS1);//
+  worker.locate_departure_points(euler_set);
 
   std::string opts_write("PARALLEL=WRITE_PART");
   rval = mb.write_file("manuf.h5m", 0, opts_write.c_str(), &euler_set, 1);

Modified: MOAB/trunk/tools/mbcslam/CslamUtils.cpp
===================================================================
--- MOAB/trunk/tools/mbcslam/CslamUtils.cpp	2012-12-18 22:47:35 UTC (rev 5930)
+++ MOAB/trunk/tools/mbcslam/CslamUtils.cpp	2013-01-11 16:26:50 UTC (rev 5931)
@@ -577,4 +577,27 @@
   }
   return MB_SUCCESS;


More information about the moab-dev mailing list