How to print algebraic surfaces


I gave a talk at Notre Dame in May 2016 about this topic. The pdf of the slides is here. Note that the filesize is large, because of full-res images included. Eventually, this page hopes to replace this slideshow.

If you want to chat, send me an email!

Some advice

Briefly, here's how I print algebraic surfaces:

  1. Write Bertini input file. This contains the system, as well as setting for Bertini.
  2. Run Bertini, tracktype: 1. Produces witness_data file, which is used as input for Bertini_real.
  3. Run Bertini_real. Produces the numerical cell decomposition.
  4. Gather data into .mat file, in Matlab.
  5. Plot, verify looks good. If not, goto 2.
  6. Smooth, if desired. Run sampler.
  7. Gather data again. Save to .stl.
  8. In Blender, align normal vectors. If surface has no interior, add modifyer Solidify.
  9. Because solidification routines assume some level of smoothness, and more importantly manifoldness, the solidification probably produced self-crossings and other garbage. Feed the model .stl through Microsoft's online fixer.
  10. Slice. Generate .gcode.
  11. Print small model.
  12. Print large model.
  13. ???
  14. Profit