My use of Mathematica notebooks to document the minimal surface has many reasons. I regret that this is an expensive, closed system and would much prefer something with similar capabilities but the availability of TeX.

One of the current main reasons is that I have been consistently able to use Mathematica notebooks from over 30 years ago, in most cases without any changes.

My main interest is the preservation of the available code for future use. To make it as independent as possible of eventualities, I am very little relying on Mathematica’s capabilities of manipulating 3D data. The surfaces are parametrized by hand, using the Enneper-Weierstraß representation, elementary functions, and numerical integration in the complex plane.

I create rectangular arrays of vertices and vertex normals (called quads in OpenGL), and convert them to Mathematica graphics when needed, or export them (mainly to PoVRay for raytracing).

Together with basic manipulations (like  rotations, reflections, etc) and house keeping, this functionality is implemented in a separate Mathematica package that is available here.

To use (most) of the Mathematica notebooks linked to, you need to load and evaluate this package first.

Everything here is source code and supplied as is. I am pretty sure I didn’t put anything malicious anywhere, but as always, use it at your own risk.

Because of the separation of (continuously evolving) graphic capabilities and the actual code for parametrizing, assembling and rendering a surface, it should be fairly straightforward to port all the code to any similar platform. Feel free to do so, and share it with the world.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s