![]() | Crushing and Cutting |
| Prev | Normal Surfaces | Next |
In certain situations normal surfaces can be used to decompose the underlying triangulation into smaller and/or simpler components. The available ways in which this can be done are as follows.
A normal surface can be crushed to a point in the underlying triangulation by selecting the surface within the table and invoking the -> menu item.
The original triangulation will not be changed; a new triangulation in which the selected surface has been crushed will appear as a child packet of this surface list.
Note that crushing a normal surface might change the topology of the
underlying 3-manifold (beyond the simple act of slicing along the
surface) and in some cases might introduce ideal vertices
or even invalid edges. For details see
in the calculation engine documentation.
NNormalSurface::crush()
Why crush a surface if it can have such nasty side-effects? The advantage is that, unlike the cutting operation described below, crushing a surface can only ever reduce the number of tetrahedra in a triangulation (the worst case is where the surface only contains vertex links, whereupon the number of tetrahedra will remain the same).
In general you should only crush a normal surface when there are theoretical reasons to know that this is safe. Examples of safe scenarios can be found in Jaco and Rubinstein's paper on 0-efficiency [JR03].
Instead of crushing a surface to a point, one might wish to simply slice along the surface and subdivide the resulting polyhedra into tetrahedra to produce a new triangulation.
This has the advantage over crushing in that it will never change the topology of the underlying 3-manifold beyond the act of simply slicing along the surface. It will also never introduce new ideal vertices or invalid edges.
The disadvantage is that, after cutting along a surface, the number of tetrahedra in the triangulation can potentially skyrocket. This has severe implications if you wish to do anything computationally intensive with the resulting triangulation(s).
To cut along a normal surface, select the surface within the table and invoke the -> menu item. As with crushing, the original triangulation will not be changed; the resulting cut-open triangulation will be added to the packet tree as a new child of this surface list.
When crushing or cutting along a two-sided surface, it is possible that you will end up with a disconnected triangulation. The menu item -> can be used to split this triangulation into its connected components. See the section on component decomposition for details.
| Prev | Home | Next |
| Analysis | Up | Filtering |