Note: .m files will run under Matlab. A free alternative is Octave, but you need at least version 3 for the contour plots to come out correctly. Run either program with the m-file in your current folder and call the m-file by name, e.g. 'cyl'.