1MAXIMA(1L) MAXIMA(1L)
2
3
4
6 Maxima - Common Lisp version of MACSYMA symbolic mathematics package
7 released under the GNU Public License
8
9 Xmaxima - A graphical version of Maxima
10
12 maxima [options]
13
14 xmaxima [options]
15
17 Maxima is a version of the MIT-developed MACSYMA system, modified to
18 run under Common Lisp. It is an interactive expert system and program‐
19 ming environment for symbolic and numerical mathematical manipulation.
20 Written in Lisp, it allows differentiation, integration, solution of
21 linear or polynomial equations, factoring of polynomials, expansion of
22 functions in Laurent or Taylor series, computation of Poisson series,
23 matrix and tensor manipulations, and two- and three-dimensional graph‐
24 ics. Procedures may be written using an ALGOL-like syntax, and both
25 Lisp-like functions and pattern matching facilities are provided.
26 Files containing Maxima objects may be read from and written to disk
27 files. Pre-written Maxima commands may be read from a file and exe‐
28 cuted, allowing batch-mode use.
29
31 -b file, --batch=file
32 Process file in noninteractive mode.
33
34 --batch-lisp=file
35 Process Lisp file file in noninteractive mode.
36
37 --batch-string=string
38 Process string in noninteractive mode.
39
40 -d, --directories
41 Display Maxima directory information.
42
43 --disable-readline
44 Disable readline support.
45
46 -g, --enable-lisp-debugger
47 Enable Lisp debugger.
48
49 -h, --help
50 Display a brief usage summary.
51
52 -l lisp, --lisp=lisp
53 Use Lisp implementation lisp. Use --list-avail to see the list
54 of possible values.
55
56 --list-avail
57 List the available Lisp and Maxima versions.
58
59 -p lisp_file, --preload-lisp=lisp_file
60 Preload lisp_file.
61
62 -q, --quiet
63 Suppress Maxima start-up message.
64
65 -r string, --run-string=string
66 Process string in interactive mode.
67
68 -s port, --server=port
69 Start Maxima server on port.
70
71 -u version, --use-version=version
72 Launch Maxima version version. Use --list-avail to see the list
73 of possible values.
74
75 -v, --verbose
76 Print extra information from the Maxima wrapper script.
77
78 --version
79 Print the (default) installed version.
80
81 --very-quiet
82 Suppress expression labels and the Maxima start-up message.
83
84
86 Upon initialization, maxima prints a startup message, then a command
87 line prompt:
88
89 (%i1)
90
91 All Maxima commands must be concluded with either:
92
93 1) a semicolon (in which case the result of the command is echoed
94 on a display line, prefaced by %o with an appended sequence num‐
95 ber), or
96
97 2) a dollar sign (which suppresses printing of a display line).
98
100 (%i1) diff(sin(x),x);
101
102 (%o1) cos(x)
103
104 (%i2) integrate(%o1,x);
105
106 (%o2) sin(x)
107
108 The user types in commands which create Maxima objects (such as func‐
109 tions and system variables) and which manipulate these objects.
110
111 On UNIX it may be preferable to run Maxima under Gnu Emacs or XEmacs.
112 You can do this by invoking shell mode in emacs, and then invoking max‐
113 ima. Preferably, install maxima.el from the distribution and use the
114 command:
115
116 M-x maxima
117
118 The main advantage of working inside emacs is that it provides a com‐
119 plete history of input/output. If you execute the command
120
121 display2d: false
122
123 you will be able to use your output as input, by simply killing and
124 yanking.
125
126 Lisp is built into Maxima. The function to_lisp() enters the Lisp
127 read-eval-print loop. The Lisp function (run) may be used to return to
128 Maxima. Alternatively, single Lisp commands may be invoked by starting
129 a command line with :lisp.
130
132 The reference manual can be accessed from the Maxima input prompt. A
133 description of a given command can be obtained by typing the command
134
135 describe(command);
136
137 or, simply,
138
139 ? command
140
141 searches the list of functions for the string command. Demonstration
142 files provide complete examples of problems solved with Maxima, and may
143 be accessed with the command demo(command);. A library of user-con‐
144 tributed command files is also provided (the share library), directed
145 toward a variety of problems.
146
148 The reference manual is provided in both info and html formats.
149
151 This list includes only commands which the beginner might find useful
152 to know about prior to studying the reference manual and other texts.
153
154 batch("myfile");
155 Execute the contents of file myfile, which is assumed to contain
156 Maxima commands.
157
158 closefile("myfile");
159 Close session file opened by a writefile command (see below).
160
161 demo("myfile");
162 Execute the contents of file myfile, which is assumed to contain
163 Maxima commands, one line at a time.
164
165 ev(infolists);
166 Print the contents of all of the available information lists.
167
168 functions;
169 Print a list of the names of currently defined functions.
170
171 infolists;
172 Print a list of the various available information lists.
173
174 kill(objectlist);
175 Eliminate the object(s) contained within parentheses; kill(all)
176 Delete all objects created by the user, restoring Maxima to its
177 initial state.
178
179 quit();
180 Leave Maxima.
181
182 reset();
183 Reset all Maxima control parameters to their default states.
184
185 values;
186 Print a list of the names of currently assigned scalar values.
187
188 writefile("myfile");
189 Write record of session to file myfile; only one file at a time
190 can be open, and the closefile command must be invoked prior to
191 leaving Maxima to flush the buffer.
192
194 Maxima is capable of producing 2- and 3-dimensional plots. Here is a
195 simple 2-dimensional example
196
197 plot2d (sin(x), [x, -2*%pi, 2*%pi]);
198
199 and a simple 3-dimensional example
200
201 plot3d (2^(-u^2 + v^2), [u, -5, 5], [v, -7, 7]);
202
203 By default plots are made by the gnuplot plotting package. Plots can
204 be made by other means; see "? plot_options". For more information
205 about plotting, see "? plot".
206
208 /usr/lib/maxima/5.14.0/binary-lisp
209 Compiled files for lisp implementation lisp
210
211 /usr/info primary documentation directory, containing info files which
212 are used for the 'describe' command, and also for viewing
213 under emacs or other info viewer.
214
215 /usr/share/maxima/5.14.0/doc/html
216 HTML version of info documentation.
217
218 /usr/share/maxima/5.14.0/demo
219 Maxima demo files.
220
221 /usr/share/maxima/5.14.0/emacs
222 Elisp files for use with Emacs or XEmacs.
223
224 /usr/share/maxima/5.14.0/share
225 Contributed external packages.
226
227 /usr/share/maxima/5.14.0/doc/share
228 Documentation for contributed external packages.
229
230 /usr/share/maxima/5.14.0/src
231 Complete Maxima source.
232
233 /usr/share/maxima/5.14.0/tests
234 Test suite.
235
236 /usr/share/maxima/5.14.0/xmaxima
237 Xmaxima support files.
238
239 /usr/libexec/maxima/5.14.0/
240 Maxima utility scripts.
241
243 MAXIMA_USERDIR
244 Points to a directory for user customization files. Maxima's
245 default search paths include MAXIMA_USERDIR. Default value:
246 $HOME/.maxima.
247
248 MAXIMA_PREFIX
249 Maxima looks for its input files in the directory configured at
250 compile time, /usr. Maxima can be relocated to a different
251 directory as long as the maxima script maintains the same rela‐
252 tive position with respect to the Maxima input files. If, for
253 some reason, the maxima script needs to be relocated indepen‐
254 dently, MAXIMA_PREFIX needs to be set to point to the top of the
255 tree holding the input files.
256
257 MAXIMA_DIRECTORY
258 MAXIMA_DIRECTORY is equivalent to MAXIMA_PREFIX. It is included
259 only for backward compatibility with older versions of Maxima.
260
261 Maxima uses several other environment variables for communication
262 between the maxima script and the lisp image. All such variables start
263 with MAXIMA_. They should not need to be modified by the user.
264
266 maximarc
267 maximarc is sourced by the maxima script at startup. It should
268 be located in $MAXIMA_USERDIR (see above). maximarc can be used,
269 e.g., to change the user's default lisp implementation choice to
270 CMUCL by including the line "MAXIMA_LISP=cmucl".
271
272 maxima-init.lisp
273 At startup, Maxima will load the lisp file maxima-init.lisp if
274 it is found in the search path. For user customization, maxima-
275 init.lisp should be placed in the $MAXIMA_USERDIR (see above).
276 Since Maxima typically has a system maxima-init.lisp in the Max‐
277 ima share directory, the user may want to copy the contents of
278 the system maxima-init.lisp into his/her custom file.
279
280 maxima-init.mac
281 At startup, Maxima will load the file maxima-init.mac if it is
282 found in the search path. For user customization, maxima-
283 init.mac should be placed in the $MAXIMA_USERDIR (see above).
284
286 Old Reference: MACSYMA Reference Manual (volumes 1 and 2). The Mathlab
287 Group, Laboratory for Computer Science, MIT. Version 10. January
288 1983.
289
290 Newer references: http://maxima.sourceforge.net
291
293 Maxima is a complex system. It includes both known and unknown bugs.
294 Use at your own risk. The Maxima bug database is available at
295
296 http://sourceforge.net/tracker/?atid=104933&group_id=4933&func=browse
297
298 New bug reports are always appreciated. Please include the output of
299 the Maxima function "build_info()" with the report.
300
302 MACSYMA (Project MAC's SYmbolic MAnipulation System) was developed by
303 the Mathlab group of the MIT Laboratory for Computer Science (origi‐
304 nally known as Project MAC), during the years 1969-1972. Their work
305 was supported by grants NSG 1323 of the National Aeronautics and Space
306 Administration, N00014-77-C-0641 of the Office of Naval Research,
307 ET-78-C-02-4687 of the U.S. Department of Energy, and F49620-79-C-020
308 of the U.S. Air Force. MACSYMA was further modified for use under the
309 UNIX operating system (for use on DEC VAX computers and Sun worksta‐
310 tions), by Richard Fateman and colleagues at the University of Califor‐
311 nia at Berkeley; this version of MACSYMA is known as VAXIMA. The
312 present version stems from a re-working of the public domain MIT MAC‐
313 SYMA for GNU Common Lisp, prepared by William Schelter, University of
314 Texas at Austin until his passing away in 2001. It contains numerous
315 additions, extensions and enhancements of the original. The original
316 version of this manual page was written by R. P. C. Rodgers, UCSF
317 School of Pharmacy, San Francisco, CA 94143 (rodgers@max‐
318 well.mmwb.ucsf.edu) in 1989. It was extensively revised by James Amund‐
319 son in 2002.
320
321 Maxima is now developed and maintained by the Maxima project at
322 <http://maxima.sourcforge.net>.
323
324
325
326 September 10, 2005 MAXIMA(1L)