On Fri, 25 Mar 2011, [email protected] wrote: > I have a 2D mesh in 3 spacial dimensions and I'd like to get the > element, which contains a point. The point_locator uses > Elem::contains_point which uses FEInterface::inverse_map and then > checks, if the reference point is in the reference element. For 3D > points the inverse map is not defined in the whole space, which causes > problems, when mapping non coplanar points falsely to the reference > element.
Hmm... yes, inverse_map() is solving the normal equations, and so ought to be converging to the inverse of the projection of the point into the plane/line of the element... which is fine on interior meshes or on boundary meshes generated from "flat enough" boundary subsets but which would give false positives for many boundary meshes. > I then changed the function a bit by mapping the reference > point back again in physical space and checked the distance there for > < tol*hmin(). However now it looks like I've got other problems > probably caused by this hack. That sounds like the right fix, but inverse_map is used in a lot of places and it would indeed be easy to break something else by missing a corner case... like we seem to have done in the first place. Are your other problems replicable on any of the examples or on anything you can send us in a short code? > Am I doing something wrong, is there a common pitfall with boundary > meshes, or does anybody know, how to locate an element containing the > point on boundary meshes. You're doing everything right, and found a bug that needs fixing; it's just not a common pitfall because it's not a common usage type, I suppose. --- Roy ------------------------------------------------------------------------------ Enable your software for Intel(R) Active Management Technology to meet the growing manageability and security demands of your customers. Businesses are taking advantage of Intel(R) vPro (TM) technology - will your software be a part of the solution? Download the Intel(R) Manageability Checker today! http://p.sf.net/sfu/intel-dev2devmar _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
