Rechnen mit beliebig exakten Zahlen oder ganz ohne Zahlen, nur mit Symbolen: Computeralgebra-Systeme beherrschen beides. Sie zeigen die Ergebnisse als Zahl, Formel oder als 3D-Grafik. Moderne Programme wie das hier vorgestellte Maple 8 eignen sich auch für Technical Computing.
Sie gehören zu den interessantesten und anspruchsvollsten Programmen, und das nicht nur für Mathematiker: Computeralgebra-Systeme (CAS) unterscheiden sich grundlegend von numerischen Programmiersprachen wie Fortran, C/C++ oder Pascal/Delphi. Letztere sind darauf ausgelegt, Zahlen als Lösungen für Gleichungen oder Relationen zu erhalten, sie nutzen dazu exakte Verfahren oder Näherungen.
Ob die Ergebnisse exakt sind, hängt neben dem Verfahren auch vom Typ der gewählten Zahl ab (etwa Integer oder Floating-Point). So lassen sich die Ergebnisse exakter Verfahren mit Floating- Point-Zahlen oft nur als Näherung darstellen. Der Vorteil dieser Art zu Rechnen ist die hohe Geschwindigkeit.
CA-Systeme rechnen mit Symbolen und Zahlen. Sie stellen Zahlen beliebig genau dar: 1/3 ist in einem CAS eben nicht 0,333333333…, sondern der Bruch 1/3. Das hat weitreichende Konsequenzen für die Lösung algebraischer Aufgaben, hat aber auch entscheidende Nachteile für die Rechenzeit. Längere Algorithmen müssen diese Brüche mitschleppen, wobei Zähler und Nenner ansehnliche Größenordnungen erreichen können. Dafür ist das Resultat aber exakt.
Beliebig genau rechnen
Numerische Sprachen kürzen nach jedem Rechenschritt radikal entweder auf die eingestellte oder auf die maximal erreichbare Genauigkeit. Rundungs- oder Abschneidefehler können sich dabei zu völlig falschen Ergebnissen summieren. Allerdings kommt das in durchschnittlich komplexen Problemlösungen kaum vor. Das Maple-Worksheet in Abbildung 1 zeigt an einem Beispiel, in welchen Rechenschritten Gleitkommazahlen zum Problem werden.
Eine weitere Besonderheit ist das Rechnen mit Symbolen: Die Ergebnisse von Rechnungen können auch Symbole (etwa frei wählbare Parameter) enthalten und nicht nur aus einer Zahl bestehen. Diese Symbole sind für das Interpretieren der Ergebnisse oft von entscheidender Bedeutung. Sie liefern dem Anwender tiefere Einsichten in die zugrunde liegende Theorie, als dies rein numerische Programme könnten.
Im Laufe der Zeit ist eine Reihe von CA-Systemen entstanden, die sich in zwei Gruppen einteilen lassen.

Abbildung 1: Dieses Maple-Worksheet demonstriert den Unterschied zwischen genauer und näherungsweiser Darstellung von Zahlen: Das Runden von Zwischenergebnissen verfälscht das Endergebnis.
Groß und klein
Kleinere CAS sind auf bestimmte Gebiete spezialisiert und erheben den Anspruch, dort auch schnell und gut zu arbeiten. Zudem sind sie – als Entwicklungsprodukte universitärer Forschung – meist Freeware oder Shareware, in jedem Fall aber preiswert. Zu dieser Gruppe zählen MuPAD[1], Fermat, Cocoa, Singular, Form und Reduce. Dabei ist MuPAD in Funktionalität und Vermarktung eher ein Grenzgänger.
Große universelle CAS umfassen neben der symbolischen (algebraischen) Rechenweise einen guten numerischen Part und eine ausgereifte Grafik. Diese Produkte erstellen auch qualitativ hochwertige Dokumente und nutzen Web-Technologien. Ihre Entwickler sprechen oft schon nicht mehr von CAS, sie wollen Systeme für das Technical Computing schaffen.
Solche Produkte sprengen den Rahmen universitärer Gruppen. Früher oder später entstehen Unternehmen, die die Entwicklung, Koordination und Vermarktung kommerziell organisieren. Bekannte Beispiele für große CAS sind Maple, Mathematica, Macsyma oder Axiom. Insbesondere Maple (Waterloo Maple) und Mathematica (Wolfram Research) haben durch ihr Marketing und den durchorganisierten Vertrieb einen großen Marktanteil erzielt.
Die Zielgruppe dieser Softwaresysteme sind Universitäten, Hochschulen und technische Unternehmen mit einem recht breiten Spektrum von Anwendungsmöglichkeiten. Die Preise sind entsprechend und eine Hemmschwelle für den Einsatz etwa in Schulen. Dabei könnten gerade Schulen solche Systeme mit großem Gewinn einsetzen. Die Nutzeranteile von Maple in Deutschland und Österreich zeigen dies deutlich, siehe Tabelle 1.
Das kann Maple 8
Die universellen CAS haben sich in den letzten Jahren immer weiter in Richtung einer Gesamtlösungs-Software entwickelt. Dabei wurden neben dem symbolischen Rechenmodus auch die Numerik und die Grafik weiterentwickelt. Der Anwender soll ein komplexes Problem in folgenden Schritten lösen können, ohne das Programm zu wechseln:
- Entwurf des Algorithmus
- Test des Algorithmus
- Anwendung auf die Problemstellung
- Anspruchsvolle Dokumentation
Die Schritte stellen unterschiedliche Anforderungen. Bei den ersten beiden kommt es auf hohe Flexibilität und Transparenz an, während anspruchsvolle Algorithmen und Funktionen zum Einsatz kommen. Der Anwender will den entworfenen Algorithmus nach allen möglichen Konsequenzen austesten. Das ist mit rein numerischen Verfahren oft nicht zu erreichen.
Der dritte Schritt verlangt eine hohe Rechengeschwindigkeit. Die ist oft noch eine Schwäche der CAS: Da sie keine Compilersprachen sind, ist ihre Rechengeschwindigkeit bei Numerik geringer als bei C/C++ oder Fortran. Der letzte Punkt verlangt die Fähigkeiten eines Textverarbeitungssystems der Oberklasse. Hier wurde in den vergangenen Jahren viel Arbeit geleistet.
Nach außen zeigt sich dieses Konzept darin, dass der Anwender seine gesamte Sitzung innerhalb von Sheets oder Notebooks durchführt. In diese formalen Seiten schreibt er seinen Programmcode, seine Texte, führt die Rechnungen durch und erhält dort auch die symbolischen, numerischen und grafischen Resultate. Man kann ganze Bücher mit diesen Nutzeroberflächen schreiben. Puristen verwenden eher die Kommadozeilen-Versionen – vor allem dann, wenn es nur auf die Rechnung ankommt.
Zentrale Features
Zu den zentralen Features von Maple gehören neben dem symbolischen (algebraischen) Modus ein numerischer Modus sowie eine Grafikausgabe. Der Schwerpunkt der Beurteilung soll aber auf dem symbolischen Modus liegen: Mit dessen Möglichkeiten steht und fällt die Akzeptanz des CAS. Dieser Modus lässt sich weiter unterteilen:
- Basisoperationen, Ersetzungen, Vereinfachungen
- Analysis (Calculus)
Im ersten Punkt bietet Maple 8 den Standard, den man auch von anderen Systemen kennt. Als Beispiel sei die Vereinfachung von Ausdrücken genannt: Diese Funktion enthält eine Reihe von Algorithmen, die im Laufe der Jahre immer weiter verbessert wurden. Leistungsfähige Vereinfachungsroutinen sind für komplexe Aufgabenstellungen von großer Bedeutung. Insbesondere kann Maple auch Annahmen über Wertebereiche oder andere Nebenbedingungen in die Vereinfachungen einbeziehen.
Unter Calculus sind vor allem das Lösen von Gleichungen und (partiellen) Differentialgleichungen (DGL), die Integration sowie das Lösen von Grenzwertaufgaben zu verstehen. Für einen großen Teil der Anwender in Wissenschaft und Technik ist dieser Teil das Herzstück: Fast alle dort betrachteten Probleme führen zu Differentialgleichungen. Hat man deren allgemeine symbolische Lösung zur Hand, kann man die Aufgabenstellung nach allen Seiten hin fundiert untersuchen – ideal für Techniker, Wissenschaftler oder Studenten.
Numerischer Modus
Ein numerischer Modus gehört nicht zu den klassischen Aufgaben der symbolischen Rechnung. Die Intention, Systeme zum universellen Gebrauch in vielen Gebieten von Wissenschaft und Technik zu entwickeln, war sicherlich ein starker Antrieb, diesen Modus einzuführen. Um nicht zu sehr hinter lang erprobte numerische Routinen zurückzufallen, ging Maple eine Allianz mit NAG ein. Die wichtigsten Routinen zur numerischen Lösung von Aufgaben der Linearen Algebra stammen aus der bewährten NAG-Programmbibliothek. Damit löst dieses CAS die Standardaufgaben aus der Vektor- oder Matrixrechnung mit vernünftiger Geschwindigkeit.
Maple unterscheidet zwischen zwei Arten von Dezimalzahlen: Software Floating-Point ist die Standarddarstellung von Dezimalzahlen. Sie erlaubt eine beliebige Genauigkeit beim numerischen Rechnen, unabhängig vom verwendeten Computer. Die Genauigkeit wird durch die Variable »Digits« gesteuert.
Im Gegensatz dazu sind Hardware-Floating-Point-Zahlen an die maschineninterne Darstellung gebunden. Rechnungen mit dieser Zahlendarstellung sind meist schneller, allerdings hängt die Genauigkeit vom Prozessor ab.
Das Schlüsselkommando für Floating-Point-Berechnungen ist »evalf«. Es veranlasst Maple die entsprechenden Operationen im Software-Floating-Point-Modus durchzuführen. Zudem hat Maple für einige symbolische und numerische Funktionen, die dasselbe Problem lösen, unterschiedliche Bezeichnungen eingeführt. Sie greifen auf unterschiedliche Routinen zurück. So ist es für eine rein numerische Integration oft nicht sinnvoll, die symbolische Rechnung auszuführen, um im Ergebnis dann doch Zahlen einzusetzen. Es geht viel schneller, gleich effiziente numerische Algorithmen zu verwenden.
»evalhf« ist die Entsprechung für die Hardware-Floa- ting-Point-Zahlen. Allerdings ist dieses Kommando im Vergleich zu »evalf« mit einigen Einschränkungen zu verwenden. Neu in Version 8 ist ein numerischer Löser für partielle Differentialgleichungen. Dazu wurde die Funktion »pdsolve« wesentlich erweitert.
Grafik
Die grafischen Darstellungsmöglichkeiten unter Maple 8 sind äußerst vielfältig, es bleiben kaum Wünsche offen. Wer doch etwas vermisst, kann die grafischen Routinen durch eigenen Maple-Code beinahe beliebig anpassen. Zu den Grafikroutinen gehören:
- Grundlegende Bibliotheksroutinen, etwa »plot« oder »plot3d«
- Spezielle Grafikroutinen in den Paketen »plots« und »plottools«, inklusive der Animation von Grafiken
- Das »DEtools«-Paket für die Lösungen von Differentialgleichungen
- »stats« für statistische Daten
Besonders die beiden letzten Pakete sind für anspruchsvolle Aufgaben von großem Wert. Wer sich mit der Programmierung von variablen grafischen Objekten beschäftigt hat, weiß es zu schätzen, wie einfach Maple die Resultate in hoher Qualität darstellt: Abbildung 2 zeigt die Mandelbrot-Menge, aufgebaut mit einer Maple-Standard-Grafikfunktion.
In Version 8 zeigt ein neues Paket, wie sich mit Maple das Konzept der ganzheitlichen Lösung von Problemen im Zusammenhang mit einer profunden Dokumentation umsetzen lässt: »Student Calculus1« ist auf Studenten der ersten Semester ausgerichtet. Das Paket enthält pädagogisch gut aufbereitete Problemstellungen und Lösungen aus der Analysis von Funktionen einer Variablen.

Abbildung 2: Maple 8 kann auch komplexe 3D-Grafiken darstellen: »plot3d« zeigt, wie die Mandelbrot-Menge im gegebenen Wertebereich aussieht.
Die Struktur von Maple
Maple besteht aus den drei Komponenten Kern, Programmbibliothek und Nutzer-Interface. Der Kern ist in C geschrieben und für die Lowlevel-Operationen verantwortlich. Dazu zählen Arithmetik, Datei-Ein- und Ausgabe, Ausführung der Maple-Programmiersprache und die effiziente Ausführung der grundlegenden mathematischen Operationen (etwa Ableitung von Polynomen).
Die Programmbibliothek enthält fast alle mathematischen Funktionen. Sie ist in der Maple-Sprache geschrieben. Teile von ihr werden bei Bedarf vom Kern geladen. Zum Nutzer-Interface gehören das GUI und die Kommandozeilen-Version. Auch fremde Programmsysteme können die Maple-Routinen nutzen und dabei eigene User-Interfaces verwenden. Ein prominentes Beispiel ist das Technik-Programm Matlab. Seit neuestem kann der Anwender auch eigene GUIs schreiben – Maple enthält dazu so genannte Maplets.
Maple unterscheidet fünf interne Funktionsgruppen:
- Evaluatoren
- Algebraische Funktionen
- Algebraische Dienstfunktionen
- Datenstruktur-Manipulatoren
- Allgemeine Dienstfunktionen
Evaluatoren sind für alle Arten von Berechnungen verantwortlich. Dazu zählen Zuordnungen (Statements), algebraische Ausdrücke, boolesche Ausdrücke, Namensbildung, die beliebig genaue Floating-Point- sowie die Hardware-Floating-Point-Arithmetik.
Zu den algebraischen Funktionen zählen die Basisfunktionen »diff« (Ableitungen), »divide« (Teilung von Polynomen) und »coeff« (Auffinden der Koeffizienten von Polynomen). Algebraische Dienstfunktionen lassen sich dagegen meist nicht direkt aufrufen, sie werden nur von Funktionen der oberen Gruppe verwendet. Beispiele sind die grundlegenden Vereinfacher von Ausdrücken oder interne Arithmetik-Pakete.
Datenstruktur-Manipulatoren arbeiten nicht auf mathematischen Objekten, sondern auf Datenstrukturen. Zu diesen Manipulatoren zählen »op« (Auswahl von Operanden eines Ausdrucks) und »length« (Bestimmung der Länge eines Ausdrucks). Die letzte Gruppe – allgemeine Dienstfunktionen – liegt in der Hierarchie ganz weit unten. Sie kümmert sich um die Speicherarbeit, das interne Input/Output-Management und um Programm-Exceptions.
Der Maple-Anwender kann auf weit über 3000 Kommandos zurückgreifen, von Maple-Routinen über Dienstfunktionen bis zu Evaluatoren. Damit gehört Maple zu den umfangreichsten Programmsystemen seiner Art.
Technical Computing in Aktion |
|
Die Folge der Abbildungen 3a bis 3c demonstriert das ganzheitliche Maple-Konzept. Jedes Bild zeigt ein Worksheet. Der Anwender gibt darin seine Texte und die zu lösenden Aufgaben ein. Maple liefert den entsprechenden Output. Die Sheets sind äußerst informative, interaktive Dokumente und plattformübergreifend austauschbar. Andere Benutzer können die Rechnungen jederzeit wiederholen, auch mit eigenen Modifizierungen. Das nutzen etwa Ingenieure zur Kommunikation mit Kollegen, Lehrer und Dozenten zur Ausarbeitung ganzer Mathematik- oder Physik-Kurse. In Abbildung 3a wird die grundlegende Differentialgleichung definiert und symbolisch gelöst. In roter Farbe ist der auszuführende Code dargestellt, Maples Antwort ist blau gefärbt. Die Eingabe erfolgt im Prinzip ganz genau so, wie es der Nutzer auch auf dem Papier machen würde. Kleinere Ausnahmen sind zum Beispiel das Beenden von Anweisungen oder die Zuweisung von Werten. Dieses Darstellungsprinzip erleichtert die Handhabung des Programms erheblich. Maple bemüht sich sehr darum, die Ergebnisse so übersichtlich wie möglich darzustellen. Abbildung 3b zeigt zwei Manipulationen, die das Verhalten der symbolischen Lösung näher charakterisieren sollen: einmal für kleine Zeiten, zweitens für große Zeit-Werte. Oft lassen komplexe Resultate keine einfache Beurteilung ihres Verhaltens zu. Abbildung 3c schließlich demonstriert die numerische Lösung der Differentialgleichung aus Abbildung 3a. Maple gibt hier dem Anwender die sehr hilfreiche Möglichkeit, das Resultat sofort grafisch darzustellen. Dazu lädt man nur die Routinen aus dem Programmpaket DEtools hinzu, den Rest erledigt Maple. |

Abbildung 3a: An einer Feder hängt eine Masse, die einen kleinen Schubs erhält. Wie verhält sich die Masse? Maple findet die allgemeine, symbolische Lösung.

Abbildung 3b: Die allgemeine Lösung für den Federschwinger mit Reibung ist recht unübersichtlich. Maple kann die Formel aber weiter vereinfachen.

Abbildung 3c: Anschaulich wird das Verhalten des Federschwingers, wenn Maple seine Auslenkung grafisch anzeigt. Dazu muss es die Gleichung numerisch lösen.
Programmieren mit Maple
In der Maple-eigenen Programmiersprache können die Nutzer komplexe Programme wohlstrukturiert schreiben. Wer sich mit C, Fortran oder Pascal/Delphi auskennt, dürfte keine Schwierigkeiten haben Maple zu lernen. Auch für Einsteiger ist die Maple-Sprache lehrreich: Wer sie kennt, versteht schnell die numerischen Programmiersprachen.
Da Maple keine Compilersprache ist, kann man den Programmcode sofort nach dem Schreiben testen. Gerade für Anfänger ist das hilfreich, da sie sich nicht mit Compiler-Optionen, Makefiles oder Bibliothekseinbindungen herumschlagen müssen.
Zu den zentralen Aspekten der Maple-Sprache gehören Prozeduren, Module und Pakete. Für komplexere Anwendungen ist diese Strukturierung unerlässlich. Bei Maple bleiben hier kaum Wünsche offen. Die Module und Prozeduren sind sogar von der verwendeten Plattform unabhängig. Pakete sind Sammlungen von Prozeduren und Daten, die Berechnungen in speziellen Gebieten ermöglichen. Das einfaches Beispiel einer Prozedur in der Maple-Programmiersprache ist in Abbildung 2 zu sehen.
Offen für fremde Sprachen
Oft ist es sinnvoll, Maple mit anderen Programmiersprachen zu verbinden. Beide Richtungen sind möglich: Mit der »CodeGeneration«-Funktion übersetzt Maple Code der eigenen Sprache in den Code der numerischen Compilersprachen C, Fortran oder Java.
Maple verarbeitet auch kompilierten Code anderer Hochsprachen. Vorausgesetzt er liegt als Bibliothek vor. Unter Linux muss es eine Shared Library sein: »lib XYZ.so«. Mit Hilfe der Maple-Funktion »define_external« lässt sich die eingebundene Routine dann wie eine Maple-Prozedur verwenden. Der Vorteil kann in der Rechengeschwindigkeit oder in der Nutzung spezieller numerischer Algorithmen liegen.
Maple 8 hat mit den Maplets eine neue Funktionalität eingeführt. Maplets sind grafische Nutzerschnittstellen, die innerhalb einer Maple-Sitzung laufen. Sie erlauben es dem Anwender, Pakete und Prozeduren mit interaktiven Fenstern und Dialogen zu kombinieren. Er kann so eigene Oberflächen gestalten. Leider sind diese nur innerhalb einer Maple-Sitzung aufrufbar. Wie der Name ahnen lässt, verwendet das Maplet-Paket das Java Runtime Environment.
Das Arbeiten mit XML-Dateien wurde in Version 8 weiter verbessert. Es sind neue und flexiblere Funktionen hinzugekommen. Natürlich muss der Anwender dabei immer berücksichtigen, dass Maple eigene Konventionen verwendet.
Gemeinschaft der Anwender
Da Maple seit vielen Jahren auf dem Markt ist, hat sich eine große Nutzergemeinschaft gebildet. Hinzu kommt eine große Anzahl von Büchern, die sich mit speziellen Anwendungsfeldern in Wissenschaft und Technik beschäftigen. Wichtig sind auch die vielen Prozeduren und Pakete, die sich der Anwender im Bedarfsfall kostenlos übers Internet herunterladen kann.
Waterloo Maple leistet hierbei (natürlich nicht uneigennützig) umfassende Unterstützung: Die Firma hat ein so genanntes Application Center eingerichtet. Auf[7] können Anwender Hunderte von Beispiellösungen und Maple-Worksheets sowie Programmcode für Dutzende Gebiete herunterladen. Hinzu kommen Verweise auf unzählige Bücher, Reporte und Artikel, die sich direkt oder indirekt auf Maple beziehen. Damit fällt der Einstieg leicht und fortgeschrittene Anwender entdecken laufend Neues. (fjl)
Physik und Computeralgebra |
|
Ein Anwendungsgebiet für CAS ist die Theorie der Elementarteilchen. Das komplexe Regelwerk der Störungstheorie lässt sich in die Programmiersprache eines CAS übersetzen. Damit gelangten die Physiker zu fundamentalen Einsichten in die komplizierte Welt der subatomaren Wechselwirkungen. Aus diesem Bereich kamen schon in den 70er Jahren entscheidende Entwicklungsanstöße für CAS, beginnend mit Reduce und Form. Mit dem Niederländer M. Veltman hat sich auch ein Nobelpreisträger für Physik um die Entwicklung eines effizienten, speziell auf die Bedürfnisse der Störungstheorie zugeschnittenen CAS verdient gemacht: Es handelte sich um Form. Stephen Wolfram und Mathematica sind ebenfalls ein prominentes Beispiel für die Ehe von Physik und CAS. Parallel dazu entdeckten auch die Mathematiker die Möglichkeiten, die ihnen die Computeralgebra für grundlegende Forschungen bieten, unter anderem auf den Gebieten der Gruppentheorie oder der Differentialgleichungen. |
Test und Bewertung |
|
Wie leistungsfähig universelle CAS sind, ist nicht leicht zu beurteilen, oft schwingen subjektive Töne bei Rezensenten mit. Speziell an den Universitäten haben sich einige Experten dazu Gedanken gemacht und für drei große Gebiete Testaufgaben entwickelt oder abgeleitet:
Fast alle Aufgaben in der Forschung berühren früher oder später diese Bereiche. Von Zeit zu Zeit werden die aktuellen Versionen daraufhin getestet, die Resultate sind online zu erhalten. Die Entwickler der CAS nehmen dies durchaus ernst. Besonders bekannt sind die Vergleiche von Michael Wester[2], Laurent Bernardin[3], Hans-Gert Gräbe[4] und Stefan Steinhaus[5]. Ohne auf die Testergebnisse im Einzelnen einzugehen, kann man sagen, dass Maple über alle Vergleichstests hinweg sehr gut abschneidet. Insbesondere gilt dies für wichtige Problemgebiete. Der Maple-Anwender hat also ein Werkzeug in der Hand, das dem aktuellen Stand der Entwicklung entspricht. Er wird in den meisten Fällen selbst komplizierte Probleme lösen können. Für gewöhnliche Differentialgleichungen gibt es eine nahezu klassische Testsuite: das Buch von Kamke “Handbuch der gewöhnlichen Differentialgleichungen”. Es umfasst beinahe alle Typen von gewöhnlichen DGL, die in der angewandten Mathematik vorkommen. Laut E. S. Cheb-Terrab[6] konnte bereits Maple 7 von den 1316 Beispielen 1273 lösen, also 96,7 Prozent. Eine stolze Zahl. Maple hat besonders bei gewöhnlichen und partiellen Differentialgleichungen immer schon eine führende Rolle gespielt. Das Gleiche gilt für die Algorithmen zur Lösung von Gleichungen. |
Maple 8 |
|
Zentraler Distributor für Deutschland und Österreich: Scientific Computers GmbH Friedlandstr. 18, D-52064 Aachen Webseite: [http://www.scientific.de] Preise (Stand September 2002): Einzelplatz-Vollversion: etwa 2460 Euro Studenten-Version: etwa 230 Euro Hinzu kommen spezielle Lizenzen für die Forschung, für Hochschulen und Schulen sowie individuelle Vereinbarungen. |
Infos |
|
[1] Karl Sarnow, “Mathe-Ass: MuPAD 2.0”, Linux-Magazin 6/02, S. 90 [2] Michael Wester, “A Critique of the Mathematical Abilities of CA Systems”: [http://math.unm.edu/~wester/cas_review.html] [3] Laurent Bernardin, “A Review of Symbolic Solvers”: [http://www.inf.ethz.ch/personal/bernardi/solve/] [4] Hans-Gert Gräbe, “About the Polynomial System Solve Facility of Axiom, Macsyma, Maple, Mathematica, MuPAD and Reduce”: [http://dol.uni-leipzig.de/pub/1998-11/en] [5] Stefan Steinhaus, “Comparison of mathematical programs for data analysis”: [http://www.scientificweb.de/ncrunch/] [6] E. S. Cheb-Terrab, “Comparison of Performances in solving ODEs using Maple 7 and Mathematica 4.1”: [http://lie.uwaterloo.ca/odetools/comparison.html] [7] Maple Application Center: [http://www.mapleapps.com] |
Der Autor |
|
Dr. Holger Perlt ist Physiker und hat auf dem Gebiet der theoretischen Elementarteilchenphysik gearbeitet. Er setzt seit Ende der 70er Jahre Computeralgebra ein. In den letzten Jahren arbeitete er an der Umsetzung moderner Verfahren der selbstlernenden Optimierung in Software für komplexe technologische Abläufe. |








