MAXIMA(1) General Commands Manual MAXIMA(1) NAME Maxima - Eine Common Lisp Version von MACSYMA, einem Programm fur symbolische Mathematik, veroffentlicht unter der GNU Public License. Rmaxima - Eine Version von Maxima, die Befehls-Autovervollstandigung beherrscht. Xmaxima - Eine Version von Maxima mit einem einfachen graphischen Benutzerinterface. SYNTAX maxima [Optionen] rmaxima [Optionen] xmaxima [Optionen] BESCHREIBUNG Maxima ist eine Version des am MIT entwickelten MACSYMA Systems, das unter Common Lisp lauft. Es ist ein interaktives Expertensystem und eine Programmierumgebung fur symbolische und numerische Mathematik. Es ermoglicht Differentiation, Integration, die Losung von linearen oder polynomiellen Gleichungen, Faktorisierung von Polynomen, Taylorreihen- oder Laurentreihen-Entwicklung von Funktionen, Berechnung von Poissionreihen, Matrizen- und Tensorberechnungen und 2D und 3D Graphiken. Prozeduren konnen in einer ALGOL-ahnlichen Syntax geschrieben werden und sowohl Lisp-ahnliche Funktionen als auch Pattern-Matching kann verwendet werden. Maxima-Code kann in Dateien geschrieben und aus Dateien gelesen werden. Maxima-Befehle in Dateien konnen gelesen und ausgefuhrt werden, was Batch-Prozessing ermoglicht. OPTIONEN -b file, --batch=file Fuhre Maxima-Datei file nicht-interaktiv aus. --batch-lisp=file Fuhre Lisp-Datei file nicht-interaktiv aus. --batch-string=string Fuhre die Befehle im String string nicht-interaktiv aus. -d, --directories Gibt Informationen uber die Maxima Verzeichnisstruktur aus. --disable-readline Deaktiviert die Readline-Unterstutzung. -g, --enable-lisp-debugger Aktiviert den Lisp Debugger. -h, --help Gibt eine kurze Nutzungsubersicht aus. --init=string Ladt die Maxima- und Lisp-Initialisierungsdateien string.mac und string.lisp beim Programmstart. --init-mac=file Ladt die Maxima-Initialisierungsdatei file beim Programmstart. --init-lisp=file Ladt die Lisp-Initialisierungsdatei file beim Programmstart. -l lisp, --lisp=lisp Verwendet die Lisp-Implementierung lisp fur Maxima. Die Option --list-avail zeigt die moglichen Werte an. --list-avail Listet die verfugbaren Lisp- und Maxima-Versionen auf. -p lisp_file, --preload-lisp=lisp_file Ladt die Lisp-Datei lisp_file vorab. -q, --quiet Unterdruckt die Ausgaben beim Programmstart. -r string, --run-string=string Verarbeitet die Befehle im String string in einem interaktiven Modus. -s port, --server=port Verbindet Maxima zum Server an Port port. Anmerkung: Das erzeugt keinen Maxima-Server, Maxima ist das Clientprogramm. -u version, --use-version=version Startet Maxima Version version. Die Option --list-avail zeigt die moglichen Werte an. --userdir=directory Verwendet directory als das Homedirectory (standardmassig %USERPROFILE%/maxima auf Windows, $HOME/.maxima bei anderen Betriebsystemen) -v, --verbose Gibt zusatzliche Informationen des Maxima Startskripts aus. --version Gibt die (default) installierte Version aus. --very-quiet Unterdruckt Ausdrucksmarken und Startmeldungen. -X Lisp-Optionen, --lisp-options=Lisp-Optionen Optionen, die an das verwendete Lisp weitergereicht werden. --no-init, --norc Initialisierungsdateien beim Start nicht laden. EINFUHRENDE ANMERKUNGEN Nach dem Start von maxima gibt Maxima eine Startmeldung aus, anschliessend einen Kommandozeilenprompt: (%i1) Alle Maxima Befehle mussen abgeschlossen werden mit: 1) einem Strichpunkt (in diesem Fall, wird das Ergebnis ausgegeben, ein %o mit einer laufenden Nummer wird vorher ausgegeben) oder mit 2) einem Dollarzeichen (was die Ausgabe des Ergebnisses unterdruckt). BEISPIEL (%i1) diff(sin(x),x); (%o1) cos(x) (%i2) integrate(%o1,x); (%o2) sin(x) Eingaben, die gemacht werden, erzeugen Maxima Objekte (wie z.B. Funktionen und Variablen) und modifizieren diese Objekte. Unter UNIX ist es vielleicht besser, Maxima unter Gnu Emacs or XEmacs zu betreiben. Das kann gemacht werden, indem in Emacs der Shell-Modus aufgerufen wird und anschliessend maxima eingegeben wird. Oder - besser - maxima.el von der Maxima-Distribution installiert wird und das Kommando M-x maxima eingegeben wird. Der Hauptvorteil, wenn Maxima innerhalb von Emacs verwendet wird ist, dass eine vollstandige Historie der Eingaben und Ausgaben zur Verfugung steht. Wenn der Befehl display2d: false eingegeben wird, ist es moglich, die Ausgaben mit Cut&Paste weiterzuverwenden. Lisp ist in Maxima eingebaut. Die Funktion to_lisp() schaltet in den Lisp-Modus, wo Lisp Befehle eingegeben und ausgewertet werden. Die Lisp Funktion (run) kehrt zu Maxima zuruck. Alternativ konnen in einer Zeile Lisp-Befehle eingegeben werden, indem am Anfang der Zeile :lisp eingegeben wird. EINGEBAUTE HILFE Das Benutzerhandbuch von Maxima kann am Inputprompt abgerufen werden. Die Beschreibung eines Befehls oder einer Funktion wird durch describe(command); ausgegeben, oder einfacher: ? command Der Befehl ?? command durchsucht die Liste der Funktionen nach dem String command und gibt die Treffer aus. Es gibt einige Demo-Dateien, die vollstandige Probleme, die mit Maxima gelost werden, zeigen. Sie konnen mit folgendem Befehl gezeigt werden: demo(command); Zusatzliche - von Benutzern beigesteuerte Programmdateien - fur verschiedene Probleme sind vorhanden, die Share Bibliothek WEITERE DOKUMENTATION Das Handbuch von Maxima existiert in vielen Formaten, z.B. als HTML oder PDF Dokument. KOMMANDOS FUR ANFANGER Diese Liste inkludiert Befehle, die ein Anfanger nutzlich finden konnte, bevor das gesamte Benutzerhandbuch und weitere Dokumentation konsultiert wird. batch("myfile"); Fuhrt den Inhalt der Datei myfile, aus, die Datei sollte Maxima- Kommandos beinhalten. closefile("myfile"); Schliesst die Sitzung, die durch das writefile Kommando (siehe unten) begonnen wurde. demo("myfile"); Fuhrt den Inhalt der Datei myfile, Schritt fur Schritt aus (die Datei sollte Maxima-Kommandos) beinhalten. functions; Gibt die Liste der derzeit definierten Funktionen aus. infolists; Gibt die Liste der verfugbaren Informationslisten aus. kill(objectlist); Loscht die Objekte, die als Argument angegeben werden. kill(all); Loscht alle Objekte, die durch den Benutzer erzeugt wurden, Maxima wird in den Startzustand versetzt. quit(); Beendet Maxima. reset(); Setzt alle Maxima Kontrollparameter auf den Standardwert. values; Gibt die Liste der derzeit zugewiesenen Variablennamen aus. writefile("myfile"); Schreibt eine Sitzung der folgenden Kommandos in die Datei myfile; (nur eine Datei kann gleichzeitig geoffnet sein) und das closefile Kommando muss ausgefuhrt werden, bevor Maxima beendet wird, um die Datei ordnungsgemass zu schliessen. PLOTTING BEFEHLE Maxima kann 2D und 3-dimensionale Plots erzeugen. Hier ein einfaches Beispiel fur einen 2D-Plot: plot2d (sin(x), [x, -2*%pi, 2*%pi]); und ein einfaches dreidimensionales Beispiel: plot3d (2^(-u^2 + v^2), [u, -5, 5], [v, -7, 7]); Standardmassig werden Plots mit Hilfe von gnuplot erzeugt. Es gibt weitere Moglichkeiten fur Plots, siehe "? plot_options". Fur weitere Informationen zu Plotting Funktionen siehe "? plot". DATEIEN /usr/lib/maxima/5.47.0/binary-lisp Compilierte Dateien der Lisp-Implementation lisp /usr/info Haupt-Dokumentations-Directory, beinhaltet info-Dateien, die fur den 'describe'-Befehl verwendet werden oder auch zur Anzeige in Emacs oder einem anderen Info-Anzeigeprogramm. /usr/share/maxima/5.47.0/doc/html HTML Version der info-Dokumentation. /usr/share/maxima/5.47.0/demo Maxima Demonstrations-Dateien. /usr/share/maxima/5.47.0/emacs Elisp Dateien fur Verwendung unter Emacs oder XEmacs. /usr/share/maxima/5.47.0/share Externe Pakete. /usr/share/maxima/5.47.0/doc/share Documentation fur externe Pakete. /usr/share/maxima/5.47.0/src Vollstandiger Maxima-Quellcode. /usr/share/maxima/5.47.0/tests Dateien der Testprogramme. /usr/share/maxima/5.47.0/xmaxima Dateien fur Xmaxima. /usr/libexec/maxima/5.47.0/ Maxima Hilfs-Skripte. UMGEBUNGSVARIABLEN MAXIMA_USERDIR Directory fur benutzerspezifische Einstellungsdateien. Der standardmassige Suchpfad von Maxima beinhaltet MAXIMA_USERDIR. Standardwert: $HOME/.maxima. MAXIMA_PREFIX Maxima sucht seine Eingabedateien im Verzeichnis, das zum Zeitpunkt der Compilierung konfiguriert wurde: /usr. Maxima kann in ein anderes Verzeichnis verschoben werden, solange das maxima Startskript die selbe relative Position wie die restlichen Maxima Dateien beibehalt. Falls das maxima Skript unabhangig davon verschoben werden soll, muss MAXIMA_PREFIX zum Pfad der Maxima-Dateien zeigen. MAXIMA_DIRECTORY MAXIMA_DIRECTORY ist aquivalent zu MAXIMA_PREFIX. Es ist nur aus Kompatiblitatsgrunden zu alten Maxima-Versionen vorhanden. Maxima verwendet diverse andere Umgebungsvariablen fur die Kommunikation zwischen dem maxima Skript und dem Lisp-Abbild. Alle diese Variablen starten mit MAXIMA_. Eine Anderung durch den Benutzer sollte nicht notwendig sein. EINSTELLUNGSDATEIEN maximarc maximarc wird vom maxima Skript beim Start eingelesen. Es sollte im Verzeichnis, auf das die Variable $MAXIMA_USERDIR zeigt (siehe oben) vorhanden sein. maximarc kann verwendet werden, um beispielsweise die standardmassige Lisp-Implementation zu andern, z.B. durch die Zeile "MAXIMA_LISP=cmucl" (um CMUCL Lisp auszuwahlen). maxima-init.lisp Beim Programmstart wird die Lisp-Datei maxima-init.lisp eingelesen, falls sie im Suchpfad gefuden wird. Fur userspezifische Einstellungen sollte maxima-init.lisp im Verzeichnis $MAXIMA_USERDIR vorhanden sein (siehe oben). Maxima hat ublicherweise eine systemweite maxima-init.lisp Datei im Maxima 'share' Verzeichnis, man kann diese Datei in das $MAXIMA_USERDIR kopieren, um dort eigene Anderungen zu machen. Alternativ kann man eine Lisp-Initialisierungs-Datei mit den Kommandozeilenoptionen --init-lisp oder --init laden. maxima-init.mac Beim Programmstart wird die Maxima-Datei maxima-init.mac eingelesen, falls sie im Suchpfad gefuden wird. Fur userspezifische Einstellungen sollte maxima-init.mac im Verzeichnis $MAXIMA_USERDIR vorhanden sein (siehe oben). Maxima hat ublicherweise eine systemweite maxima-init.mac Datei im Maxima 'share' Verzeichnis, man kann diese Datei in das $MAXIMA_USERDIR kopieren, um dort eigene Anderungen zu machen. Alternativ kann man eine Maxima-Initialisierungs-Datei mit den Kommandozeilenoptionen --init-mac oder --init laden. ~/.xmaximarc Xmaxima speichert hier userspezifische Einstellungen. ~/.xmaxima_history Xmaxima speichert hier die Kommando-Historie. REFERENZEN Alte Refererenz: MACSYMA Reference Manual (volumes 1 and 2). The Mathlab Group, Laboratory for Computer Science, MIT. Version 10. January 1983. Neuere Referenzen: FEHLER Maxima ist ein komplexes System. Es beinhaltet sowohl bekannte als auch unbekannte Fehler. Verwenden Sie es auf eigenes Risiko. Die Maxima- Fehlerdatenbank ist verfugbar unter: Neue Fehlermeldungen (und -korrekturen) sind gern gesehen. Bitte inkludieren Sie die Ausgabe der Maxima-Funktion "build_info()" in die Meldung. Und sehen Sie zuvor nach, ob der Fehler nicht schon gemeldet wurde. AUTOREN MACSYMA (Project MAC's SYmbolic MAnipulation System) wurde entwickelt von der Mathlab group am MIT Laboratory for Computer Science (ursprunglich bekannt als Project MAC), wahrend der Jahre 1969-1972. Die Arbeit wurde unterstutzt durch die Zuschusse NSG 1323 der National Aeronautics and Space Administration, N00014-77-C-0641 des Buros fur Naval Research, ET-78-C-02-4687 des U.S. Department of Energy, und F49620-79-C-020 der U.S. Air Force. MACSYMA wurde weiterentwickelt, um auf UNIX Betriebssystemen verwendet zu werden (zur Verwendung auf DEC VAX Computern und Sun Workstations), durch Richard Fateman und Kollegen auf der University of California in Berkeley; diese Version von MACSYMA ist bekannt als VAXIMA. Die derzeitige Version hat ihre Ursprunge in den Weiterentwicklungen der Public Domain Version MIT MACSYMA for GNU Common Lisp, die von William Schelter, University of Texas in Austin bis 2001 betreut wurde. Es beinhaltet viele Erweiterungen und Verbesserungen zum Original. Die ursprungliche Version dieser Manualseite wurde von R. P. C. Rodgers (UCSF School of Pharmacy, San Francisco, CA 94143 (rodgers@maxwell.mmwb.ucsf.edu) 1989 verfasst. Sie wurde erweitert von James Amundson in 2002. Die deutsche Ubersetzung stammt von Wolfgang Dautermann. Maxima wird nun entwickelt und betreut vom Maxima Projekt auf Sourceforge. SIEHE AUCH wxmaxima(1) 2022-07-18 MAXIMA(1)