Maple (Software)

aus Wikipedia, der freien Enzyklopädie
Maple

Maple 2016 GUI Interface.png

Maple Standard unter Xubuntu 16.10
Basisdaten

Entwickler Waterloo Maple Inc.
Kategorie Computeralgebrasystem
www.maplesoft.com/products/maple/

Maple (mathematical manipulation language) ist ein englischsprachiges Computeralgebrasystem (CAS) für Algebra, Analysis, diskrete Mathematik, Numerik und viele andere Teilgebiete der Mathematik. Es stellt ferner eine Umgebung für die Entwicklung mathematischer Programme zur Verfügung und ermöglicht die Visualisierung mathematischer Strukturen.

Geschichte

Die erste Version von Maple wurde 1980 von Keith O. Geddes, Gaston H. Gonnet und deren Mitarbeitern von der Symbolic Computation Group an der Universität von Waterloo in der kanadischen Stadt Waterloo (Ontario) programmiert. Ende 1987 gab es Maple bereits in der Version 4.2.

Seit 1988 wird Maple von Maplesoft, einer Abteilung der Firma Waterloo Maple, weiterentwickelt und vermarktet. Waterloo Maple gehört seit September 2009 zur in Japan ansässigen Firma Cybernet Systems Co., Ltd.

Bei der wissenschaftlichen Unterstützung des Maple-Projektes ging und geht es darum, schnelle und effiziente Algorithmen für symbolische Berechnungen zu entwickeln und in das Programm zu integrieren. An diesen Arbeiten sind bzw. waren neben dem Ontario Research Centre for Computer Algebra (ORCCA), bestehend aus der Maple Symbolic Computation Group (Universität von Waterloo) und dem Symbolic Computation Laboratory (Universität von Western Ontario), auch Wissenschaftler an der ETH Zürich, dem Institut national de recherche en informatique et en automatique (INRIA) und vielen anderen Labors weltweit beteiligt.

Seit 1998 gibt es eine Zusammenarbeit zwischen Maplesoft und der Numerical Algorithms Group (NAG). NAG-Komponenten fanden sich erstmals in Maple Release 6 aus dem Jahre 2000. Diese Komponenten führten insbesondere zu einer erheblichen Verbesserung der Rechengeschwindigkeit und der Rechengenauigkeit auf dem Gebiet der Linearen Algebra.

2003 gab es Maple für Windows CE 2.0 für den mobilen Einsatz auf dem Handheld Cassiopeia A-23g. Dieser wurde oft in diversen Oberstufen eingesetzt.[1]

2005 wurde mit Maple 10 ein neuer Dokument-Modus („document mode“) innerhalb der Standardversion von Maple eingeführt. Seither ist es möglich, Maple-Inputs in normaler mathematischer Schreibweise zu editieren. Hierbei lassen sich Texte und mathematische Symbole in derselben Eingabezeile miteinander kombinieren.

Maple 13 bot unter anderem erhebliche Verbesserungen bei der Ausgabe von 3D-Grafiken, neue Prozeduren und neue interaktive Tutoren.

Ab der Version 14 von Maple ist es möglich, zusammen mit anderen Maple-Nutzern auf Worksheets gemeinsam zuzugreifen (MapleCloud). Hierbei kann man eigene Ressourcen allen Maple-Nutzern weltweit oder aber nur den Mitgliedern bestimmter Arbeitsgruppen zur Verfügung stellen.

Maple 15 unterschied sich von den Vorgängerversionen insbesondere durch eine erhebliche Vergrößerung der Rechengeschwindigkeit bei Rechnern, die mit mehreren Prozessoren ausgestattet sind.

Neben neuen Packages (wie zum Beispiel GroupTheory), neuen Rechenbefehlen sowie zahlreichen Verbesserungen bietet Maple ab der Version 17 einen Editor, der die Entwicklung von Quelltext mit Syntax Highlighting und weiteren Funktionalitäten unterstützt. Außerdem werden Funktionsaufrufe jetzt durch die Verwendung von hardwareunterstützten Algorithmen erheblich schneller abgearbeitet als früher.

Benutzeroberfläche

Hauptkomponente der grafischen Benutzeroberfläche von Maple ist das jeweilige Worksheet, in dem interaktiv gearbeitet wird. Es erscheint als Fenster, in das Rechenanweisungen (Maple-Inputs) eingetragen werden. Die Maple-Engine interpretiert diese Anweisungen und liefert entsprechende Ausgaben (Maple-Outputs) zurück.

Typische Maple-Outputs sind Zahlenwerte, Terme, Funktionen, Tabellen, 2- und 3-dimensionale Grafiken, Animationsobjekte und Diagramme. Es ist möglich, die von Maple erzeugten Objekte bzw. Ausdrücke über kontextsensitive Menüs zu bearbeiten.

Das Einfügen mathematischer Symbole, Ausdrücke, Vektoren und Matrizen in Rechenanweisungen wird erleichtert durch die Benutzung von Paletten. Diese bestehen aus für verschiedene Aufgaben vorgefertigten Code-Schnipseln, die per Mausklick dem Worksheet hinzugefügt werden können.

Von der Version 9 an gibt es neben dem Classic Worksheet Maple eine Java-basierte Version Maple Standard. Die Standardversion von Maple bietet eine komfortablere Oberfläche, ist aber andererseits deutlich langsamer als die klassische Variante. Aufgrund dieser zwei Varianten gibt es auch zwei unterschiedliche Arten, Worksheets zu speichern. Man unterscheidet Standard-Worksheets (Dateiendung: mw) und Classic-Worksheets (Dateiendung: mws; kompatibel zu älteren Maple-Versionen).

Ein fertig bearbeitetes Worksheet kann man bei Bedarf exportieren als PDF-, HTML-, LaTeX- oder als RTF-Dokument.

Packages

Maple umfasst einen Kern häufig benutzter Standard-Rechenanweisungen (main library) und zusätzliche, zur Laufzeit mit dem with-Befehl ladbare Pakete (packages). Im Folgenden sind einige der wichtigsten dieser insgesamt über hundert Pakete aufgelistet:

Schnittstellen

Maple besitzt Schnittstellen zu Matlab, Fortran, C, C#, Java, Visual Basic, Python, Perl, R, JavaScript, Julia und Swift, die Maple-Code in diese Zielsprachen übersetzen. Umgekehrt lassen sich Fortran-, C-, C#- oder Java-Routinen in Maple einbinden, und Maple lässt sich aus C, Java und VisualBasic aufrufen (OpenMaple-API).

Features (Auswahl)

  • Mit diesem Befehl löst Maple Differentialgleichungen:[2] dsolve(...)
  • Maple kann Doppelintegral[3] und Tripelintegral[4] lösen.

Anwendungsbeispiele

Es folgen einfache Beispiele für Rechenanweisungen in der ursprünglichen Maple-typischen Notation. In der aktuellen Version ist ein Programmbefehlabschluss mit dem Semikolon nicht mehr erforderlich und die Eingabe der Rechenanweisungen lässt sich alternativ über einen Formeleditor eingeben und die Ausführung über ein Kontextmenü erwirken.

RootofTwo:= evalf[21](sqrt(2));
solve(3*x^2+b*x=7, x);
f:= x -> tan(x)*sqrt(x):
D(f)(x);
  • Berechnen eines unbestimmten und eines bestimmten Integrals:
int(sin(x)^2, x);
int(sin(x)^2, x = 0..Pi/2);
DGL:= diff(y(x),x,x) - 3*y(x) = x:
dsolve({DGL, y(0)=1, D(y)(0)=2}, y(x));
  • Berechnen der Koordinatengleichung einer Kugel:
with(geom3d):
sphere(K, [point(M, 2, 3, -2), 3/4]):
Equation(K, [x, y, z]);
with(plots):
tubeplot({[3*t^2, 2.5*t, 0.2*t, t = -4..5, radius = 4]},
    numpoints = 15,
    tubepoints = 20,
    orientation = [-33, 69]);
with(plots):
y1:= x -> sin(x - 2*Pi*t):
y2:= x -> sin(x + 2*Pi*t):
defs:= x = -2*Pi..2*Pi, t = 0..1, frames = 150:
Wrechts:= animate(y1(x), defs, color = black):
Wlinks:= animate(y2(x), defs, color = black):
Wres:= animate(y1(x)+y2(x), defs, color = red):
display([Wrechts, Wlinks, Wres], axes = NONE);

Literatur

  • Michael B. Monagan et al.: Programmieren mit Maple V, Springer Verlag, 1996, ISBN 978-3-642-61078-3.
  • Maciej Klimek, Grażyna Klimek: Discovering Curves and Surfaces with Maple. Springer, New York 1997, ISBN 978-0-387-94890-4.
  • Hannes Stoppel: Mathematik anschaulich: Brückenkurs mit Maple. Oldenbourg Verlag (2002), ISBN 3-486-25775-7
  • Michael Kofler, Gerhard Bitsch, Michael Komma: Maple – Einführung, Anwendung, Referenz. Addison-Wesley Longman (2002), ISBN 3-8273-7036-1
  • Alexander Walz: Maple 7: Rechnen und Programmieren. Oldenbourg (2002), ISBN 3-486-25542-8
  • Thomas Westermann: Mathematische Probleme lösen mit Maple. Springer Verlag (4. Auflage 2010), ISBN 3-642-12150-0
  • Rüdiger Braun, Reinhold Meise: Analysis mit Maple. Vieweg+Teubner Verlag (2. Auflage 2012), ISBN 978-3-8348-1573-6

Weblinks

Commons: Maple (Software) – Sammlung von Bildern, Videos und Audiodateien

Einzelnachweise

  1. Casio Cassiopeia A-23g Handheld mit Maple (Memento des Originals vom 28. Januar 2013 im Internet Archive)  Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.@1@2Vorlage:Webachiv/IABot/www.casio-europe.com (PDF; 276 kB); abgerufen am 8. Dezember 2012
  2. dsolve - Maple Programming Help. Abgerufen am 4. Dezember 2020.
  3. user manual. Abgerufen am 4. Dezember 2020.
  4. TripleIntegrals.html. Abgerufen am 4. Dezember 2020.