Wolfram Mathematica: Difference between revisions
Line 22: | Line 22: | ||
* [[Elementary function|Elementary]] mathematical function library |
* [[Elementary function|Elementary]] mathematical function library |
||
* [[Special functions|Special]] mathematical function library |
* [[Special functions|Special]] mathematical function library |
||
* 2D and 3D data and function [[Visualization (graphic)|visualization]] tools |
* 2D and 3D data and function [[Visualization (graphic)|visualization]] and animation tools |
||
* Matrix and data manipulation tools including support for [[sparse array]]s |
* Matrix and data manipulation tools including support for [[sparse array]]s |
||
* Solvers for systems of equations, [[diophantine equation]]s [[Ordinary differential equation|ODEs]], [[Partial differential equation|PDEs]], [[Differential algebraic equation|DAEs]], [[Delay differential equation|DDEs]] and [[recurrence relation]]s |
* Solvers for systems of equations, [[diophantine equation]]s [[Ordinary differential equation|ODEs]], [[Partial differential equation|PDEs]], [[Differential algebraic equation|DAEs]], [[Delay differential equation|DDEs]] and [[recurrence relation]]s |
Revision as of 17:04, 5 October 2009
File:WolframSpikeyVersion7.png | |
Developer(s) | Wolfram Research |
---|---|
Initial release | June 23, 1988[1] |
Stable release | 14.0.0 (January 9, 2024[±][2] | )
Written in | Mathematica, statistics, user interface creation |
License | Proprietary |
Website | Mathematica homepage |
Mathematica is a computational software program used in scientific, engineering, and mathematical fields and other areas of technical computing. It was originally conceived by Stephen Wolfram and is developed by Wolfram Research of Champaign, Illinois.[3][4]
Features
Features of Mathematica include[5]:
- Elementary mathematical function library
- Special mathematical function library
- 2D and 3D data and function visualizationand animation tools
- Matrix and data manipulation tools including support for sparse arrays
- Solvers for systems of equations, DAEs, DDEs and recurrence relations
- Numeric and symbolic tools for discrete and continuous calculus
- Multivariate statistics libraries
- Constrained and unconstrained local and global optimization
- Programming language supporting procedural, functional and object oriented constructs
- Toolkit for adding user interfaces to calculations and applications
- Tools for image processing [6]
- Tools for visualizing and analysing graphs
- Tools for combinatoric problems
- Data mining tools such as cluster analysis, sequence alignment and pattern matching
- Number theory function library
- Continuous and discrete integral transforms
- Import and export filters for data, images, video, sound, GIS[7], document and biomedical formats
- Database collection for mathematical, scientific, and socio-economic information
- Support for arbitrary precision, interval arithmetic and symbolic computation
- Notebook interface for review and re-use of previous inputs and outputs including graphics and text annotations
- Technical word processing including formula editing and automated report generating
- Tools for connecting to httpbased systems
- Tools for parallel programing
Interface
Mathematica is split into two parts, the
The Mathematica Front End, designed by
Documents can be structured using a hierarchy of cells, which allow for outlining and sectioning of a document and support automatic numbering index creation. Documents can be presented in a slideshow environment for presentations. Notebooks and their contents are represented as Mathematica expressions that can be created, modified or analysed by Mathematica programs. This allows conversion to other formats such as TeX or XML.
The Mathematica Front End includes development tools such as a debugger, input completion and automatic syntax coloring.
The kernel and the front end communicate via the
The standard Mathematica front-end is used by default, but alternative front-ends are available, including the Wolfram Workbench, an Eclipse based IDE, introduced in 2006. It provides project-based code development tools for Mathematica, including revision management, debugging, profiling, and testing.[8] Mathematica includes a command line front end.
High-performance computing
In recent years, the capabilities for
Version 5.2 (2005) added automatic multi-threading when computations are performed on multi-core computers.[11] This release included CPU specific optimized libraries. In addition Mathematica is supported by third party specialist acceleration hardware such as ClearSpeed.[12]
In 2002,
Planned support for CUDA hardware was announced in 2008 but is still only provided by a third party add-on.
Development
Several solutions are available for deploying applications written in Mathematica:
- Mathematica Player Pro is a runtime version of Mathematica that will run any Mathematica application but does not allow editing or creation of the code.[14]
- Mathematica Player is a free interactive player is provided for running Mathematica programs that have been digitally signed for non-commercial use via a Wolfram Research web service, or published on the Wolfram Demonstrations Project website. It can also view unsigned Mathematica files, but not run them.
- webMathematica allows a web browser to act as a front end to a remote Mathematica server. It is designed to allow a user written application to be remotely accessed via a browser on any platform. It may not be used to give full access to Mathematica.
Connections with other applications
Communication with other applications occurs through a protocol called MathLink. It allows communication between the Mathematica kernel and front-end, and also provides a general interface between the kernel and other applications.
Although Mathematica has a large array of functionality, a number of interfaces to other software have been developed, for use where other programs have functionality that Mathematica does not provide, to enhance those applications, or to access legacy code.
Languages
- Wolfram Research freely distributes a developer kit for linking applications written in the C programming language to the Mathematica kernel through MathLink.[15]
- Using .NET/Link.classes, manipulate .NET objects and perform method calls. This makes it possible to build .NET graphical user interfacesfrom within Mathematica.
- Similar functionality is achieved with J/Link.[17], but with Java programs instead of .NET programs.
- GUIKit allows the construction of custom interfaces to Mathematica using the Java Swing libraries.
- Communication with JDBC.[18]
- Mathematica can also install
- MrMathematica allows people to call Mathematica from PLT Scheme.[21]
- Other languages that connect to Mathematica include
Spreadsheets
- The OpenOffice.org office suite supports bi-directional access to Mathematica [24]. Whilst OpenOffice.org is open-source and free, the add-on is commercial.
- Microsoft Excel can call Mathematica via a commercial add-on [25]
Specialized Mathematical software
- MATLAB, which is another commercial mathematics program can be called from Mathematica, using freeware software written by Wolfram Research.[26]
- .
- The open-source special purpose computer algebra system SINGULAR can be called from within Mathematica. [31]
- MathModelica System Designer, modeling and simulation environment integrates with Mathematica
- Mathematica can be called from Origin [32]
Mathematical equations can be exchanged with other computational or typesetting software as MathML.
Data acquisition
- Mathematica can link to LabView[33], which is a commercial program commonly used for data acquisition, and instrument control.
- GPIB (IEEE 488) devices can be accessed via a free package GITM[34]
- USB devices can be connected to Mathematica by use of a commercial add-on called BTopTools [35]
- A free Mathematica package [36] written for Mathematica 5.2 connects Mathematica to serial, parallel and USB devices can be found in the Wolfram Research library. Whether this works with Mathematica 6 or 7 would need to be tested.
Alternative Interfaces
- JMath is a third-party front end based on GNU readline that runs on UNIX-like operating systems.[37]
- MASH makes it possible to run self contained Mathematica programs (with arguments) from the UNIX command line.[38]
Computable data
Mathematica includes collections of curated data in a consistent framework for immediate computation. Data can be accessed programmatically to inform or test models and is updated automatically from a data server at Wolfram Research[39]. Some data such as share prices and weather are delivered in real-time. Data sets currently include:
- Astronomical data: 99 properties of 155,000 astronomical bodies
- Chemical data: 111 properties of 34,000 chemical compounds, 86 properties of 118 chemical elements and 35 properties of 1000 subatomic particles
- Geopolitical data: 225 properties of 237 countries and 14 properties of 160,000 cities around the world
- Financial data: 71 historical and real-time properties of 186,000 shares and financial instruments
- Mathematical data: 89 properties of 187 polyhedra, 258 properties of 3000 graphs, 63 properties of 6 knots, 37 properties of 21 lattice structures, 32 properties of 52 geodesic schemes
- Language data: 37 properties of 149,000 English words. 26 additional language dictionaries
- Biomedical data: 41 properties of all 40,000 human genes, 30 properties of 27,000 proteins
- Weather data: live and historical measurements of 43 properties of 17,000 weather stations around the world
Licensing
Mathematica is proprietary software restricted by both trade secret and copyright law.[40]
A regular single-user license for Mathematica used in a commercial environment costs between $2495 and $3120. It includes four additional kernels for parallel computations and one year of service that includes updates, technical support, a home use license, a webMathematica Amateur license
Platform availability
Mathematica 7 is supported on various versions of
.The Mathematica Home Edition is a 32-bit application on
Support
Support via email is available to registered users by the emailing [email protected].
There is no official public support forum for professional users, although there is an official support forum for students.[45] Posts are reviewed by a Wolfram Research moderator before they appear on the student forum.
MathGroup is a moderated email list and internet newsgroup comp.soft-sys.math.mathematica. It has more than 100,000 posts [46] and is the dominant public forum although it is not controlled by Wolfram Research. The moderator is Steve Christensen. Wolfram Research staff regularly answer questions on Mathgroup. The posts are archived by Wolfram Research.
There are several other unofficial support forums, which are unmoderated, so posts appear without delay. These include the newsgroup sci.math.symbolic and http://www.mathematica-users.org, but none have the popularity of the dominant Mathgroup.
Books
There are a large number of books [
The 408 page book Mathematica programming: An advanced Introduction written by Leonid Shifrin, released under the
Version history
Mathematica built on the ideas in Cole and Wolfram's earlier
Wolfram Research has released the following versions of Mathematica[49]:
- Mathematica 1.0 (1988)[50]
- Mathematica 1.1 (1989)[51]
- Mathematica 1.2 (1989)[52]
- Mathematica 2.0 (1991)[53]
- Mathematica 2.1 (1992)[15]
- Mathematica 2.2 (1993)[54]
- Mathematica 3.0 (1996)[55]
- Mathematica 4.0 (1999)[56]
- Mathematica 4.1 (2000)
- Mathematica 4.2 (2002)[17]
- Mathematica 5.0 (2003)[57]
- Mathematica 5.1 (2004)[58]
- Mathematica 5.2 (2005)[59]
- Mathematica 6.0 (2007)[60]
- Mathematica 6.0.1 (2007)
- Mathematica 6.0.2 (2008)
- Mathematica 6.0.3 (2008)
- Mathematica 7.0 (2008)[61]
- Mathematica 7.0.1 (2009)
See also
- Publicon, a technical software publication marketed by Wolfram Research
- Wolfram Alpha
- IMTEK Mathematica Supplement, an open source Mathematica add-on for Finite Element Simulation
- List of computer simulation software
- List of graphing software
- Mathematical software
References
- ^ http://blog.wolfram.com/2008/06/23/mathematica-turns-20-today/
- ^ "The Story Continues: Announcing Version 14 of Wolfram Language and Mathematica". Retrieved 2024-01-09.
- ^ Stephen Wolfram: Simple Solutions; The iconoclastic physicist's Mathematica software nails complex puzzles, BusinessWeek, October 3, 2005.
- ^ Wolfram Research Contact Info
- ^ Mathematica documentation
- ^ Review: Mathematica 7. Technical computing powerhouse gets more oomph Macworld, Jan 2009
- ^ Mathematica 6 Labs Review Cadalyst Feb 1, 2008
- ^ MacWorld review of Wolfram Workbench
- ^ 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.
- ^ gridMathematica offers parallel computing solution by Dennis Sellers, MacWorld, November 20, 2002.
- ^ Mathematica Player Pro - new Application Delivery System for Mathematica www.gizmag.com
- ^ a b New Mathematica: faster, leaner, linkable and QuickTime-compatible: MathLink kit allows ties to other apps. (Wolfram Research Inc. ships Mathematica 2.1, new QuickTime-compatible version of Mathematica software) by Daniel Todd, MacWeek, June 15, 1992.
- ^ .NET/Link: .NET/Link is a toolkit that integrates Mathematica and the Microsoft .NET Framework.
- ^ a b Mathematica 4.2: [[Feature-rich Feature-Rich Math Program Integrates with the Web, Adds Full Java Support] by Charles Seiter, Macworld, November 1, 2002.
- ^ Mathematica 5.1 Available , Database Journal, Jan 3, 2005.
- ^ Mathematical Web Services: W3C Note 1 August 2003
- ^ Introduction to Web Services, Mathematica Web Services Tutorial
- ^ MrMathematica website
- ^ Haskell pakages
- ^ Unisoftware plus
- ^ CalcLink OpenOffice Extensions
- ^ [1]Mathematica Link for Excel
- ^ Mathsource item #618 for calling MATLAB from Mathematica Roger Germundsson from Wolfram Research
- Rfrom within Mathematica
- R's functionality with Mathematica Wolfram Technology Conference in 2006
- ^ http://facstaff.unca.edu/mcmcclur/Mathematica/Sage/ Calling Sage from Mathematica
- Sagefrom Mathematica.
- ^ [2] Manuel Kauers and Viktor Levandovskyy of the Johannes Kepler University in Austria
- ^ Interface Links Origin And Mathematica Software Electronic Design
- ^ Mathematica Link to Labview BetterView Consulting
- ^ GITM SourceForge
- ^ BTopTools A commercial interface to USB devices
- ^ [http://library.wolfram.com/infocenter/MathSource/6380/ Interfacing Hardware with Mathematica]
- ^ JMath website
- ^ MASH website
- ^ http://reference.wolfram.com/mathematica/guide/ScientificAndTechnicalData.html
- ^ Wolfram Mathematica License Agreement
- ^ webMathematica terms
- ^ Mathematica Home Edition Released Macworld, Feb 2009
- ^ Supported platforms list
- ^ Mathematica 6 Platform Availability
- ^ Official support forum for students
- ^ Mathgroup
- ^ 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).(Stephen Wolfram) by Tim Studt, R&D, November 1 , 2002.
- ^ A Top Scientist's Latest: Math Software by Andrew Pollack, The New York Times, June 24, 19988.
- ^ Quick Revision History of Mathematica
- ^ Supercomputer Pictures Solve the Once Insoluble, John Markoff, October 30, 1988.
- ^ Mathematica 1.1. Biotechnology Software. Vogel, W. K. (1989)
- ^ Mathematica 1.2 adds new graphics options: upgrade also promises concurrent operations by Elinor Craig, MacWeek, July 25, 1989.
- ^ Mathematica + 283 functions = Mathematica 2.0 by Raines Cohen, MacWeek, January 15, 1991.
- ^ New version of Mathematica, Mechanical Engineering, June 1, 1993.
- ^ New Mathematica by Stephen H. Wildstrom, BusinessWeek, June 15, 1997.
- ^ Mathematica 4.0 by Charles Seiters, Macworld, October 1, 1999.
- ^ Mathematica 5.0 Adds Up: Exactly 15 years after Mathematica's initial release, Wolfram Research has released Mathematica , PC Magazine, September 3, 2003.
- ^ Mathematica 5.1's Web Services Add Up; Mathematica 5.1 delivers improvements over Version 5.0 that are vastly out of proportion for a .1 upgrade. by Peter Coffee, eWeek, December 6, 2004.
- ^ Mathematica hits 64-bit, MacWorld UK, July 13, 2005.
- ^ Mathematica 6: Felix Grant finds that version 6 of Wolfram Research's symbolic mathematical software really does live up to its expectations. Scientific Computing, 2007.
- ^ Mathematica 7: Released Wolfram Blog, 2008.
External links
- Wolfram Research
- Mathematica
- Mathematica Documentation Center
- comp.soft-sys.math.mathematica discussion group
- Google Directories entry containing a wide variety of useful links and tutorials
- Mathematica-users, a wiki for users of Mathematica
- Mathematica Photo Gallery, examples of art using Mathematica
- Will it rot my students' brains if they use Mathematica? by Theodore W. Gray and Jerry Glynn, excerpted from The Beginner's Guide to Mathematica V4, published by Cambridge University Press.
- "Levels Of A Mathematica Expression" by Enrique Zeleny, Wolfram Demonstrations Project.
- A little bit of Mathematica history documenting the growth of code base and number of functions over time.