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

Reply via email to