We present a method to compute the exact topology of a real algebraic surface S, implicitly given by a polynomial f∈Q[x,y,z] of arbitrary total degree N. Additionally, our analysis provides geometric information as it supports the computation of arbitrary precise samples of S including critical points. We compute a stratification ΩS of S into O( N5) non-singular cells, including the complete adjacency information between these cells. This is done by a projection approach. We construct a special planar arrangement AS with fewer cells than a cad in the projection plane. Furthermore, our approach applies numerical and combinatorial methods to minimize costly symbolic computations. The algorithm handles all sorts of degeneracies without transforming the surface into a generic position. Based on ΩS we also compute a simplicial complex which is isotopic to S. A complete C++-implementation of the stratification algorithm is presented. It shows good performance for many well-known examples from algebraic geometry. © 2009 Elsevier B.V.
Berberich, E., Kerber, M., & Sagraloff, M. (2010). An efficient algorithm for the stratification and triangulation of an algebraic surface. In Computational Geometry: Theory and Applications (Vol. 43, pp. 257–278). https://doi.org/10.1016/j.comgeo.2009.01.009