Mathematica

Wolfram Mathematica

MathematicaSpikeyVersion8.png
Mathematica logisztikai bifurkáció.png
Alapadatok

fejlesztő Wolfram kutatás
Kiadási év 1988. június 23
Jelenlegi  verzió 12.3
(2021. május)
operációs rendszer Windows , macOS , Linux , Solaris
programozási nyelv C , C ++ , Java , Wolfram nyelv
kategória Számítógépes algebra rendszer , információ vizualizáció , statisztikai szoftver , grafikus felhasználói felület
Engedély Saját szoftver
wolfram.com/products/mathematica

Mathematica egy szabadalmaztatott szoftver csomag származó Wolfram Research és az egyik legszélesebb körben használt matematikai és tudományos program csomagokat . Mathematica 1.0-ben indult 1988-ban.

Mathematica programcsomag

A "Mathematica" szoftvercsomag többek között tartalmaz

A szerző és a cégalapító, Stephen Wolfram 1986 -ban kezdte a fejlesztést, a Mathematica első verziója pedig 1988 -ban jelent meg. Wolfram szerint a Mathematica nevet Steve Jobs javasolta.

Használat és munkamódszer

Image
Dini terület változó paraméterekkel ábrázolva

A Mathematica különbséget tesz a tényleges számításokat végző kernel és a notebook között , amely tiszta grafikus felhasználói felület . A programot általában a notebook használja, amely formázott formában jeleníti meg a bemenetet / kimenetet. A notebook szövegszerkesztő funkciókkal is rendelkezik, és lehetővé teszi a grafikák megjelenítését és kezelését. Különlegesség a speciális matematikai karakterek széles körű támogatása, amelyek a Mathematica -ban (a klasszikus programozási nyelvekkel ellentétben) bármikor használhatók (változónévként is).

A programkód kiértékelése vagy feldolgozása általában közvetlenül a kernel által ( értelmezőként ) történő megadás után történik, így az eredmények vagy a programozási hibák azonnal nyilvánvalóak, és interaktív programozás történhet. Ha a programkód többször végigfut, például nem interaktív programhívás esetén, a programkód automatikusan összeáll . A programkód független az operációs rendszertől. A Mathematica Windows , Linux és macOS rendszereken érhető el , a 6.0.3-as verzióig bezárólag MS-DOS , NeXT , OS / 2 , Unix és VMS rendszerekhez is .

A 8. verziótól a Mathematica programban elérhető az úgynevezett szabad formátumú bemenet , amely lehetővé teszi a "természetes" angol nyelv használatát a helyes szintaxis megadása helyett a számításokhoz és egyéb parancsokhoz. Ehhez azonban internetkapcsolat szükséges. Például ugyanazt az eredményt - a szinusz függvény grafikonját világos piros kitöltéssel és szaggatott vonallal - akkor kapjuk, ha

Előadás[
  Ábrázolás [Sin [x], {x, -6.6, 6.6},
    Kitöltés -> Tengely,
    FillingStyle -> Világosabb [piros]
  ],
  GridLines -> Automatikus,
  GridLinesStyle -> Szaggatott
]

valamint segítségével a szabad formában bemeneti

ábrázolja a sin x -et világos vörös töltéssel és szaggatott rácsvonalakkal

mint ahogy a rendelés veszi. Miután kiadta a szabad formátumú bevitellel végrehajtott parancsot, lefordíthatja a pontos szintaxisba, és pontosabb módosításokat végezhet, így a szintaxis ismerete továbbra is nagy előny.

A Mathematicát a természettudományokban vagy a természettudományok vagy a közgazdaságtan tanulmányozásában használják. Ezenkívül professzionális felhasználóknak szól az iparban és az üzleti életben. Például a bankok a Mathematica segítségével szimulálják a részvényárfolyamok alakulását, értékelik a derivatívákat , értékelik vagy konvertálják a kockázatot stb. Az eredmények helyességére (analitikai és numerikus) vonatkozó követelmények tehát magasak.

Amellett, hogy az alapvető aritmetikai műveletek , levezetésére és szerves számítások , megoldására rendszerek egyenletek , mátrix manipuláció és numerikus számítások bármilyen pontossággal (nincs korlátozás a gép pontossággal), számos speciális funkciók, például a területek kombinatorikai , végrehajtják . A Mathematica programozási nyelv magában foglalja az implicit típus -hozzárendelést és -konverziót, az automatikus memóriakezelést és a minta -illesztési technikákat . A Wolfram Language programozási nyelvet 2013 vége óta a Mathematica -tól függetlenül értékesítik .

nyelv

A Mathematica programozási nyelve ( Wolfram Language ) erősen a Lisp funkcionális programozási nyelvre épül . Ezenkívül a Mathematica lényegében a mintaegyezésen alapul (például Haskell ). Ez zavart okoz, különösen a kezdőknél, mert a minták , azaz a mintahelyőrzők azonnal megjelennek, amint a funkciókkal dolgozik. A szinte állandóan használt szögletes zárójelekkel együtt ez olyan kód megjelenést hoz létre, amely nagyon különbözik a közös C -szerű programozási nyelvektől. Mathematica, a következő meghatározás nem egy függvény, hanem egy helyettesítő szabályt, amely minden előfordulása a helyébe, ahol szó szerint bármi lehet: f[irgendwas]irgendwas + irgendwasirgendwas

f[x_] = x + x

Valódi funkciót a funkcionális programozás értelmében / a lambda -számítást viszont a következők Functiongenerálják: f = Function[x, x + x]

A számítógépes algebrában a mintaegyezés előnye, hogy bonyolult helyettesítési szabályokat írhat kompakt formában. A szakaszokban definiált függvényeket a megfelelő szabályok segítségével lehet meghatározni az alábbiak szerint:

g[x_ /; x < 7] = 2*x;
g[x_ /; x > 7] = 3*x;

A felhívásokat g[3]így 2*3=6értékelik, míg g[10]az értékelési 3*10=30eredményeket.

Image
A kifejezés Plus[a,Sin[Times[b,c]]]megjelenítése TreeForm -ként

Mint Lisp , Mathematica az a tulajdonsága homoiconicity . Ez azt jelenti, hogy a Mathematica kód és a számítás eredménye azonos típusú adatokból áll. A Mathematica utasítások, mint a kimenetek, valójában fák , és egy bemenet kiértékelése átalakítja az ilyen fát. Emiatt a Mathematica kifejezés első elemét fejnek is nevezik , a következő példában a fej a plusz utasítás :

Plusz [a, bűn [idő [b, c]]]

Faként ábrázolt kifejezés úgy néz ki, mint a jobb oldalon látható. A fa feje (azaz gyökércsomópontja) a függvény Plus. A Mathematica a bemenet / kimenet ábrázolásának különböző módjait ismeri. A természetes jelöléssel, ez a kifejezés megfelel a olvashatóbb egy a + Sin[b*c]

Számítógépes algebrai rendszerként a Mathematica támogatja az ilyen kifejezésekben szereplő szimbólumok feldolgozását. A helyettesítési szabályok listájának használatával ezeket a kifejezéseket más fákká alakítják át. Komplex számlák is lehetségesek, ha így összeszerelik. A Mathematica így dinamikusan gépelhető . Más nyelvekkel ellentétben a nem értékelhető sor általában nem hiba a Mathematica -ban, de változatlan marad.

A programozó nem kötődik egyetlen programozási paradigmához , de kötelező utasításokat is programozhat. Több tízezer beépített funkcióval nagyon gyorsan írhat kiterjedt programokat.

Nyelvi példák

1. példa: prímszámok

A függvény több prímszámot is kiszámít

In[1] := Prime /@ Range[5]
Out[1] = {2, 3, 5, 7, 11}

2. példa: Átlagos érték kiszámítása

Az alábbiakban három módszert ismertetünk a Mathematica használatával az értéklista átlagának kiszámításához. Interaktív módban a Mathematica számozza a bemeneteket és kimeneteket, és közvetlenül az eredményeket hozza.

Értéklista meghatározása:

[1] -ben: = myData = Tartomány [8]
Kint [1] = {1, 2, 3, 4, 5, 6, 7, 8}

Használja a Mathematica saját funkcióját:

In [2]: = Átlagos [myData]
Kint [2] = 9/2

Használja a lista manipulációját:

In [3]: = Plus @@ myData / Length [myData]
: Kint [3] = 9/2

Eljárási megközelítés:

[4] -ben: = "" összeg = 0 ""
Kint [4] = 0
In [5]: = [j = 1, j <= Hossz [myData], j ++, összeg += myData [[j]]]
[6] -ban: = összeg / hossz [myData]
Kint [6] = 9/2

történelem

változat kiadvány
1.0 1988. június 23
1.1 1988. október 31
1.2 1989. augusztus 1
2.0 1991. január 15
2.1 1992. június 15
2.2 1993. június 1
3.0 1996. szeptember 3
4.0 1999. május 19
4.1 2000. november 2
4.2 2002. november 1
5.0 2003. június 12
5.1 2004. október 25
5.2 2005. június 20
6.0 2007. május 1
7.0 2008. november 18
7.0.1 2009. március 5
8.0 2010. november 15
8.0.1 2011. március 7
8.0.4 2011. október 24
9.0 2012. november 28
9.0.1 2013. január 30
10 2014. július 9
10.0.1 2014. szeptember 17
10.0.2 2014. december 15
10.1 2015. március 31
10.2 2015. július 14
10.3 2015. október 15
10.3.1 2015. december 16
10.4 2016. március 2
10.4.1 2016. április 18
11 2016. augusztus 9
11.0.1 2016. szeptember 28
11.1 2017. március 16
11.1.1 2017. április 25
11.2 2017. szeptember 14
11.3 2018. március 8
12,0 2019. április 16
12.1 2020. március 18
12.2 2020. december 16
12.3 2021. május 20

Problémák

2014 -ben három matematikus publikálta, hogy a Mathematica helytelen eredményeket adott, amikor bizonyos mátrixok determinánsait kiszámította , meglehetősen nagy egész számokkal (10 000 számjegy). Ezt a hibát 2013 -ban jelentették, és több mint egy év elteltével sem javították ki; a Wolfram Research előadása azonban részben ellentmond ennek az információnak, és új hibát feltételez. A számítási hiba ( CASE: 303438 ) megszűnt a 11.1 verzióból, és már nem érhető el.

Lásd még

irodalom

  • Hans Benker: MATHEMATICA compact: Matematikai feladatmegoldások mérnököknek, matematikusoknak és természettudósoknak. Springer, Berlin / Heidelberg 2016, ISBN 978-3-662-49610-7 .
  • Stephen Wolfram: A Wolfram nyelv elemi bevezetése. Wolfram Media, Inc., Champaign, IL. 2015, ISBN 978-1-944183-00-4 .
  • Knut Lorenzen: Bevezetés a Mathematica-ba: Tartalmazza a Raspberry Pi ingyenes 10. verzióját. Mitp Verlags GmbH & Co., 2014. ISBN 978-3-8266-9666-4 .
  • Axel Kilian: Programozás Wolfram Mathematica segítségével. Springer, Berlin / Heidelberg 2009, ISBN 978-3-642-04671-1 .
  • Michael Trott: A Mathematica GuideBook for Symbolics. Springer, 2006.
  • Michael Trott: A Mathematica útmutató a programozáshoz. Springer, 2004.
  • Michael Trott: A Mathematica Guidebook for Numerics. Springer, 2006.
  • Michael Trott: The Mathematica Guidebook for Graphics. Springer, 2004.
  • Stephen Wolfram: A Mathematica könyv . 5. kiadás. Wolfram Media, 2004, ISBN 1-57955-022-3 .
  • Leonid Shifrin: Mathematica programozás . ( mathprogramming-intro.org- ingyenes e-könyv).
  • David B. Wagner: Power Programming With Mathematica: The Kernel . McGraw-Hill Education, 1996, ISBN 0-07-912237-X ( dropbox.com [PDF] ingyenes e-könyv a Mathematica témakörben ).

web Linkek

Commons : Mathematica  - képek, videók és hangfájlok gyűjteménye

Egyéni bizonyíték

  1. ^ A Wolfram Language & Mathematica 12.3 verziójának elindítása. Wolfram.com, hozzáférve 2021. május 25 -én .
  2. ^ A b A Mathematica szoftverfejlesztése . 2012 (hozzáférés: 2019. január 7.).
  3. ^ Barak Katz: Bevezetés a Mathematicába. (PDF; 1,6 MB) 2008, hozzáférés: 2020. március 27 (angol).
  4. Paritosh Mokhasi: Differenciálegyenletek megoldása a Mathematica -ban. In: WOLFRAM A számítás találkozik a tudással. Letöltve: 2020. március 27 (angol, weboldal beágyazott videóval).
  5. Stephen Wolfram: Mathematica. Számítógépes matematikai rendszer . Addison-Wesley Publishing Company, 1988, ISBN 0-201-19334-5 , pp. XVIII .
  6. Stephen Wolfram: Steve Jobs. Néhány emlék. In: Stephen Wolfram. Írások. 2011. október 6, hozzáférve 2020. március 6 .
  7. wolfram.com ( Memento az az eredeti április 14-től, 2012-ben az Internet Archive ) Info: A archív linket helyeztünk automatikusan, és még nem ellenőrizték. Kérjük, ellenőrizze az eredeti és az archív linket az utasítások szerint, majd távolítsa el ezt az értesítést. Videó a szabad formátumú bemenetről @1@ 2Sablon: Webachiv / IABot / www.wolfram.com
  8. wolfram.com szabad formátumú nyelvi bemenet
  9. Heise, 2013. november 15 .: A Mathematica főnöke, Wolfram bejelentette a programozási nyelvet , a gyártó linkje: Wolfram Programming Language
  10. wolfram.com Wolfram Language - tudásalapú programozás
  11. ↑ A hibaüzenetek továbbra is lehetségesek, pl. B. amikor alkalmatlan érveket ad át egy (beépített) függvénynek, mint pl Plot.
  12. heise.de