Skip to main content

CAS (Java Computer Algebra System)

Posted by rstephe on February 27, 2006 at 11:36 PM PST

The CAS (Java Computer Algebra System) project is a polished and valuable tool for high school or college math classes. The applet is right on the CAS project page, so it's hard to miss. It is an algebraic function plotter that is well documented (scroll down the page) and seems both robust and well designed. You enter commands like "Plot({3-5*x+x^2},{x,-10,10})" and then press Execute and voilà! your graph is plotted. The graph appears in a separate window. In Firefox for Mac the java window appeared behind the browser window and you had to look for it, but in Safari it worked fine.

OK, so graphing calculators are old hat now, but this one uses Java3D to plot in three dimensions, which is very cool! If you use the default command, "Plot3D({x*y,-y*x},{x,-10,10},{y,-10,10})", that appears in the applet when it comes up you get a beautiful, colorful 3-D display (see below) of the function surface. You can manipulate the graph as if it were in a glass sphere that you can rotate by dragging your mouse across its surface.CAS screenshot 1

A trio of buttons at the top of the applet window give you (right to left) program info, an options palette and a menu for picking a constant or function to insert into the command line (doubleclick on ATan, for example, and "ATan(" is inserted at the cursor).

The applet can plot several different functions at a time, and will assign each a different color (the example above plots both x*y and -x*y). It keeps a history of functions previously plotted, which you can reuse by doubleclicking on them. I wasted several hours trying to generate more and more beautiful function plots. It's noteworthy that the applet never crashed, and gracefully let me know when I goofed by, e.g., failing to balance my parentheses. My best function yet: "Plot3D({Tan(Sqrt(x^2+y^2)),{x,-2,2,0.1},{y,-2,2,0.1},{z,-10,10})" is shown below.CAS screenshot 2

It is rare, sadly, to find open source projects as polished, well designed and well documented as this one. It is easy to learn and easy to use. I recommend CAS to high school or college algebra students anywhere.