On Fri, 6 Dec 2013, David Knezevic wrote: > I'm using a PointLocator to copy a solution onto a boundary mesh,
In theory on modern libMesh you ought to be able to do this much more efficiently (O(N) instead of O(N log N)) with the Elem::interior_parent() pointers. > 3. loop over the nodes and elements of boundary_mesh and use > point_locator from 2 to find out which element each node and element > belongs to, and then copy the solution over to a system defined on the > boundary mesh > > This worked well. But then I ran into some problems when I did the above > several times in a row with different surface_ids. In this case the > PointLocator seemed to grind to a halt. Could you attach a debugger and figure out more specifically what was going wrong? E.g. if it's infinite looping, where? > I then added "system.get_mesh().clear_point_locator()" in step 2 before > the call to sub_point_locator, and that fixed the issue. In theory the only time we should ever need to get new point locators is after the mesh clears the old master locator itself, which should only happen when the mesh changes... --- Roy ------------------------------------------------------------------------------ Sponsored by Intel(R) XDK Develop, test and display web and hybrid apps with a single code base. Download it for free now! http://pubads.g.doubleclick.net/gampad/clk?id=111408631&iu=/4140/ostg.clktrk _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
