Mathematica
Mathematica ist ein kommerzielles Softwarepaket der Firma Wolfram Research, Inc. Es ist eines der meistbenutzten mathematisch-naturwissenschaftlichen Programmpakete. Enthalten sind
- ein Computer-Algebra-System zur symbolischen Verarbeitung von Gleichungen
- eine Numerik-Software zum numerischen Lösen oder Auswerten von Gleichungen
- eine Visualisierungs-Tool zum Darstellen von Graphen
- eine Programmiersprache, die Elemente des prozeduralen, objektorientierten und regelbasierten Programmierens in sich vereint
Mathematica-Code wird in einer sog. Notebook-Oberfläche eingegeben, die auch mathematische Sonderzeichen unterstützt (im Gegensatz zu klassischen Programmiersprachen, die allein reinen Text zulassen). Die Auswertung bzw. Abarbeitung des Programmcodes erfolgt in der Regel direkt nach der Eingabe über einen Interpreter, Ergebnisse oder Programmierfehler sind damit sofort ersichtlich, es kann ein interaktives Programmieren erfolgen. Wird Programmcode mehrfach durchlaufen, z. B. beim nicht-interaktiven Programmaufruf, so wird der Programmcode automatisch kompiliert. Der Programmcode ist betriebssystemunabhängig. Mathematica existiert für Linux, Macintosh, Unix und Windows.
Mathematica wird in der Wissenschaft beziehungsweise im Studium natur- oder wirtschaftswissenschaftlicher Fächer eingesetzt. Ebenso wendet es sich an den professionellen Anwender in der Industrie und Wirtschaft. So verwenden Banken Mathematica zur Simulation von Aktienkursentwicklung, Risikoabschätzung bzw. -wandlung und so weiter. Die Anforderung an die Korrektheit der Ergebnisse (analytisch wie numerisch) ist daher sehr hoch.
Neben den Grundrechenarten, Ableitungs- und Integralberechnung, Lösen von Gleichungssystemen, Matrizenmanipulation und numerischen Berechnungen in beliebiger Genauigkeit (keine Beschränkung auf die Maschinenpräzision) sind eine Vielzahl spezieller Funktionen, z. B. aus den Bereichen der Kombinatorik, implementiert. Die Programmiersprache Mathematica umfaßt implizite Typenzuweisung und -wandlung, automatisches Speichermanagement und Musterauswertungstechniken (engl. pattern matching). Der Programmierer ist dabei nicht auf einen Stil festgelegt: hier die Berechnung des Mittelwertes einer Werteliste auf drei Weisen (im interaktiven Modus numeriert Mathematica die Ein- und Ausgaben und liefert die Ergebnisse direkt).
Werteliste definieren:
In[1] := myData = {1, 2, 3, 4, 5, 6, 7, 8}Mathematica-eigene Funktion benutzen:
Out[1] = {1, 2, 3, 4, 5, 6, 7, 8}
In[2] := Mean[myData]Listenmanipulation benutzen:
Out[2] = 9/2
In[3] := Plus@@myData / Length[myData]Prozedurales Vorgehen:
Out[3] = 9/2
In[4] := summe = 0
Out[4] = 0
In[5] := For[ j=1,j <= Length[myData], j++, AddTo[ summe, myData[[j]] ] ]
In[6] := summe / Length[myData]
Out[6] = 9/2