Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2002  »  11  »  Rechenknecht  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

Computeralgebra und Technical Computing mit Maple 8

Rechenknecht

von Holger Perlt
Erschienen im Linux-Magazin 2002/11

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.


Tabelle 1: Maple-User

Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Whitepaper
Daten Migration - Eine Publikation von Bloor Research

Datenmigrationsprojekte überschreiten häufig das Budget, neigen zu Verzögerung und werden unter Umständen komplett abgebrochen. Bloor Research ist eines der weltweit führenden IT-Forschungs-, Analyse- und Beratungsunternehmen und wird in dem vorliegenden White Paper die wichtigsten Aspekte dieser Problematik näher beleuchten. Ferner werden praktische Empfehlungen für erfolgreiche Migrationsprojekte gegeben, die Sie auf Ihr nächstes Projekt übertragen können.

Download PDF (Registrierung erforderlich)
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele

Über die letzten Jahre hinweg haben sich Open Source Lösungen als fester Bestandteil des gesamten Datenintegrationsmarktes etabliert. Viele Unternehmen haben bereits das Open Source Modell für Ihre Datenintegrationsprojekte aufgegriffen. Das vorliegende White Paper illustriert anhand ausgewählter Fallstudien und Anwendungsbeispiele die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Kommentare (0)