Symaxx/2 - a graphical frontend for the Maxima computer algebra system
Note: The obsolete Symaxx (1) homepage has moved here.
Maxima is a computer algebra system, whose roots go back to
1970 and earlier. Many users consider it a reliable and efficient program.
It is operated through the command line (advanced users prefer Emacs).
Fig 1: Maxima / Emacs snapshot
Symaxx/2 is a graphical frontend for Maxima.
Fig 2: Symaxx/2 snapshot
Here are the Symaxx/2 demo files, which
should give you a good impression about the program.
Fig 2a: One of the demos
A calculation in Symaxx/2 consists of a number of calculation `objects',
as shown in fig. 2.
Each object consists of one or more command lines, and the corresponding
number of result lines.
In fig. 2, the command is the integration, the result is the polynomial
below.
An object can be considered as a `small Maxima session'.
Fig 3
Figure 3 shows two objects with independent calculations.
Maxima-note: The `%' operator refers to the last result.
Ev(Expr,NUMER) calculates Expr as a floating point number
Each object has a unique identifier ID.
A calculation object can refer to the result of any other object by
writing REF[ID], as in figure 4.
Fig 4
A Maxima calculation has to be initiated by the user (Ctrl-Space). If an
object has been changed, it is marked as `dirty' - not up-to-date anymore.
Symaxx takes care of managing the dependencies between objects. An
object depending on `dirty' results is `dirty', too.
Fig 5
A change has been made between figure 4 and figure 5 without reevaluating
the calculation. Pressing Ctrl-Space gives the correct result, the red
bars disappear.
The dependency chain is illustrated with arrows.
Note: A circular dependency results in an error message.
When Maxima reports an error, it is shown in red letters (figure 6):
Fig 6
Sometimes an error can be so severe, that it crashes the current Maxima
session. The responsible command is highlighted with an angry red star
to alert the user (figure 7):
Fig 7
Symaxx has the ability to interface with Gnuplot to produce standard
2D plots and show them on the workscreen.
The plot command (and some other standard operations, such as `evaluate
numerically') can be accessed through a dialog box instead of typing them.
For example, the `g-in-a-box' shows, that a command belonging to the
`Gnuplot'-feature is hidden behind the expression.
Fig 8
Symaxx allows documentation of both calculations and Maxima code. While
it is not a scientific text processor, it can handle headings, text boxes
and `Encapsulated Postscript' images in a way consistent with Maxima. More
information on the Documentation
page.
A graphical representation is available for many mathematical functions
(figure 9):
Fig 9
A `palette' is available for some often-used commands (figure 10).
Fig 10
License
Artistic license or GPL, whatever is less restrictive
Requirements
Symaxx/2 requires:
Unix (Linux / SunOS tested)
Perl, Perl Tk extension
Maxima
Mouse
Author
Markus Nentwig
Links
Maxima homepage
Symaxx
download: Be sure to download a Symaxx/2 file, not the obsolete Symaxx
(1)
This page is hosted at .