How the Algebraic LSMP-Server Works
The algebraic surface program consists of two parts: a web server which actually calculates the points on the surface and a Java applet which displays the surface and allow interactive investigation. The web server forms part of the LSMP program which Richard Morris wrote several years back. The client side uses the JavaView package by Konrad Polthier, Klaus Hildebrandt, Eike Preu�, and Ulrich Reitebuch.
The algorithm for generating the surfaces is a little complicated and is fully described in Richard Morris' paper A new method for drawing Algebraic Surfaces. It basically works by recursive subdivision of the domain and looks for singular points to help resolve the topology. It makes heavy use of Bernstein polynomials which allow a quick test of whether a surface has a component in a particular region.
Bugs
The algorithm is far from perfect and there will always be surfaces where it does not quite calculate the geometry correctly. These typically involve higher order singularities and curves of self-intersection. Often better models of these points can be obtained by increasing the coarse and fine resolutions or by reducing the size of the domain. If you find any surfaces where it does a particular bad job let Richard Morris know and he'll see if he can tweak the algorithm a little bit.
Download
The official site also offers download of the program.
Web page, applet and Algebraic Surface program by Richard Morris,
copyright 1990-2003.
Maths
home page
Personal home page
Email pfaf@webmaster.org or
rjm@amsta.leeds.ac.uk.