Table of Contents
mathomatic - a computer algebra system
mathomatic [ -bcehqrtuvwx
] [ -s level ] [ -m number ] [ input_files or input ]
Mathomatic
is a general-purpose computer algebra system (CAS) that can symbolically
solve, simplify, combine, and compare algebraic equations, perform complex
number and polynomial arithmetic, etc. It does some calculus and handles
all elementary algebra, except logarithms. Trigonometry and function expansion
are supported in a separate program called rmath(1)
. Plotting expressions
with gnuplot(1)
is also supported.
mathomatic is the main Mathomatic application
that does interactive symbolic-numeric mathematics through a simple command-line
interface. Readline support is usually compiled into this application, making
it easy to edit input and recall previous input with the cursor keys. The
numeric arithmetic is double precision floating point with about 14 decimal
digits accuracy. Many results will be exact, because symbolic math is an
exact math, and because multiple floating point numbers can be combined
for a single mathematical value; for example: 2^(1/3), which is the cubed
root of 2 exactly.
- -b
- Enable bold colors. Color mode will be turned
on and colors will be brighter if this option is specified. Same as the
"set bold color" command.
- -c
- Toggle color mode. This mode outputs ANSI terminal
escape sequences to make each level of parentheses a different color, for
easier reading. Requires a terminal emulator that supports ANSI color escape
sequences. If the colors are too hard to see, use the -b option to increase
the brightness.
- -e
- Process mathematical expressions and Mathomatic commands
instead of input files on the shell command line. Unquoted space characters
are the line separators on the Mathomatic input that follows this option.
Works similar to entering it into the Mathomatic main prompt, except the
autoselect option is turned off. Useful for quick command-line calculations.
The startup messages are not displayed with this option. Follow this option
with "--" so that expressions can start with a minus sign (-).
- -h
- Display a
brief help message listing all of these options and then exit.
- -m number
- Change the memory size of equation spaces. It is followed by a decimal floating
point number which is a multiplier of the default equation space size. This
allows larger equation spaces so that manipulating extremely large expressions
will succeed without getting the "Expression too large" error. Specifying
a number higher than 100 may make Mathomatic unresponsive.
- -q
- Set quiet
mode. The startup messages and prompts are not displayed. This is useful
when piping or redirecting input into Mathomatic, because the input won’t
be displayed, so prompt output should be turned off. This option does the
same thing as the "set no prompt" command.
- -r
- Disable readline input processing.
Readline allows line input editing using the cursor keys, and outputs terminal
control codes, all of which can be turned off with this option.
- -s level
- Set the enforced security level for the Mathomatic session. Level 0 is the
default with no security. Level 1 disallows shelling out (forking). Level
2 disallows shelling out and writing files. Level 3 disallows shelling out
and reading/writing files for complete security. This run-time option was
created for use on open public servers that can’t use the SECURE compile-time
define.
- -t
- Set test mode. Used when testing and comparing output. Bypasses
loading startup (rc) file, turns off color mode and readline, sets wide
output mode, ignores pause command, etc.
- -u
- Guarantee that standard output
and standard error output are unbuffered. Also echoes all line input if
not in quiet mode (-q). Useful when piping.
- -v
- Display version number, compilation
options used, maximum possible memory usage, then exit.
- -w
- Set wide output
mode for an unlimited width output device like the "set wide" command does.
Sets infinite screen columns and rows so that 2D (two dimensional) expression
output will always succeed and not be downgraded to 1D output when it doesn’t
fit in the display area. Use when redirecting output or with a terminal
emulator that doesn’t wrap lines. This mode only affects 2D output.
- -x
- Enable
HTML output mode (which is also valid XHTML). This makes Mathomatic output
suitable for inclusion in a web page. The color mode and bold colors flags
affect this mode, allowing HTML color output. Wide output mode is also set
by this option, meaning expressions will always be displayed in 2D.
After
any options, text files may be specified on the shell command line that
will be automatically read in with the read command, unless the -e option
is specified.
Mathomatic is best run from within a terminal emulator. It
uses console line input and output for the user interface. First you type
in your mathematical equations in standard infix notation, then you can
solve them by typing in the variable name at the prompt, or perform operations
on them with simple English commands. Type "help" or "?" for the help command.
If the command is longer than 4 letters, you only need to type in the first
4 letters. Most commands operate on the current equation by default.
A command
preceded by an exclamation point (such as "!ls") is taken to be a shell
command and is passed unchanged to the shell (/bin/sh). "!" by itself invokes
the default shell, which is specified in the SHELL environment variable.
"!" is also the factorial operator.
Complete documentation is available
in HTML and PDF formats; see the local documentation directory or online
at "http://mathomatic.org/math/doc/
" for the latest Mathomatic documentation.
- EDITOR
- The EDITOR environment variable specifies which text
editor to use for the edit command.
- ~/.mathomaticrc
- Optional startup
file containing Mathomatic set command options. It should be a text file
with one set option per line. Do not include the word "set". For example,
the line "no color" will make Mathomatic default to non-color mode, which
is useful if you aren’t using a standard ANSI terminal emulator. "rc" stands
for "run cold".
Mathomatic has been written by George Gesslein II
(gesslein@linux.com) with kind help from John Blommers ("http://www.blommers.org")
and the Internet community.
The command to take the limit
of an expression is partially functional and experimental. All else should
work perfectly; if not, please report it as a bug to the author or on the
Launchpad website: "https://launchpad.net/mathomatic
".
rmath(1)
,
matho-primes(1)
, primorial(1)
, matho-mult(1)
, matho-sum(1)
, matho-pascal(1)
,
matho-sumsq(1)
Table of Contents