A nice collection of free math software for the Mac, covering both symbolic and numeric math and graphing. When you go to the main project pages from Maxima, Gnuplot, and Octave, it seems that no well supported Mac versions are available, at least not without compiling it yourself. Fortunately, this is not quite accurate. Read more to see how.

The main Maxima project page is here: http://maxima.sourceforge.net/

Installations for OS X are not straightforward from the downloads page. However, when going to the related wxMaxima project page, you can download a package that contains (almost) everything you need. You may also need AquaTerm (see below) for plotting. Documentations for Maxima should be downloaded from this main page since they don’t come included with wxMaxima.

wxMaxima is an easy to use GUI for OSX. It comes packaged as a Mac OS X application, ready to use. For plotting support, you need to install Gnuplot. Note that as of the time of this writing, the version of Gnuplot packaged with wxMaxima is older (4.2.5) than the one packaged with Octave (see below). Follow the “How to Install.rtf” instructions.

http://wxmaxima.sourceforge.net/wiki/index.php/Main_Page

Gnuplot needs a further environment to actually display the plots. You can use AquaTerm which is a convenient lightweight plotting environment. Note that the Maxima installer appears to assume that AquaPlot is already installed on your system, however, it is not included. You can get it here:

http://aquaterm.sourceforge.net/

Alternatively, you can use Apple’s X11.app which can be installed from the OS X DVD. Note that the default OS X installation on a new Mac bought from Apple does not come with X11 pre-installed. The advantage of using X11 is that you get some additional interactive plotting functionality, e.g., read out values in a 2D plot or rotate a 3d plot. On the other hand, AquaTerm comes with a nice printing interface that X11 is lacking.

As described in the “How to Install.rtf” instructions, you need to tell Maxima where Gnuplot is located. The “.maxima” folder should be created in your home directory. In so doing, you can also choose to use either AquaTerm or X11 as the default plotting environment. Once you created the maxima-init.mac file and want to change it, a simple-to-use editor is “pico”.

In Gnuplot the default environment is AquaTerm. To switch to X11, type in “set term x11” (without quotes) and hit return. To switch back to to AquaTerm, type “set term aqua” (without quotes). When plotting from Gnuplot, you don’t need to start either AquaTerm or X11 first, it will start automatically, if needed. E.g., try this 2d plot “plot sin(x)”, or this 3d plot “splot sin(x*y)” (both without quotes).

Note that when plotting from wxMaxima, AquaTerm starts automatically, however, X11 does not, so you need to start it first (from the Applications/Utilities folder) prior to plotting. Furthermore, note that if you’re using the plotting command from the “Plot” menu in wxMaxima, the default is to plot inline with the wxplot2d() and wxplot3d() commands. If you want the plot in a separate window, use the conventional plot2d() or plot3d() functions.

Now let’s switch gears and install Octave, a numerical math program very similar in functionality to Matlab. The main project page is here: http://www.gnu.org/software/octave/

A nice package for OS X can be found here: http://octave.sourceforge.net/

Note that when using Snow Leopard some tweaks are necessary. If you follow the download link, there is a text file explaining the steps necessary (http://sourceforge.net/projects/octave/files/Octave%20MacOSX%20Binary/2009-10-03%20binary%20of%20Octave%203.2.3/README_OSX1065.txt/download).

As noted above, Octave from Octave-Forge comes with a newer (4.2.6) Gnuplot bundled. If you already installed version 4.2.5 above you can simply overwrite it with this newer version. The tweaks described in the text file sound complicated but are quite easy. Note that they don’t negatively impact use of Gnuplot with Maxima. Everything still works.

This package of Octave also conveniently comes with documentation for Octave and Gnuplot included.