Mathematica
![]() | Овај чланак или један његов део није преведен на српски језик. |
![]() | |
![]() | |
Прво издање | 23. јун 1988.[1] |
---|---|
Платформа | Вишеплатформни софтвер |
Тип | Рачунарски алгебарски систем |
Лиценца | Власнички софтвер |
Веб-сајт | www |
Mathematica је програм за симболичко математичко рачунање, некад називан и програм за рачунарску алгебру, коришћен у пољима науке, инжењерства, математике и рачунања. Творац овог програма је Стивен Волфрам, а на развоју програма ради Wolfram Research из места Шампејн, Илиноис.[2][3] Језик Wolfram је програмски језик коришћен у програму Mathematica.[4]
Одлике
[уреди | уреди извор]![](http://178.128.105.246/content-http-upload.wikimedia.org/wikipedia/commons/thumb/3/30/Mathematica_dinis_surface.png/325px-Mathematica_dinis_surface.png)
Одлике програма Mathematica:[5]
- Библиотеке са простим и сложеним математичким функцијама
- Алати за манипулацију матрицама и подацима укључујући подршку за проређене низове
- Подршка за комплексан број, произвољну прецизност, аритметику интервала и симболичко рачунање
- Алати за анимацију и визуелизацију 2D и 3D података и функција
- Методе за решавање система једначина, Диофантових једначина, обичних диференцијалних једначина, парцијалних диференцијалних једначина, диференцијалних алгебарских једначина, стохастичких диференцијалних једначина и диференцних једначина
- Нумеричких и симболичких алата за дискретна и континуална израчунавања
- Мултиваријантне статистичке библиотеке које укључују тестирање хипотеза и израчунавање вероватноће над преко 140 дистрибуција.
- Подршку за цензурисане податке, привремене податке, временске низове и податке засноване на јединицама
- Израчунавања и симулације над произвољним процесима и редовима
- Алатке за машинско учење података, слика и звукова
- Рачунарска геометрија у 2D, 3D и више димензија
- Анализа коначног броја елемената укључујући 2D и 3D генерацију адаптивне мреже
- Ограничена и слободна локална и глобална оптимизација
- Програмски језик који подржава процедуралне, функционалне и објектно-оријентисане конструкције
- Алатке за додавање корисничких сучеља у израчунавања и апликације
- Алат за 2D и 3D обраду снимака[6] и морфолошку обраду слике укључујући препознавање слике
- Алате за визуелизацију и анализу усмерених и неусмерених графова
- Алате за проблеме у области комбинаторике
- Алати за интелектуалну анализу текста укључујући обичне изразе и семантичку анализу
- Алате за анализу података, нпр. анализа груписања, поравнавање секвенци и поклапање узорака
- Библиотеку функција теорије бројева
- Алате за израчунавање у пољу финансија укључујући везе, ренте, изводе, опције итд.
- Функције теорије група и симболичких тензора
- Библиотеке за обраду сигнала укључујући анализу таласића звука, слике и података
- Библиотеке линеарних и нелинеарних контролних система
- Континуалне и дискретне трансформације интеграла
- Увоз и извоз филтера за податке, слике, видео, звук, CAD, GIS,[7] документе и биомедицинске формате
- Колекцију базе података за математичке, научне и социо-економске информације као и приступ WolframAlpha подацима и израчунавањима
- Техничку обраду речи укључујући измену формула и аутоматско генерисање извештаја
- Алате за повезивање са системима који су засновани на језицима: DLL, SQL, Java, .NET, C++, Fortran, CUDA, OpenCL, и http
- Алате за паралелно програмирање
- Паралелно коришћење „слободне форме лингвистичког уноса“ (корисничко сучеље природног језика)[8][9] и Wolfram језика у радној свесци ако је корисник повезан са Интернетом
Сучеље
[уреди | уреди извор]Програм Mathematica је подељен на два дела, језгро и предњи крај. Језгро интерпретира изразе (код Wolfram језика) и даје резултирајуће изразе.
Предњи крај, који је дизајнирао Теодор Греј, поседује графички кориснички интерфејс, који дозвољава стварање и измену докумената који садрже програмски код са prettyprinting-ом, форматирани текст заједно са резултатима укључујући математику, графику, компоненте графичког корисничког сучеља, табеле и звуке. Сав садржај и сво форматирање се може алгоритамски генерисати и интерактивно изменити. Већина стандардних могућности за измену текста су подржане. Такође садржи проверу спеловања, али то не ради паралелно док корисник уноси текст.
Документи се могу структурирати помоћу хијерархије ћелија, које дозвољавају дељење и скицирање документа и подржавају аутоматско бројевно индексирање. Документи се могу приказати као „слајдшоу“ за презентације. Радне свеске и њихови садржаји су приказани као изрази у програму Mathematica који се могу стварати, модификовати или анализирати од стране Mathematica програма. Ово дозвољава конверзију у друге формате попут формата TeX или XML.
Предњи део садржи алатке за развој попут дебагера, допуне уноса и аутоматског бојења синтаксе.
Међу алтернативним предњим крајевима је Wolfram Workbench, интегрисано развојно окружење засновано на Eclipse-у, први пут приказано 2006. Оно пружа алате за развој кода програма Mathematica засноване на пројекту, укључујући управљање ревизијом, дебаговање, профилисање и тестирање.[10] Mathematica Kernel такође поседује командну линију за предњи крај.[11] Остала сучеља укључују JMath,[12] заснован на GNU readline-у и MASH[13] , који покреће самосталне Mathematica програме (са аргументима) из UNIX командне линије.
Wolfram Research је објавио низ упутстава за почетнике који упознавају корисника са корисничким сучељем и покретачем.[14]
Рачунање са високим перформансама
[уреди | уреди извор]Протеклих година, способности за рачунање високих перформанси су проширене појавом поравнања структуре података (верзија 4, 1999)[15] и проређених матрица (верзија 5, 2003),[16] и усвајањем GNU више-прецизне библиотеке за врло прецизну процену рачуна.
У верзији 5.2 (2005) је додат „multi-threading“ у случају да се израчунавања врше на вишејезгарним рачунарима.[17] Ова верзија је садржала оптимизоване библиотеке за различите моделе процесора. Притом, програм Mathematica је подржан од неких произвођача хардвера, као што је ClearSpeed.[18]
Године 2002 је настао програм gridMathematica, који дозвољава паралелно програмирање на корисничком нивоу над хетерогеним групама и мултипроцесорским системима,[19] а 2008. године технологија паралелног израчунавања је постала доступна у свим лиценцама програма Mathematica укључујући подршку за технологију мреже као што је Windows HPC Server 2008, Microsoft Compute Cluster Server и Sun Grid.
Подршка за CUDA и OpenCL GPU хардвер је додата године 2010. Такође, све верзије после осме могу генерисати C код, који је аутоматски компајлиран од стране системског C компајлера, као што је GCC или Visual Studio 2010.
Покретање
[уреди | уреди извор]Постоји неколико начина за покретање апликација написаних у програму Mathematica:
- Mathematica Player Pro је верзија програма Mathematica који ће покренути било коју Mathematica апликацију али неће дозволити ни увид у код ни измену кода.[20]
- Бесплатна верзија, Wolfram CDF Player, је обезбеђена за покретање Mathematica програма који су сачувани у CDF формату.[21] Такође може да прегледа стандардне Mathematica датотеке, али не и да их покреће. Садржи „плагинове“ за обичне интернет претраживаче на оперативним системима Windows и Macintosh.
- webMathematica дозвољава интернет претраживачу да се понаша као предњи крај за удаљени Mathematica сервер. Дизајниран је тако да дозвољава приступ апликацији написаној од стране корисника из претраживача са било које платформе. Не може се користити за давање пуног приступа програму Mathematica.
- Код Wolfram језика се може претворити у C код или у аутоматски генерисан DLL.
- Код Wolfram језика се може покренути са Wolfram сервиса на облаку као интернет-апликација или као API
Везе са осталим апликацијама
[уреди | уреди извор]Комуникација са осталим апликацијама се одвија преко протокола који се назива MathLink. Он дозвољава комуникацију између језгра програма Mathematica и предњег краја, и ствара сучеље између језгра и осталих апликација. Wolfram Research бесплатно дистрибуира комплет за програмере за повезивање апликација написаних у језику C са језгром програма Mathematica кроз MathLink.[22] Користећи J/Link.,[23] Java програм може упитати програм Mathematica даизвршава израчунавања; слично, програм направљен у програму Mathematica може да учитава Java класе, манипулише Java објектима и извршава позиве функција. Слична функционалност је постигнута користећи .NET /Link,[24] али са .NET програмима уместо Java програма. Остали језици који могу да се повежу са програмом Mathematica су Haskell,[25] AppleScript,[26] Racket,[27] Visual Basic,[28] Python[29][30] и Clojure.[31]
Доступне су везе ка многим пакетима математичких софтвера укључујући OpenOffice.org Calc,[32] Microsoft Excel,[33] MATLAB,[34][35][36] R,[37] Sage,[38][39] SINGULAR,[40] Wolfram SystemModeler, and Origin.[41] Математичке једначине се могу заменити са другим рачунарским софтверима путем језика MathML.
Комуникација са базама података SQL се остварује помоћу уграђене подршке за JDBC.[42] Mathematica такође може инсталирати интернет сервисе са WSDL описом.[43][44] Он може приступити HDFS подацима путем пројекта Hadoop.[45]
Mathematica може снимати податке у реалном времену помоћу везе са платформом LabVIEW,[46] из извора финансијских података[47] и директно из хардверских уређаја помоћу GPIB (IEEE 488),[48] USB[49] и серијских сучеља.[50] Она аутоматски детектује и чита HID уређаје.
Подаци за израчунавање
[уреди | уреди извор]Mathematica includes collections of curated data provided for use in computations. Mathematica is also integrated with Wolfram Alpha, an online service which provides additional data, some of which is kept updated in real time. Some of the data sets include astronomical, chemical, geopolitical, language, biomedical and weather data, in addition to mathematical data (such as knots and polyhedra).[51]
Дизајн
[уреди | уреди извор]Wolfram Research обезбеђује документацију[52] са листом алгоритама коришћеном за имплементацију функција у програму Mathematica.
Повезани производи
[уреди | уреди извор]Производи Wolfram Research-а повезаних са програмом Mathematica укључују следеће:[53]
- webMathematica – позива програм Mathematica кроз интернет сервер
- gridMathematica – покреће програм Mathematica преко паралелне мреже
- Mathematica додаци[54] – решења и алати за израчунавање
- Мобилне апликације – мобилна апликација Wolfram|Alpha и остале рачунарске апликације
- Wolfram|Alpha[55] – програм за знање и одговоре
- Wolfram Knowledgebase[56] – спремиште рачунарског знања са подацима и методама за израчунавање, које користи Wolfram|Alpha, а приказује се користећи Wolfram Data Framework (WDF)
- Wolfram SystemModeler – платформа за инжењеринг и моделовање, као и симулација заснована на језику Modelica
- Wolfram Finance Platform[57] – пренос података у реалном времену, израчунавања, извештаји и трговина алгоритмима за финансијске апликације
- Wolfram Workbench[58] – интегрисано развојно окружење саграђено на основи Eclipse за развој програма Mathematica и осталих производа из Wolfram Research-а
- Wolfram Development Platform[59] – стварање и покретање апликација на Wolfram језику у облаку
- Wolfram Cloud[60] – инфраструктура за Mathematica Online, Wolfram Development Platform, Wolfram Discovery Platform и Wolfram Data Science Platform
- Wolfram Programming Lab[61] – за интерактивно учење Wolfram језика
- Wolfram Data Framework (WDF)[62] – пружа стандардизовану репрезентацију и семантички оквир за конструкције и податке у реалном времену
- Computable Document Format (CDF) – формат за документе намењен за динамички генерисан интерактивни садржај
- Wolfram Discovery Platform (у развоју)[63] – истраживање и развој тока рада користећи Wolfram језик и CDF
- Wolfram Data Science Platform (у развоју)[64] – анализа научних података и њихова визуелизација користећи Wolfram језик и Wolfram Data Framework (WDF)
Лиценцирање и доступност по платформама
[уреди | уреди извор]Mathematica је власнички софтвер са лиценцом чија се цена креће у зависности од тога где се користи (комерцијална, едукациона или друга употреба).[65]
Програм Mathematica 10 је подржан на разним верзијама оперативних система Microsoft Windows (Vista, 7, 8 и 10), Apple-ов OS X, Linux, Raspbian и као сервис на мрежи.[66] Све платформе су подржане са 64-битним имплементацијама.[67] Програм Mathematica је пре верзије 10 за OS X захтевао Java SE 6 који је застарела компонента Mavericks-а. Раније верзије програма Mathematica до верзије 6.0.3 су подржавале и друге оперативне ситеме, укључујући Solaris, AIX, Convex, HP-UX, IRIX, MS-DOS, NeXTSTEP, OS/2, Ultrix и Windows Me.[68]
Историјат верзија
[уреди | уреди извор]Mathematica је направљен на идејама Wolfram-овог ранијег програма Symbolic Manipulation Program.[69][70] Име програма, „Mathematica“, је предложено од стране кооснивача Apple-а Стива Џобса иако је Стивен Волфрам то име имао у виду и раније га одбацио.[71]
Wolfram Research је ибацио наредне верзије програма Mathematica:[72]
Види још
[уреди | уреди извор]- Wolfram језик
- Wolfram Alpha
- Wolfram SystemModeler, алат за моделирање и симулацију који се интегрише са програмом Mathematica
- Списак софтвера за рачунарску симулацију
- Списак софтвера за прављење графика
- Математички софтвер
Референце
[уреди | уреди извор]- ^ Wolfram, Stephen (23. 6. 2008), Mathematica Turns 20 Today, Wolfram, Приступљено 16. 5. 2012
- ^ Stephen Wolfram: Simple Solutions; The iconoclastic physicist's Mathematica software nails complex puzzles, BusinessWeek, October 3, 2005.
- ^ "Contact Wolfram Research".
- ^ "Stephen Wolfram’s new programming language: Can he make the world computable?"
- ^ "Wolfram Language & System Documentation Center".
- ^ „Review: Mathematica 7.”. Архивирано из оригинала 16. 11. 2011. г. Приступљено 08. 01. 2016.
- ^ Mathematica 6 Labs Review Архивирано на сајту Wayback Machine (25. март 2022) Cadalyst Feb 1, 2008
- ^ "The Free-Form Linguistics Revolution in Mathematica".
- ^ "Free-Form Linguistic Input".
- ^ "Wolfram intros Workbench IDE for Mathematica" Архивирано на сајту Wayback Machine (2. јул 2006).
- ^ Using a Text-Based Interface documentation at wolfram.com
- ^ "JMath: A GNU Readline based frontend for Mathematica".
- ^ "Directory listing:".
- ^ Cliff Hastings.
- ^ Math software packs new power; new programs automate such tedious processes as solving nonlinear differential equations and converting units by Agnes Shanley, Chemical Engineering, March 1, 2002.
- ^ Mathematica 5.1: additional features make software well-suited for operations research professionals by ManMohan S. Sodhi, OR/MS Today, December 1, 2004.
- ^ The 21st annual Editors' Choice Awards, Macworld, February 1, 2006.
- ^ "ClearSpeed Advance(TM) Accelerator Boards Certified by Wolfram Research; Math Coprocessors Enable Mathematica Users to Quadruple Performance." Архивирано на сајту Wayback Machine (25. јануар 2016)
- ^ gridMathematica offers parallel computing solution Архивирано на сајту Wayback Machine (2. децембар 2005) by Dennis Sellers, MacWorld, November 20, 2002.
- ^ Mathematica Player Pro - new Application Delivery System for Mathematica www.gizmag.com
- ^ "Computable Document Format (CDF) for Interactive Content".
- ^ New Mathematica: faster, leaner, linkable and QuickTime-compatible: MathLink kit allows ties to other apps.
- ^ Mathematica 4.2 Архивирано на сајту Wayback Machine (21. новембар 2007) by Charles Seiter, Macworld, November 1, 2002.
- ^ . [1]
- ^ "mathlink: Write Mathematica packages in Haskell - Hackage".
- ^ S.Kratky.
- ^ "MrMathematica: Calling Mathematica from Scheme".
- ^ "Mathematica for ActiveX -- from Wolfram Library Archive".
- ^ "erocarrera/pythonika".
- ^ "PYML (Python Mathematica interface) -- from Wolfram Library Archive".
- ^ "Clojuratica - Home".
- ^ CalcLink Архивирано на сајту Wayback Machine (6. јануар 2016) Lauschke Consulting
- ^ "Mathematica Link for Excel: Bringing the Power of Mathematica to Excel".
- ^ R. Menon, Sz. Horvát.
- ^ Ben Barrowes (10 June 2010).
- ^ "MaMa: Calling MATLAB from Mathematica with MathLink -- from Wolfram Library Archive".
- ^ RLink Mathematica Documentation
- ^ „Calling Sage from Mathematica”. Архивирано из оригинала 8. 7. 2012. г. Приступљено 8. 1. 2016.
- ^ A Mathematica notebook Архивирано на сајту Wayback Machine (19. јул 2011) to call Sage from Mathematica.
- ^ Manuel Kauers and Viktor Levandovskyy of the Johannes Kepler University in Austria
- ^ * Interface Links Origin And Mathematica Software Архивирано на сајту Wayback Machine (20. март 2007) Electronic Design
- ^ Mathematica 5.1 Available Архивирано на сајту Wayback Machine (23. фебруар 2012) , Database Journal, Jan 3, 2005.
- ^ Mathematical Web Services: W3C Note 1 August 2003
- ^ Introduction to Web Services, Mathematica Web Services Tutorial
- ^ "shadanan/HadoopLink".
- ^ Mathematica Link to Labview BetterView Consulting
- ^ DDFLink Архивирано на сајту Wayback Machine (6. јануар 2016) Lauschke Consulting
- ^ GITM SourceForge.
- ^ BTopTools Архивирано на сајту Wayback Machine (21. фебруар 2012) A commercial interface to USB devices
- ^ "Interfacing Hardware with Mathematica -- from Wolfram Library Archive".
- ^ "Scientific and Technical Data", Mathematic Guide Архивирано на сајту Wayback Machine (10. мај 2012), Wolfram Research, retrieved 16 May 2012
- ^ "Wolfram Language & System Documentation Center – Some Notes on Internal Implementation".
- ^ "Wolfram Products & Services".
- ^ "All Mathematica Applications" Архивирано на сајту Wayback Machine (5. јануар 2016).
- ^ "What is Wolfram|Alpha?" Архивирано на сајту Wayback Machine (27. јануар 2016)
- ^ "Wolfram Knowledgebase™".
- ^ "Wolfram Finance Platform™".
- ^ "WolframWorkbench™2".
- ^ "Wolfram Development Platform™".
- ^ "Wolfram Cloud™".
- ^ "Wolfram for Education".
- ^ "Wolfram Data Framework™ (WDF)".
- ^ "Wolfram Discovery Platform™" Архивирано на сајту Wayback Machine (5. јануар 2016).
- ^ "Wolfram Data Science Platform™".
- ^ "Wolfram Mathematica License Agreement" (PDF).
- ^ Raspberry Pi Includes Mathematica for Free The Verge
- ^ "Wolfram Mathematica".
- ^ „Mathematica 6 Platform Availability”. Архивирано из оригинала 28. 9. 2011. г. Приступљено 8. 1. 2016.
- ^ Math, the universe, and Stephen: the author of Mathematica created a whirlwind of scientific controversy this year when, after more than 10 years of research, he published his treatise on the ability of simple structures to create unpredictable complex patterns. (2002 Scientist Of The Year).
- ^ A Top Scientist's Latest: Math Software by Andrew Pollack, The New York Times, June 24, 1988.
- ^ Wolfram, Stephen (6 Oct 2011), STEVE JOBS: A FEW MEMORIES, Wolfram Alpha, retrieved 16 May 2012
- ^ "Mathematica Latest Version and Quick Revision History".
Спољашње везе
[уреди | уреди извор]- Званични веб-сајт
- Mathematica центар за документацију
- Интернет страница за идентификацију слика коју покреће Mathematica
- Wolfram пројекат за демонстрације - демонстрације изведене уз помоћ програма Mathematica
- Историјат програма Mathematica који документује раст базе кода и број функција током времена