Inhalt
*.wxm - Speichern unter wxMaximawxMaxima speichert Daten (Menüpunkte: <Datei - speichern> bzw. <sichern als>) im ASCII-Format, die Dateien können daher in jedem Editor und Textverarbeitungsprogramm bearbeitet werden (auch wenn im Format wxm ausdrücklich davor gewarnt wird :-)). Beispiel:Die Maxima-Eingabe
wird abgespeichert in der Form von /* [wxMaxima batch file version 1] [ DO NOT EDIT BY HAND! ]*/ /* [ Created by wxMaxima version 0.7.3a ] */ /* [wxMaxima: input start ] */ f(x):=x^2-3*x+5; /* [wxMaxima: input end ] */ /* [wxMaxima: input start ] */ makelist(f(a),a,-4,5); /* [wxMaxima: input end ] */ /* Maxima can't load/batch files which end with a comment! */ "Created with wxMaxima"$ wenn man die Kommentare weglässt, bleiben nur mehr die Eingabezeilen über: f(x):=x^2-3*x+5; makelist(f(a),a,-4,5); *.wxm-Files (wxMaxima-Sitzungen) können über den Menüpunkt <Öffnen> geöffnet werden. Eine weitere Möglichkeit wäre die Verwendung der Maxima-Befehle mit:
Beispiel: |
|
![]() |
![]() |
|
Tip: values, functions - mit Hilfe dieser Befehle können die vorhandenen Funktions- und Variablenbelegungen abgerufen werden. |
|
*.mac - Utility FilesMaxima bietet eine Unzahl von mitgelieferten Utility-Files an. Zu verschiedensten Bereichen gibt es fertige Pakete, die einfach geladen werden können. Es besteht aber natürlich auch die Möglichkeit, derartige Pakete selbst zu erstellen. Maxima kennt den Pfad, unter dem mac-Dateien gespeichert sind und sucht beim Aufruf von load(<Paket>) selbst danach. Bei der hier verwendeten Windows-Installation wären das die Verzeichnisse:
[C:/Dokumente und Einstellungen/User/maxima/###.{mac,mc},
C:\Programme\Maxima-5.13.0/share/maxima/5.13.0/share/###.{mac,mc},
C:\Programme\Maxima-5.13.0/share/maxima/5.13.0/share/
{affine,algebra,algebra/charsets,algebra/solver,calculus,combinatorics,contrib,
contrib/boolsimp,contrib/descriptive,contrib/diffequations,
contrib/diffequations/tests,contrib/distrib,contrib/ezunits,contrib/format,
contrib/fractals,contrib/gentran,contrib/gentran/test,contrib/Grobner,
contrib/levin,contrib/lurkmathml,contrib/maximaMathML,contrib/mcclim,
contrib/numericalio,contrib/pdiff,contrib/prim,contrib/rand,contrib/sarag,
contrib/simplex,contrib/simplex/Tests,contrib/solve_rec,contrib/state,
contrib/stats,contrib/stringproc,contrib/vector3d,contrib/unit,
contrib/Zeilberger,diff_form,diffequations,dynamics,draw,lapack,lbfgs,
linearalgebra,integequations,integration,macro,matrix,misc,numeric,orthopoly,
physics,simplification,sym,tensor,tensor/tests,trigonometry,utils,vector}
/###.{mac,mc}]
Um selbst nachzuschauen, wohin Maxima speichert, kann man den Befehl file_search_maxima verwenden. mac-Dateien sind meist Sammlungen von neuen Funktionen (entweder über bestehende Pakete oder selbstdefiniert), um den Befehlsvorrat von Maxima zu ergänzen. Im schulischen Umfeld interessante Pakete sind z.B.:
Tip: Beispiel:Wir basteln ein Paket für die Rentenrechnung - zuerst die Eingabe der Formeln über wxMaxima.
Wir überprüfen unsere Formeln an einem einfachen Beispiel.
Wie sieht nun das Utility-File aus? Wir reduzieren die Datei auf ihre "Essenz" in einem ASCII-Editor. /* Rentenrechnung - Walter Wegscheider, nach P. Lupus */ /* Variable: k0 (Barwert), kt (Endwert), t (Anzahl der Raten), r (Ratenhoehe), */ /* p (Zinsfuss), s (0 für nachschuessig, 1 für vorschuessig) */ /* Funktionen: */ /* tvm_k0(kt,t,r,p,s) ... berechnet den Barwert einer Rente */ /* tvm_kt(k0,t,r,p,s) ... berechnet den Endwert einer Rente */ /* tvm_t(k0,kt,r,p,s) ... berechnet die Anz. der notw. Einzahlungen einer Rente */ /* tvm_r(k0,kt,t,p,s) ... berechnet die notwendige Hoehe der Rate einer Rente */ eq:kt=((s*p+1)*r-(p+1)^t*((s*p*r)+r+p*k0))/p$ solve_variable(eq,vari):=ev(rhs(solve(eq,vari)[1]),fullratsimp)$ tvm_k0(kt,t,r,p,s):=solve_variable(eq,k0)$ tvm_kt(k0,t,r,p,s):=solve_variable(eq,kt)$ tvm_t(k0,kt,r,p,s):=solve_variable(eq,t)$ tvm_r(k0,kt,t,p,s):=solve_variable(eq,r)$ Nun können wir das vorher im richtigen Ordner abgespeicherte File verwenden.
MAXIMA-Datei zum Rentenproblem (e_grund03a.wxm). |
|
Einlesen von TextfilesTextdateien können mit Hilfe des Pakets numericalio eingelesen werden. Das Paket / load("numericalio") / bietet dafür mehrere Funktionen an - read_list, read_data, read_matrix.
Als Trennzeichen können gewählt werden:
Beispiel:Die Körpergrößen der Schüler einer Schulmannschaft werden in einer Textdatei durch Beistriche getrennt abgespeichert (bzw. als CSV-Datei aus einer Datenbank bzw. Tabellenkalkulation ausgelesen).
Anschließend wird die Liste in Maxima eingelesen.
|
|
Makros, Ein- und AusgabeMit Hilfe der Befehle read() und print() können einfache Makros realisiert werden. Beispiel:
p:read("Geben Sie bitte p ein!");
q:read("Geben Sie bitte q ein!");
loes:solve(x^2+p*x+q=0,x);
print("Die Loesungen fuer x lauten:",loes);
Diese Zeilen werden in eine mac-Datei eingefügt. Hinweis: - günstig ist es, wenn vor dem Aufruf eines Makros die Variablenbelegungen gelöscht werden. Dies geschieht über: kill(all) MAXIMA-Utility/Makro-File dazu (e_grund03c.mac). |
|
Links:
|
|
© PH-NOe, letzte Änderung am 20. Dezember 2007, erstellt von Walter Wegscheider