www.wikidata.de-de.nina.az
Mathematica ist eines der meistbenutzten mathematisch naturwissenschaftlichen Programmpakete und ein proprietares Softwarepaket des Unternehmens Wolfram Research Mathematica 1 0 wurde 1988 auf den Markt gebracht Wolfram MathematicaBasisdatenEntwickler Wolfram ResearchErscheinungsjahr 23 Juni 1988Aktuelle Version 13 3 1 28 Juni 2023 Betriebssystem Microsoft Windows 2 Linux 2 macOS 2 Programmiersprache C C 3 Java 3 Wolfram LanguageKategorie Computeralgebrasystem Informationsvisualisierung Statistik Software Grafische BenutzeroberflacheLizenz Proprietare Softwarewolfram com products mathematica Inhaltsverzeichnis 1 Programmpaket Mathematica 2 Benutzung und Arbeitsmethode 3 Sprache 4 Sprachbeispiele 4 1 Beispiel 1 Primzahlen 4 2 Beispiel 2 Mittelwertberechnung 4 3 Beispiel 3 Matrizen 4 4 Beispiel 4 Platonische Korper zeichnen 5 Versionsgeschichte 6 Probleme 7 Siehe auch 8 Literatur 9 Weblinks 10 EinzelnachweiseProgrammpaket Mathematica BearbeitenDas Softwarepaket Mathematica enthalt unter anderem ein Computeralgebrasystem zur symbolischen Verarbeitung von Gleichungen und Differentialgleichungen 4 5 eine Numerik Software zum numerischen Losen oder Auswerten von Gleichungen ein Visualisierungs Tool zum Darstellen von Graphen und 3D 2D Graphiken eine Programmiersprache die Elemente des prozeduralen objektorientierten funktionalen und regelbasierten Programmierens in sich vereint Der Autor und Unternehmensbegrunder Stephen Wolfram begann die Entwicklungsarbeit im Jahr 1986 die erste Version von Mathematica wurde 1988 herausgebracht Der Name Mathematica wurde Wolfram zufolge von Steve Jobs vorgeschlagen 6 7 Mathematica 1 0 enthielt uber 500 eingebaute Funktionen die in Mathematica 13 0 weiterhin vorhanden sind In der Version 4 0 waren es uber 1000 Funktionen Diese sind in einem gedruckten Handbuch das uber 3 kg wiegt auf fast 1500 Seiten dokumentiert 8 Inzwischen sind es uber 6000 Funktionen 9 Hinzu gekommen ist ausserdem eine grosse Anzahl neuer Ideen die den Einsatzbereich des Systems deutlich erweitern Benutzung und Arbeitsmethode Bearbeiten nbsp Dini Flache mit variablen Parametern geplottetMathematica besteht aus dem Kernel der die Berechnungen vornimmt sowie dem Notebook einer grafischen Benutzeroberflache Das Programm wird in der Regel uber das Notebook bedient das die Ein und Ausgabe formatiert darstellt Das Notebook hat ausserdem Funktionen einer Textverarbeitung und erlaubt das Darstellen und Manipulieren von Grafiken Ein besonderes Merkmal ist auch die umfangreiche Unterstutzung mathematischer Sonderzeichen die in Mathematica im Gegensatz zu klassischen Programmiersprachen an jeder Stelle auch als Variablennamen genutzt werden konnen Der Kernel verarbeitet den Programmcode in der Regel gleich nach der Eingabe als Interpreter Ergebnisse oder Programmierfehler sind damit sofort zu sehen das Programmieren ist interaktiv Wird Programmcode mehrfach durchlaufen etwa beim nicht interaktiven Programmaufruf so wird der Programmcode automatisch kompiliert Der Programmcode ist betriebssystemunabhangig Mathematica wird angeboten fur Windows Linux und macOS bis einschliesslich Version 6 0 3 auch fur MS DOS NeXT OS 2 Unix und VMS Ab Version 8 ist der sogenannte free form input in Mathematica verfugbar der es ermoglicht anstatt der Eingabe der korrekten Syntax fur Berechnungen und andere Befehle naturliches Englisch zu verwenden Dafur ist allerdings eine Internetverbindung notig So wird beispielsweise das gleiche Ergebnis der Graph der Sinusfunktion mit hellroter Fullung und gestrichelten Linien erzielt wenn man Plot Sin x x 6 6 6 6 Filling gt Axis FillingStyle gt Lighter Red GridLines gt Automatic GridLinesStyle gt Dashed eingibt wie aber auch den free form input verwendend plot sin x with light red filling and dashed grid lines als Befehl nimmt Nachdem man einen mit free form input vorgenommenen Befehl getatigt hat kann man ihn in die genaue Syntax ubersetzen lassen und dann wieder verandern sodass Kenntnis uber die Syntax dennoch von Vorteil bleibt 10 11 Mathematica wird in der Wissenschaft beziehungsweise im Studium natur oder wirtschaftswissenschaftlicher Facher eingesetzt Ebenso wendet es sich an den professionellen Anwender in der Industrie und Wirtschaft So verwenden Banken Mathematica zur Simulation von Aktienkursentwicklung Bewertung von Derivaten Risikoabschatzung und wandlung und so weiter Die Anforderung an die Korrektheit der Ergebnisse analytisch wie numerisch ist daher hoch Neben den Grundrechenarten Ableitungs und Integralberechnung Losen von Gleichungssystemen Matrizenmanipulation und numerischen Berechnungen in beliebiger Genauigkeit keine Beschrankung auf die Maschinenprazision sind eine Vielzahl spezieller Funktionen etwa aus den Bereichen der Kombinatorik implementiert Die Programmiersprache von Mathematica umfasst implizite Typenzuweisung und wandlung automatisches Speichermanagement und Musterauswertungstechniken englisch pattern matching Seit Ende 2013 wird die Programmiersprache Wolfram Language unabhangig von Mathematica vertrieben 12 Sprache BearbeitenDie Programmiersprache von Mathematica Wolfram Language 13 ist stark an die funktionale Programmiersprache Lisp angelehnt Zusatzlich basiert Mathematica wesentlich auf Pattern Matching wie zum Beispiel auch Haskell Dies sorgt besonders bei Einsteigern fur Verwirrung weil Patterns also Muster Platzhalter vorkommen sobald man mit Funktionen arbeitet Zusammen mit den fast standig genutzten eckigen Klammern entsteht so ein Code Aussehen das sich stark von den verbreiteten C artigen Programmiersprachen unterscheidet Bei folgender Definition handelt es sich fur Mathematica nicht um eine Funktion sondern um eine Ersetzungsregel bei der jedes Vorkommen von f irgendwas durch irgendwas irgendwas ersetzt wird wobei irgendwas sprichwortlich alles sein kann f x x x Eine wirkliche Funktion im Sinne der funktionalen Programmierung des Lambda Kalkuls wird hingegen durch Function erzeugt f Function x x x Der Vorteil des Pattern Matching in der Computeralgebra liegt darin dass man komplizierte Ersetzungsregeln kompakt schreiben kann Eine abschnittsweise definierte Funktion konnte man uber Matching Regeln wie folgt definieren g x x lt 7 2 x g x x gt 7 3 x Aufrufe g 3 werden damit als 2 3 6 ausgewertet wohingegen g 10 die Auswertung 3 10 30 ergibt nbsp Darstellung des Ausdrucks Plus a Sin Times b c als TreeFormWie Lisp weist Mathematica die Eigenschaft der Homoikonizitat auf Das bedeutet dass Mathematica Code und das Ergebnis einer Berechnung aus demselben Typ Daten besteht Mathematica Anweisungen wie Ausgaben sind eigentlich Baume und eine Auswertung einer Eingabe besteht in der Transformation eines solchen Baumes Aus diesem Grund nennt man das erste Element eines Mathematica Ausdruckes auch Head im folgenden Beispiel ist der Head die Anweisung Plus Plus a Sin Times b c Als Baum dargestellt sieht dieser Ausdruck wie rechts gezeigt aus Der Head also Wurzelknoten des Baumes ist die Funktion Plus Mathematica kennt verschiedene Weisen Ein Ausgaben darzustellen In naturlicher Schreibweise entspricht dieser Ausdruck dem besser lesbaren a Sin b c Mathematica unterstutzt als Computeralgebrasystem die Verarbeitung beliebiger Symbole in derartigen Ausdrucken Anhand von einer Liste von Ersetzungsregeln werden diese Ausdrucke zu anderen Baumen umgeformt So zusammengebaut sind komplexe Rechnungen moglich Mathematica ist damit dynamisch typisiert Im Gegensatz zu anderen Sprachen ist bei Mathematica damit eine nicht auswertbare Zeile im Allgemeinen kein Fehler sondern verbleibt unverandert als Ruckgabe Fehlerausgaben sind aber dennoch moglich zum Beispiel bei Ubergabe ungeeigneter Argumente an eine eingebaute Funktion wie Plot Der Programmierer ist nicht auf ein einziges Programmierparadigma festgelegt sondern kann ebenso imperative Anweisungen programmieren Durch zehntausende von eingebauten Funktionen kann man sehr schnell umfangreiche Programme schreiben Sprachbeispiele BearbeitenBeispiel 1 Primzahlen Bearbeiten Mit der Funktion Prime k wird die k te Primzahl berechnet und angezeigt zum Beispiel In 1 Prime 15 Out 1 47Man beachte Prafixe werden von Mathematica in kleiner Schrift und in blaulicher Farbe ausgeschrieben sind also keine Links Eine Liste von Primzahlen kann auf mehrere Arten erzeugt werden zum Beispiel die Liste der ersten 15 Primzahlen 1 Variante Die Funktion Table anwenden In 1 Table Prime i i 15 Out 1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 2 Variante Die Funktion Range anwenden In 1 Prime Range 15 Out 1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 3 Variante Primzahlen in Datenfeldern speichern In 1 f n Table Prime i i n In 2 f 15 Out 2 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 4 Variante Die Liste der Primzahlen blockweise uber Primzahlstufen selektieren In 1 tm 2 p k 1 Do Do If t gt 0 For i 1 s p i lt t 1 i If GCD k s 2 s 1 1 Goto l p AppendTo p k Label l k 4 t 1 t 0 tm p 2 p p 1 p Out 1 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 Die 4 Variante vermittelt einen Eindruck von Mathematica als Programmiersprache Es gibt weitere Primzahl Funktionen Die Funktion PrimePi x gibt die Anzahl der Primzahlen kleiner oder gleich x zuruck zum Beispiel In 1 PrimePi 50 Out 1 15Ob die Ganzzahl n eine Primzahl ist kann man mit der Funktion PrimeQ n abfragen Zum Beispiel Ist die Jahreszahl 2017 eine Primzahl n 1 PrimeQ 2017 Out 1 TrueIst die Jahreszahl 2023 eine Primzahl In 1 PrimeQ 2023 Out 1 FalseWelche Teiler hat 2023 In 1 Divisors 2023 Out 1 1 7 17 119 289 2023 Beispiel 2 Mittelwertberechnung Bearbeiten Untenstehend drei Arten mit Mathematica den Mittelwert einer Werteliste zu berechnen Im interaktiven Modus nummeriert Mathematica die Ein und Ausgaben und liefert die Ergebnisse direkt Werteliste definieren In 1 myData Range 8 Out 1 1 2 3 4 5 6 7 8 Mathematica eigene Funktion benutzen In 2 Mean myData Out 2 9 2Listenmanipulation benutzen In 3 Plus myData Length myData Out 3 9 2Prozedurales Vorgehen In 4 summe 0 Out 4 0 In 5 For j 1 j lt Length myData j summe myData j In 6 summe Length myData Out 6 9 2Beispiel 3 Matrizen Bearbeiten Mathematica enthalt eine Vielzahl von Funktionen um Matrizen zu erzeugen etwa eine Hilbert Matrix oder eine Hankel Matrix und solche um Matrizen zu manipulieren Die Matrixelemente konnen sowohl Zahlen als auch Symbole sein Verwenden wir im nachfolgenden Beispiel Symbole und geben der Matrix den Namen FeldX Die Matrixelemente werden in einer speziellen Syntax Zeile fur Zeile eingegeben Mit der Funktion MatrixForm wird die Matrix in der ublichen Form angezeigt In 1 MatrixForm FeldX a b 0 c a b 0 c a Out 1 MatrixForm a b 0 c a b 0 c a displaystyle begin pmatrix a amp b amp 0 c amp a amp b 0 amp c amp a end pmatrix nbsp dd dd dd nbsp Screenshot des Programms Mathematica der Version 3 0 zu Matrizen Die blauen Klammern rechts im Bild markieren sog ZellenDiese Matrix ist eine Tridiagonal Toeplitz Matrix Fur die Matrizenmultiplikation wird zwischen die Feldnamen ein schlichter Punkt gesetzt 14 Zum Beispiel fur die Multiplikation des Felds FeldX mit sich selbst sieht die Syntax so aus In 2 MatrixForm FeldX FeldX Out 2 MatrixForm a 2 b c 2 a b b 2 2 a c a 2 b c 2 a b c 2 2 a c a 2 b c displaystyle begin pmatrix a 2 bc amp 2ab amp b 2 2ac amp a 2 bc amp 2ab c 2 amp 2ac amp a 2 bc end pmatrix nbsp dd dd dd Die Transponierte der Matrix FeldX erzeugt man so In 3 MatrixForm Transpose FeldX Out 3 MatrixForm a c 0 b a c 0 b a displaystyle begin pmatrix a amp c amp 0 b amp a amp c 0 amp b amp a end pmatrix nbsp dd dd dd Die Determinante der Matrix wird mit der Funktion Det FeldX berechnet In 4 Det FeldX Out 4 a 2abcDie Inverse der Matrix FeldX erhalt man mit der Funktion Inverse FeldX In 5 MatrixForm Inverse FeldX Out 5 MatrixForm 1 a 3 2 a b c a 2 b c a b b 2 a c a 2 a b c 2 a c a 2 b c displaystyle frac 1 a 3 2abc begin pmatrix a 2 bc amp ab amp b 2 ac amp a 2 amp ab c 2 amp ac amp a 2 bc end pmatrix nbsp 15 dd dd dd Die Eigenwerte werden mit der Funktion Eigenvalues FeldX berechnet In 6 Eigenvalues FeldX Out 6 a a span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none span span span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none span span Sind a b und c reell und die Vorzeichen von a und b unterschiedlich sind zwei Eigenwerte komplex und sie sind konjugiert komplex Analog konnen die Eigenvektoren mit der Funktion Eigenvectors FeldX berechnet werden Beispiel 4 Platonische Korper zeichnen Bearbeiten nbsp Die funf Platonischen Korper und ihre Stumpfe die durch Abschneiden der Ecken entstehen gezeichnet mit Standardfunktionen von Mathematica der Version 3 0Platonische Korper sind Polyeder die von mehreren deckungsgleichen ebenen regelmassigen Vielecken begrenzt werden Andere Namen sind regulare Korper oder regulare Polyeder Es gibt funf solche regularen Korper Tetraeder Wurfel Oktaeder Dodekaeder Ikosaeder Um diese zu zeichnen enthalt Mathematica die Funktion Polyhedron 16 Als Argument Option ist der englische Name des Polyeders anzugeben Es gibt weitere verwandte Funktionen zum Beispiel die Funktion Truncate die einen Polyederstumpf Tetraederstumpf Hexaederstumpf Oktaederstumpf Dodekaederstumpf Ikosaederstumpf zeichnet der durch Abschneiden der Ecken entsteht Vor Eingabe der ersten Funktion muss das Paket Polyheda geladen werden In 1 lt lt Graphics Polyhedra In 2 Show Polyhedron Tetrahedron Dann konnen nacheinander die anderen regularen Polyeder und ihre Stumpfe gezeichnet werden die die Grafik zeigt Show Polyhedron Cube Show Polyhedron Octahedron Show Polyhedron Dodecahedron Show Polyhedron Icosahedron Show Truncate Polyhedron Tetrahedron Show Truncate Polyhedron Cube Show Truncate Polyhedron Octahedron Show Truncate Polyhedron Dodecahedron Show Truncate Polyhedron Icosahedron In diesem Fall ist die Anwendung von Mathematica sehr einfach Fur dieses Beispiel wurde die Version 3 0 1996 von Mathematica verwendet Ab der Version 12 0 2019 ist die Syntax der Funktion Polyhedron geandert worden 17 Versionsgeschichte BearbeitenDie Entwicklung von Mathematica von Version zu Version ist so dynamisch dass es unmoglich erscheint die Neuerungen und seien es auch nur die wichtigsten tabellarisch zu erfassen Eine Ubersicht kann man sich auf der Web Seite Mathematicas kurze Versionsgeschichte verschaffen 18 Version Veroffentlichung1 0 23 Juni 19881 1 31 Oktober 19881 2 1 August 19892 0 15 Januar 19912 1 15 Juni 19922 2 1 Juni 19933 0 3 September 19964 0 19 Mai 19994 1 2 November 20004 2 1 November 20025 0 12 Juni 20035 1 25 Oktober 20045 2 20 Juni 20056 0 1 Mai 20077 0 18 November 20087 0 1 5 Marz 20098 0 15 November 20108 0 1 7 Marz 20118 0 4 24 Oktober 20119 0 28 November 20129 0 1 30 Januar 201310 9 Juli 201410 0 1 17 September 201410 0 2 15 Dezember 201410 1 31 Marz 201510 2 14 Juli 201510 3 15 Oktober 201510 3 1 16 Dezember 201510 4 2 Marz 201610 4 1 18 April 201611 9 August 201611 0 1 28 September 201611 1 16 Marz 201711 1 1 25 April 201711 2 14 September 201711 3 8 Marz 201812 0 16 April 201912 1 18 Marz 202012 2 16 Dezember 202012 3 20 Mai 202112 3 1 Juli 202113 0 13 Dezember 202113 1 29 Juni 202213 2 14 Dezember 202213 2 1 Februar 202313 3 12 Juni 2023Probleme Bearbeiten2014 haben drei Mathematiker veroffentlicht dass Mathematica bei der Berechnung von Determinanten bestimmter Matrizen mit recht grossen Ganzzahlen 10 000 Stellen falsche Ergebnisse liefert Dieser Fehler sei 2013 gemeldet und auch nach uber einem Jahr nicht behoben worden die Darstellung von Wolfram Research widerspricht diesen Angaben jedoch in Teilen und geht von einem neuen Fehler aus 19 Der Berechnungsfehler CASE 303438 ist ab Version 11 1 behoben und nicht mehr vorhanden Siehe auch BearbeitenWolfram Alpha Liste von Statistik Software Wissenschaftliches Rechnen Sage Software Open Source AlternativeLiteratur BearbeitenHans Benker MATHEMATICA kompakt Mathematische Problemlosungen fur Ingenieure Mathematiker und Naturwissenschaftler Springer Berlin Heidelberg 2016 ISBN 978 3 662 49610 7 Stephen Wolfram An Elementary Introduction to the Wolfram Language Wolfram Media Inc Champaign IL 2015 ISBN 978 1 944183 00 4 Knut Lorenzen Einfuhrung in Mathematica Berucksichtigt die kostenlose Version 10 fur den Raspberry Pi mitp Verlags GmbH amp Co 2014 ISBN 978 3 8266 9666 4 Axel Kilian Programmieren mit Wolfram Mathematica Springer Berlin Heidelberg 2009 ISBN 978 3 642 04671 1 Michael Trott The Mathematica GuideBook for Symbolics Springer 2006 Michael Trott The Mathematica GuideBook for Programming Springer 2004 Michael Trott The Mathematica GuideBook for Numerics Springer 2006 Michael Trott The Mathematica GuideBook for Graphics Springer 2004 Stephen Wolfram The Mathematica Book 5 Auflage Wolfram Media 2004 ISBN 1 57955 022 3 Leonid Shifrin Mathematica programming mathprogramming intro org kostenloses E Book David B Wagner Power Programming With Mathematica The Kernel McGraw Hill Education 1996 ISBN 0 07 912237 X dropbox com PDF kostenloses E Book zu Mathematica Weblinks Bearbeiten nbsp Commons Mathematica Sammlung von Bildern Videos und Audiodateien Wolfram Research Inc Offizielle Mathematica Homepage des deutschen Partners Wolfram Alpha auf Mathematica basierender Internetdienst von Wolfram Research Der Mathematica Integrator List of numerical analysis software englischsprachige Wikipedia Mathematica auf dem Raspberry Pi kostenlose Mathematica Version fur nicht kommerzielle NutzungEinzelnachweise Bearbeiten Version 13 3 of Wolfram Language and Mathematica 28 Juni 2023 abgerufen am 19 Juli 2023 a b c www wolfram com a b The Software Engineering of Mathematica 2012 abgerufen am 7 Januar 2019 Barak Katz Introduction to Mathematica PDF 1 6 MB 2008 abgerufen am 27 Marz 2020 englisch Paritosh Mokhasi Solving Differential Equations in Mathematica In WOLFRAM Computation meets knowledge Abgerufen am 27 Marz 2020 englisch Webseite mit eingebettetem Video Stephen Wolfram Mathematica A System for Doing Mathematics by Computer Addison Wesley Publishing Company 1988 ISBN 0 201 19334 5 S XVIII Stephen Wolfram Steve Jobs A Few Memories In Stephen Wolfram Writings 6 Oktober 2011 abgerufen am 6 Marz 2020 englisch Stephen Wolfram The mathematica book Version 4 Fourth Edition Auflage Wolfram Media Cambridge University Press Champaign IL New York 1999 ISBN 1 57955 004 5 xxvi 1470 p Mathematicas Werdegang Cliff Hastings First 10 Minutes with Mathematica 8 In wolfram com Abgerufen am 5 Juni 2023 wolfram com free form linguistic input Heise 15 November 2013 Mathematica Chef Wolfram kundigt Programmiersprache an Herstellerlink Wolfram Programming Language wolfram com Wolfram Language Wissensbasiertes Programmieren Das ubliche Malzeichen das Sternchen der Tabellenkalkulations Programme und Programmiersprachen bewirkt die elementweise Multiplikation Die Wiedergabe hier entspricht nicht genau der Ausschrift von Mathematica die der Screenshot zeigt Es wurde der gemeinsame Nenner aller Matrixelemente herausgezogen Emily Martin Hrsg Mathematica 3 0 Standard Add on Packages Wolfram Media Cambridge University Press Champaign Ill Cambridge 1996 ISBN 0 9650532 2 9 S 207 ff V 516 p Polyhedron Mathematicas kurze Versionsgeschichte Wolfram Mathematica Februar 2023 abgerufen am 16 Marz 2023 heise de Abgerufen von https de wikipedia org w index php title Mathematica amp oldid 235857001