CGAL exception with UnitTet mesh when calling all_intersected_entities() or any_intersected_entities()
Bug #781885 reported by
Neilen Marais
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
DOLFIN |
Invalid
|
Medium
|
Andre Massing |
Bug Description
Running
from dolfin import *
mesh = UnitTetrahedron()
mesh.all_
results in
/tmp/python-
1 from dolfin import *
2
3 mesh = UnitTetrahedron()
----> 4 mesh.all_
StandardError: CGAL ERROR: assertion violation!
Expr: m_primitives.size() > 1
File: /usr/include/
Line: 470
This is running a devlopment version, revision 5840, bzr+ssh:
Changed in dolfin: | |
milestone: | none → 0.9.12 |
Changed in dolfin: | |
assignee: | nobody → Andre Massing (massing) |
importance: | Undecided → Medium |
Changed in dolfin: | |
milestone: | 1.0-beta → 1.0-rc1 |
Changed in dolfin: | |
status: | New → Confirmed |
To post a comment you must log in.
Thanks for the bug report. rator which gives a more fine-grained control over the geometric kernel. Either use "ExactPredicates" in the constructor or reset it via the reset_kernel member function (in IntersectionOpe rator class). One may discuss whether and how this might be controlled from within the mesh class, suggestion are very welcome!
I mark that bug as invalid/won't fix since that is expected behavior in the sense that because of a limited precision for the standard geometry kernel, there are case where such exceptions do occur, especially if you take an subentity of an element (here a point which is a vertex of the cell)
A current workaround is to not use the intersection related member functions in the Mesh class but to initiate a separate IntersectionOpe