Mathematica
| Wolfram Mathematica
| |
|---|---|
|
| |
|
| |
| 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
- egy számítógépes algebrai rendszer a szimbolikus feldolgozása az egyenletek és differenciálegyenletek .
- egy numerikus szoftver egyenletek numerikus megoldására vagy kiértékelésére
- Egy vizualizációs eszköz megjelenítésére grafikonok és 3D / 2D grafikus
- Egy programozási nyelv , amely egyesíti elemeit az eljárási, objektum-orientált, funkcionális és szabály alapú programozás.
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
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.
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
- Wolfram Alpha
- Statisztikai szoftverek listája
- Tudományos számítástechnika
- Sage (szoftver) , nyílt forráskódú alternatíva
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
- Wolfram Research, Inc.
- A német partner hivatalos Mathematica honlapja
- Wolfram Alpha (Mathematica-alapú internetes szolgáltatás a Wolfram Research-től)
- A Mathematica integrátor
- Numerikus elemző szoftverek listája (Wikipedia)
- Mathematica a Raspberry Pi ingyenes Mathematica verzióján, nem kereskedelmi használatra
Egyéni bizonyíték
- ^ A Wolfram Language & Mathematica 12.3 verziójának elindítása. Wolfram.com, hozzáférve 2021. május 25 -én .
- ^ A b A Mathematica szoftverfejlesztése . 2012 (hozzáférés: 2019. január 7.).
- ^ Barak Katz: Bevezetés a Mathematicába. (PDF; 1,6 MB) 2008, hozzáférés: 2020. március 27 (angol).
- ↑ 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).
- ↑ Stephen Wolfram: Mathematica. Számítógépes matematikai rendszer . Addison-Wesley Publishing Company, 1988, ISBN 0-201-19334-5 , pp. XVIII .
- ↑ 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 .
- ↑ 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
- ↑ wolfram.com szabad formátumú nyelvi bemenet
- ↑ Heise, 2013. november 15 .: A Mathematica főnöke, Wolfram bejelentette a programozási nyelvet , a gyártó linkje: Wolfram Programming Language
- ↑ wolfram.com Wolfram Language - tudásalapú programozás
-
↑ 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. - ↑ heise.de