Johan Jansson wrote:
> Anders Logg wrote:
>   
>> Yes, the mesh ordering used in DOLFIN (intentionally) screws up any
>> ordering, like all cells being "right-oriented" or similar.
>>
>> If this is a problem for GTS, we need to do something about the GTS
>> interface (not the mesh).
>>
>>   
>>     
>
> I'm pretty sure this is not a problem for GTS. The GTS algorithm 
> (gts_bb_tree_overlap()) is an axis-aligned bounding-box tree algorithm. 
> It only operates on bounding boxes of cells, so the orientation is 
> irrelevant. This is also why the algorithm can be used for tetrahedral 
> meshes, even though GTS supposedly is only for triangulated surfaces.
>
>   Johan
>   
Continuing..

This view was a bit too simplistic. After the bounding box has been 
found, we do actually need to perform a cell intersection test. The 
orientation does play a factor in TriangleCell::intersects() and 
TetrahedronCell::intersects() (which are implemented using the 
GTS/Shewchuk predicates actually..). However, a local reordering (using 
orientation()) is implemented for triangles, but it seems to be missing 
for tetrahedra (should be easy to add though).

Since Kristen has a tetrahedral mesh I guess this is the likely 
candidate for error..

  Johan

_______________________________________________
DOLFIN-dev mailing list
[email protected]
http://www.fenics.org/mailman/listinfo/dolfin-dev

Reply via email to