next up previous contents
Next: Maple 9.5 - ein Up: Bibliography Previous: Bibliography   Contents


Neues aus Waterloo: Maple 9.5 und mehr




Thomas Richard (Scientific Computers GmbH, Aachen)
\psfig{figure=images/richard.ps,
width=50mm}
t.richard@scientific.de

Wer seit Maple 6 die ganzzahligen Sprünge in den Versionsnummern gewohnt ist, mag sich fragen, ob 9.5 nur ein halbes Update sei - dem ist nicht so. Es bietet Fortschritte auf allen wesentlichen Gebieten: Symbolik, Numerik, Grafik und GUI sowie Programmierung und Connectivity.

Symbolik

Bekanntlich wurden in Maple 9 neben den inversen Jacobi-Funktionen auch die Mathieu-Funktionen als zweite neue Familie spezieller Funktionen implementiert, doch beim Lösen der Mathieu-Gleichung erhielt man nur eine DESol-Struktur. Dies ist nun anders, d. h. dsolve kennt diese Gleichung und liefert die erwarteten Lösungen.

Im Bereich der partiellen Differentialgleichungen deckt der neue Befehl PDEtools[TWSolutions] die Klasse der Travelling Waves ab und kann z. B. Solitonen als Lösung der Korteweg-deVries-Gleichung berechnen.

Sehr praktisch ist DEtools[difftable] zur verkürzten Eingabe von Differentialausdrücken. Damit lassen sich Ableitungen in Indexschreibweise eintippen, was insbesondere bei partiellen Differentialgleichungen viel Arbeit erspart. Es stellt in gewisser Hinsicht das Gegenstück zum älteren DEtools[declare] dar, welches die Ausgabe übersichtlicher gestaltet.

Der int-Befehl erkennt nun viele Fälle, in denen der Integrand das totale Differential einer Funktion ist. Hierbei kommen natürlich Methoden für exakte Differentialgleichungen zum Einsatz.

Viele kleinere Verbesserungen betreffen simplify, combine und convert; letzteres bietet stark beschleunigte Umwandlungen zwischen den Darstellungen von Ableitungen als Operator bzw. Ausdruck (D bzw. diff). Bei der Partialbruchzerlegung gibt es nun eine Programmer Form, die Faktoren des Nennerpolynoms (sofern schon bekannt) in einer Liste entgegennimmt, ohne eine erneute Faktorisierung zu starten.

Numerik

Die beiden wichtigsten Neuerungen auf diesem Gebiet sind die Bereitstellung eines Pakets für lokale Optimierung und von Lösern für differential-algebraische Gleichungssysteme (DAEs). Optimization basiert auf einer Library der Numerical Algorithms Group, setzt also die Tradition des schrittweisen Einführens von NAG-Routinen in Maple fort. Das Paket behandelt lineare, quadratische, nichtlineare und Least-Squares-Probleme. Sie können in algebraischer Form (skalare Gleichungen), Matrixform oder Operatorform (Maple-Prozedur) formuliert werden. Weitere Kommandos betreffen den Import von Dateien im MPS(X)-Format und einen Maplet-basierten interaktiven Assistenten.

Der Befehl dsolve/numeric erlaubt nun den Fall, dass ein Anfangswertproblem nicht nur gewöhnliche Differentialgleichungen, sondern auch algebraische Gleichungen enthält, die z. B. die Geometrie eines Problems beschreiben (Beispiel: Bewegung einer Pendelspitze auf einer Kreisbahn).

Automatisch werden geeignete DAE-Löser verwendet. Implementiert sind MEBDFI sowie geeignete Modifikationen der Verfahren von Runge-Kutta-Fehlberg und (für steife Systeme) Rosenbrock.

In bestimmten Situationen (nicht nur bei DAEs) ermöglicht die neue Option optimize deutliche Geschwindigkeitssteigerungen durch eine symbolische Vorab-Analyse des eingegebenen Systems.

Im Bereich der numerischen linearen Algebra wurde plattform-spezifisches Tuning betrieben: Unter Windows betrifft dies die Intel Math Kernel Library MKL 6.1, unter Linux und Mac OS X die Bibliotheken ATLAS und Teile von CLAPACK.


Grafik und GUI

Die umfangreichste Neuerung im Bereich der Oberfläche ist das ins Hilfe-System integrierte Mathematische Wörterbuch mit über 5000 Seiten. Es bietet einen alphabetischen Index und kann aus Worksheets oder Hilfeseiten verlinkt werden. Im Standard Worksheet Interface sind viele der Einträge sogar mit Bitmap-Grafiken versehen. Manche Anwender werden das Wörterbuch noch als Interactive Math Dictionary in Erinnerung haben; unter diesem Namen wurde es früher von Maplesoft als eigenständiges Produkt vertrieben.

hierhin kommt eine ganzseitige Anzeige (Scientific Computers)

Ein weiterer langjähriger Wunsch vieler Kunden ist endlich realisiert worden: Zoomen und Verschieben von 2D- und 3D-Grafiken innerhalb eines Plotbereichs. Achsen und Beschriftungen werden dabei korrekt in Ausgangsgröße belassen, so dass die übersichtlichkeit gewahrt bleibt. Animationen blenden nun in der Kontextleiste zusätzlich einen Schieberegler zum direkten Anwählen von Frames an. Damit kann man den dargestellten Ablauf sehr intuitiv beeinflussen. Zwar sind beide grafischen Neuerungen nur im Standard Worksheet Interface implementiert, aber man wird schon nach kurzer Zeit nicht mehr auf sie verzichten wollen.


Programmierung und Connectivity

Maple macht erneut Anleihen bei der objektorientierten Programmierung: Module können nun als Kommando aufgerufen werden, sofern sie eine als ModuleApply gekennzeichnete lokale oder exportierte Prozedur enthalten. Diese kann als Konstruktor für die im Modul implementierten Datenstrukturen dienen. Daneben gibt es ModuleLoad, ModuleUnload und ModulePrint, welche flexibler sind als die bekannten Optionen wie load.

Mit Modulen lässt sich bereits seit Maple 6 das Überladen von Operatoren nachbilden, jedoch war das Zurückschalten auf die ursprüngliche Bedeutung stets mit einem Entladen des Moduls oder gar einem restart verbunden. Diese Einschränkung wird aufgehoben, indem man die neue option overload verwendet. Damit lassen sich nicht nur binäre Operationen überladen, sondern auch eckige, geschweifte und runde Klammern bzw. deren Bedeutungen (Listen und Indizes, Mengen, Funktionsaufrufe). In ähnlicher Weise lassen sich benutzerdefinierte Prozeduren überladen; dazu wird overload zusätzlich als Kommando eingesetzt. Die Zeiten verschachtelter und schwer lesbarer Fallunterscheidungen nach Argument-Typen im Prozedur-Rumpf dürften somit vorbei sein.

Um ein modulbasiertes Paket ohne vollständigen restart zu entladen, gibt es bereits seit Maple 9 den Befehl unwith, welcher jedoch erst jetzt offiziell dokumentiert wurde. ähnliches gilt für den Befehl packages, mit dem man sich die geladenen Pakete anzeigen lassen kann. Dieses Kommando berücksichtigt auch die alten table-basierten Pakete; deren Anzahl ist weiter zurückgegangen, weil einige in das modulbasierte Format konvertiert wurden.

OpenMaple, das in der vorherigen Version eingeführte API zum Aufrufen von Maple aus C-Programmen, wurde auf die Sprachen Java und VisualBasic ausgedehnt. Hierzu werden komplett ausgearbeitete Beispiele mitgeliefert, um dieses recht diffizile Thema zugänglicher zu gestalten.


Technische Änderungen

Bei der Netzwerk-Installation waren zwei Varianten bislang nur mit aufwändiger Nacharbeit möglich, beide werden nun von vornherein angeboten. Die eine betrifft Mac OS X, wofür auch passende Binaries des Lizenzmanagers mitgeliefert werden. Die andere betrifft Windows: Hier wurde das Client-Setup so geändert, dass jetzt alle Dateien lokal installiert werden. Dies spart Bandbreite im Netz und beschleunigt den Start der Applikation. Außerdem wird Windows 2003 Server erstmals offiziell unterstützt. Anwender von SuSE 9.1 und Mandrake 10.0 sollten unbedingt beachten, dass diese beiden Plattformen Maple 9.5.1 erfordern, welches als Patch für 9.5 zum Download bereit steht. Neukunden erhalten seit Mitte September automatisch diese aktualisierte Version auf CD.


Neue Produkte

Professional Toolbox Series
Das oben erwähnte Paket Optimization findet im Allgemeinen (d.h. im nichtkonvexen) Fall lokale Optima. Wer auf globale (also absolut beste) Lösungen angewiesen ist, wird ein anderes Werkzeug in Betracht ziehen.

Global Optimization hat die Reihe der Professional Toolboxes eröffnet und ist bereits auf dem Markt. Es basiert auf dem LGO-System (Lipschitz Global Optimizer) des bekannten Experten Dr. János Pintér, der in Halifax an der Dalhousie University lehrt und die Firma Pintér Consulting Services betreibt. Unten abgebildet sehen Sie den Global Optimization Assistant, umseitig den Global Optimization Plotter.

\includegraphics[width=85mm]{images/GlobalOptimization.ps}
Global Optimization Assistant



\includegraphics[width=85mm]{images/GOT-Plotter.ps}
Global Optimization Plotter



Ebenfalls in Kürze lieferbar ist die Database Integration Toolbox, mit der sich SQL-basierte Datenbanken aus Maple heraus über einen JDBC-Treiber ansprechen lassen. Unterstützt werden alle gängigen Systeme von MySQL bis Oracle.

Darüber hinaus wurde Mitte Juli auf dem Maple Summer Workshop in Waterloo die Vorabversion eines LabVIEW-Konnektors gezeigt, der das von National Instruments (NI) eingeführte Prinzip der Virtuellen Instrumente unterstützt und Maple einen komfortablen Zugang zu dieser verbreiteten Form der Messwerterfassung und -verarbeitung eröffnet.

Als Zusatzprodukte sind die Toolboxen separat zu installieren. Wie bei Maple selbst gibt es Einzelplatz- und Netzwerklizenzen sowie unterschiedliche Preise für akademische und kommerzielle Anwendung.

Ein weiteres gemeinsames Merkmal sind umfangreiche Maplets, so dass Routine-Aufgaben nicht per Kommando im Worksheet erledigt werden müssen.

MapleConnect
ist eine neue Initiative von Maplesoft, die allen Autoren von Paketen, Worksheets und sonstigen Maple-bezogenen Werken entgegenkommt, die ihre Arbeiten kommerziell anbieten möchten. Sie können sich bei deren Vermarktung über die Maplesoft-Webseiten helfen lassen. Dort findet man auch die genauen Vertragsbedingungen sowie alle bereits unter diesem Programm erhältlichen Angebote. Neben diversen Zusatzpaketen ist darunter ein multimedialer Maple-Trainingskurs, der wie ein interaktives Video auf dem PC abläuft.

Parallel dazu sind natürlich freie Beiträge für das Application Center nach wie vor gern gesehen. Neben diversen neuen PowerTools von Anwendern hat Maplesoft eigene Demo-Worksheets und Pakete bereit gestellt, etwa für die häufig nachgefragten Themenbereiche Signal- und Bildverarbeitung.


Student[Calculus1] Source Code
Bekanntlich lassen sich alle in der Maple-Hochsprache implementierten Library-Pakete auflisten und modifizieren, nur stößt diese Offenheit bei den mitgelieferten aufgrund der Komplexität und der fehlenden Kommentare an praktische Grenzen. Als Versuchsballon hat Maplesoft nun den vollständigen Quelltext des Pakets Student[Calculus1] samt Installationsanleitung auf MaplePrimes zur Verfügung gestellt. Experimentierfreudige Benutzer (mit Wartungsvertrag) sind eingeladen eigene Anpassungen oder Erweiterungen vorzunehmen. Bei einem solchen Paket für die Analysis I bieten sich insbesondere Übersetzungen an, um die Akzeptanz im Unterricht außerhalb der englischsprachigen Länder zu steigern. Dies könnte auch dem als separates Produkt vertriebenen Precalculus Interactive Study Guide zugute kommen, einer Maplet-basierten Sammlung von Übungsaufgaben zum Selbstlernen.

Wegen der Fülle der Neuheiten und Ankündigungen sind erst einige deutsche Beschreibungen unter http://www.scientific.de vorhanden, für den Rest sei auf http://www.maplesoft.com verwiesen. Aus dem gleichen Grund muss eine ausführliche Vorstellung von MapleNet und Maple T.A. einem späteren Artikel vorbehalten bleiben.






next up previous contents
Next: Maple 9.5 - ein Up: Bibliography Previous: Bibliography   Contents
Ulrich Schwardmann 2004-12-07