TL;DR; I have a need for retrieving just the ghosted elements on a given processor or to put it another way, the difference of the semi-local and local elements.
My current plan is to pass the begin/end iterators of these two methods to the set_difference() algorithm. Does anyone have a different or better way? Longer explanation: The first thing I always ask users is, "What are you trying to do?" So here's what I want to do. I'm basically starting to think about cutting the amount of element or node ids that I need to communicate globally for work on my grain tracking algorithm. Right now I have to communicate all nodes or elements within each "grain" because I have no way of knowing just how big these grains might be. They could potentially grow to span the entire domain so global communication is necessary. Once these regions are communicated a stitching (merging) process occurs. Repeated testing has shown me that in 3D, this stitching process is VERY expensive. So my first optimization is to cull out all of the interior nodes/elements within a grain, only communicating those that lie on processor boundaries. This will greatly reduce the number of entities involved in both the communication and stitching process. To do this, I need to know which elements lie on the processor boundary. I plan to compute this by determining only the ghosted entities on each processor and then gathering them on all processors. Thanks for any insight or new ideas on this problem, Cody ------------------------------------------------------------------------------ Monitor Your Dynamic Infrastructure at Any Scale With Datadog! Get real-time metrics from all of your servers, apps and tools in one place. SourceForge users - Click here to start your Free Trial of Datadog now! http://pubads.g.doubleclick.net/gampad/clk?id=241902991&iu=/4140 _______________________________________________ Libmesh-users mailing list Libmesh-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-users