[MOAB-dev] r5912 - in MOAB/trunk: src/moab test/parallel

tautges at mcs.anl.gov tautges at mcs.anl.gov
Fri Dec 14 10:29:35 CST 2012


Author: tautges
Date: 2012-12-14 10:28:51 -0600 (Fri, 14 Dec 2012)
New Revision: 5912

Modified:
   MOAB/trunk/src/moab/Skinner.hpp
   MOAB/trunk/test/parallel/parallel_hdf5_test.cc
Log:
Adding a method to skinner that takes a handle vector instead of a range.
Adding a unit test for parallel reading of neumann/dirichlet/material sets.



Modified: MOAB/trunk/src/moab/Skinner.hpp
===================================================================
--- MOAB/trunk/src/moab/Skinner.hpp	2012-12-14 04:03:06 UTC (rev 5911)
+++ MOAB/trunk/src/moab/Skinner.hpp	2012-12-14 16:28:51 UTC (rev 5912)
@@ -19,6 +19,7 @@
 #define MOAB_SKINNER_HPP
 
 #include "moab/Forward.hpp"
+#include "moab/Range.hpp"
 #include <vector>
 
 namespace moab {
@@ -79,6 +80,32 @@
                        bool create_skin_elements = true,
                        bool look_for_scd = false);
 
+    /**\brief will accept entities all of one dimension and 
+     *        return entities of n-1 dimension; NOTE: get_vertices argument controls whether
+     * vertices or entities of n-1 dimension are returned, and only one of these is allowed
+     * (i.e. this function returns only vertices or (n-1)-dimensional entities, but not both)
+     * \param entities Pointer to elements for which to find the skin
+     * \param num_entities Number of entities in vector
+     * \param get_vertices If true, vertices on the skin are returned 
+     *        in the range, otherwise elements are returned
+     * \param output_handles Range holding skin entities returned
+     * \param output_reverse_handles Range holding entities on skin which 
+     *        are reversed wrt entities
+     * \param create_vert_elem_adjs If true, this function will cause 
+     *        vertex-element adjacencies to be generated
+     * \param create_skin_elements If true, this function will cause creation 
+     *        of skin entities, otherwise only skin entities already extant 
+     *        will be returned
+     */
+  ErrorCode find_skin( const EntityHandle *entities,
+                       int num_entities,
+                       bool get_vertices,
+                       Range &output_handles,
+                       Range *output_reverse_handles = 0,
+                       bool create_vert_elem_adjs = false,
+                       bool create_skin_elements = true,
+                       bool look_for_scd = false);
+
     /**\brief get skin entities of prescribed dimension
      * \param entities The elements for which to find the skin
      * \param dim Dimension of skin entities requested
@@ -254,6 +281,21 @@
                      bool create_skin_elements);
 };
 
+inline ErrorCode Skinner::find_skin( const EntityHandle *entities,
+                                     int num_entities,


More information about the moab-dev mailing list