Citizendia
Your Ad Here

Mathematica
Developed by Wolfram Research
Initial release 1988 (19–20 years ago)
Stable release 6.0.3  (June 10th 2008) [+/−]
Preview release 6.0.3  (n/a) [+/−]
Platform Cross-platform (list)
Available in multilingual
Genre Computer algebra, numerical computations, Information visualization, statistics, user interface creation
License Proprietary
Website Mathematica homepage

Mathematica is a computer program used widely in scientific, engineering and mathematical fields. A software developer is a person or organization concerned with facets of the software development process wider than design and coding a somewhat broader scope of Year 1988 ( MCMLXXXVIII) was a Leap year starting on Friday (link displays 1988 Gregorian calendar) A software release is the distribution whether public or private of an initial or new and upgraded version of a Computer software product Events 1190 - Third Crusade: Frederick I Barbarossa drowns in the Sally River while leading an army to Jerusalem 2008 ( MMVIII) is the current year in accordance with the Gregorian calendar, a Leap year that started on Tuesday of the Common A software release is the distribution whether public or private of an initial or new and upgraded version of a Computer software product In Computing, a platform describes some sort of Hardware architecture or Software framework (including Application frameworks, that allows In computing cross-platform (also known as multi-platform) is a term used to refer to Computer software or computing methods and concepts that are implemented A language is a dynamic set of visual auditory or tactile Symbols of Communication and the elements used to manipulate them Computer software can be organized into categories based on common function type or field of use A computer algebra system ( CAS) is a software program that facilitates Symbolic mathematics. Listed here are a number of computer programs used for performing numerical calculations acslX is a software application for modeling and evaluating the performance Information graphics or infographics are visual representations of Information, Data or Knowledge. A statistical package is a suite of Computer programs that are specialised for statistical analysis. A software license (or software licence in commonwealth usage is a Legal instrument governing the usage or redistribution of copyright protected software Proprietary software is Computer software on which the producer has set restrictions on use private modification copying, or republishing. A website (alternatively web site or Web site, a back-construction from the Proper noun World Wide Web) is a collection of Web pages It was originally conceived by Stephen Wolfram and developed by a team of mathematicians and programmers that he assembled and led. Stephen Wolfram (born August 29, 1959 in London) is a British Physicist, Mathematician and Businessman known for his It is developed by Wolfram Research of Champaign, Illinois. Champaign is a city in Champaign County, Illinois, in the United States. [1]

Contents

Overview

Create a plot and manipulation dialog with a line of code
Create a plot and manipulation dialog with a line of code

Mathematica is split into two parts, the "kernel" and the "front end". In Computer science, the kernel is the central component of most computer Operating systems (OS The kernel interprets expressions (Mathematica code) and returns result expressions. The Front End provides a document centered GUI.

Features

Some features of Mathematica include[2]:

Front ends

The Mathematica Front End provides an interface which allows the creation and editing of Notebook documents which can contain program code with prettyprinting, formatted text together with results including typeset mathematics, graphics, GUI components, tables and sounds. Complex plane In Mathematics, the complex numbers are an extension of the Real numbers obtained by adjoining an Imaginary unit, denoted On a Computer, arbitrary-precision arithmetic, also called bignum arithmetic is a technique whereby Computer programs perform Calculations on To prettyprint (or pretty-print) is to present an object to a human reader so that it is easier to perceive the object's structure or less commonly to simply make it more All contents and formatting can be generated algorithmically or interactively edited and most standard word processing capabilities are supported but only one level of "undo" is supported.

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 a slide show environment for presentations. Starting with version 3. 0 of the software, 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. TeX (ˈtɛx as in Greek, often /ˈtɛk/ in English; written with a lowercase 'e' in imitation of the logo is a Typesetting system designed and mostly Don't change "Extensible"

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 MathLink protocol. Mathematica is a computer program used widely in scientific engineering and mathematical fields It is possible to use the kernel on one computer and the front end on another.

The standard Mathematica front end is used by default, but alternative front ends are available:

High-performance computing

In recent years the capabilities for High-performance computing have been extended with the introduction of packed arrays (version 4, 1999) [6], sparse matrices (version 5, 2003)[7], and by adopting the free GNU Multi-Precision Library to evaluate high-precision arithmetic. High-performance computing (HPC uses Supercomputers and Computer clusters to solve advanced computing problems The GNU Multiple-Precision Library, also known as GMP, is a free library for Arbitrary-precision arithmetic, operating on signed Integers

Version 5. 2 (2005) added automatic multi-threading when computations are performed on modern multi-core computers. [8] This release included CPU specific optimized libraries. In addition Mathematica is supported by third party specialist acceleration hardware such as ClearSpeed. ClearSpeed Technology PLC is a corporation based in Bristol England that sells Attached Processors (APs or Coprocessors as they are also called for use as accelerators in High Performance [9]

In 2002 gridMathematica was introduced to allow user level parallel programming on heterogeneous clusters and multiprocessor systems and supports grid technology such as the Microsoft Compute Cluster Server. gridMathematica is a product sold by Wolfram Research which is based on its main product Mathematica. Parallel computing is a form of computation in which many instructions are carried out simultaneously operating on the principle that large problems can often Windows Server 2003 (also referred to as Win2K3 is a server Operating system produced by Microsoft. [10]

Deployment

Several solutions are available for deploying applications written in 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. Wolfram Research freely distributes a developer kit for linking applications written in the C programming language to the Mathematica kernel through MathLink. tags please moot on the talk page first! --> In Computing, C is a general-purpose cross-platform block structured [12] Two other components of Mathematica, whose underlying protocol is MathLink, allow developers to establish communication between the kernel and a . NET or Java program: . NET/Link. [13] and J/Link[14]

Using . NET/Link, a . NET program can ask Mathematica to perform computations; likewise, a Mathematica program can load . NET classes, manipulate . In Object-oriented programming, a class is a Programming language construct that is used as a blueprint to create objects This blueprint includes attributes NET objects and perform method calls. This makes it possible to build . NET graphical user interfaces from within Mathematica. Similar functionality is achieved with J/Link, but with Java programs instead of . NET programs.

Communication with SQL databases is achieved through built-in support for JDBC. Java Database Connectivity (JDBC is an API for the Java programming language that defines how a client may access a Database. [15].

Mathematica can also install web services from a WSDL description[16][17]. A Web service (also Web Service) is defined by the W3C as "a software system designed to support interoperable machine-to-machine interaction The Web Services Description Language (WSDL pronounced 'wiz-dəl' or spelled out 'W-S-D-L' is an XML -based language that provides a model for describing Web services

Language examples

The following Mathematica sequence will find the determinant of the 6×6 matrix whose i, j'th entry contains ij. In Algebra, a determinant is a function depending on n that associates a scalar, det( A) to every n × n In Mathematics, a matrix (plural matrices) is a rectangular table of elements (or entries) which may be Numbers or more generally

In[1]:= Det[Array[Times, {6, 6}]]
Out[1]= 0

So the determinant of such a matrix is 0 (i. e. it is singular). In Linear algebra, an n -by- n (square matrix A is called invertible or non-singular if there exists an n -by-

The following numerically calculates the root of the equation ex = x2 + 2, starting at the point x = -1.

In[2]:= FindRoot[Exp[x] == x^2 + 2, {x, -1}]
Out[2]= {x -> 1. 3190736768573652}

Mathematica can do integral and differential calculus, in particular evaluation of integrals in terms of special functions. Calculus ( Latin, calculus, a small stone used for counting is a branch of Mathematics that includes the study of limits, Derivatives Special functions are particular mathematical functions which have more or less established names and notations due to their importance for the Mathematical analysis For example:

In[3]:= Integrate[x/Sin[x], x]//OutputForm
Out[3]= x (Log[1 - EI x] - Log[1 + EI x]) + I (PolyLog[2, -EI x] - PolyLog[2, EI x])

Here, E and I are the fundamental constants e and i respectively, and PolyLog[s,z] is the polylogarithm function \mathrm{Li}_s\left(z\right). The Mathematical constant e is the unique Real number such that the function e x has the same value as the slope of the tangent line Definition By definition the imaginary unit i is one solution (of two of the Quadratic equation The polylogarithm (also known as de Jonquière's function) is a Special function Li s ( z) that is defined by the sum

Symbolic sums can be calculated. For example:

In[4]:= Sum[z^k/k^s, {k, 1, Infinity}]
Out[4]= PolyLog[s, z]

Multiple programming paradigms

Mathematica permits multiple approaches to programming. Consider this example: we want a table of values of gcd(x, y) for 1 ≤ x ≤ 5, 1 ≤ y ≤ 5.

The most concise approach is to use one of the many specialized functions:

In[3]:= Array[GCD, {5, 5}]
Out[3]= {{1, 1, 1, 1, 1}, {1, 2, 1, 2, 1}, {1, 1, 3, 1, 1}, {1, 2, 1, 4, 1}, {1, 1, 1, 1, 5}}

There are at least three other approaches to this:

In[4]:= Table[GCD[x, y], {x, 1, 5}, {y, 1, 5}]
Out[4]= {{1, 1, 1, 1, 1}, {1, 2, 1, 2, 1}, {1, 1, 3, 1, 1}, {1, 2, 1, 4, 1}, {1, 1, 1, 1, 5}}

An APL-style approach:

In[5]:= Outer[GCD, Range[5], Range[5]]
Out[5]= {{1, 1, 1, 1, 1}, {1, 2, 1, 2, 1}, {1, 1, 3, 1, 1}, {1, 2, 1, 4, 1}, {1, 1, 1, 1, 5}}

Outer corresponds to the generalized outer product operator, Range corresponds to the iota operator. Outer admits general functions, whether they be named, or anonymous. Anonymous functions are specified by using #n to as the function argument and appending an &. The above function could be equivalently specified as Outer[GCD[#1, #2] &, Range[5], Range[5]].

An approach using loops:

In[6]:= l1 = {}; (* initialize as empty list, since we want a list in the end *)
Do[l2 = {};
Do[l2 = Append[l2, GCD[i, j]], {j, 1, 5}];
l1 = Append[l1, l2], (* append the sublist, that is, the row *)
{i, 1, 5}]
In[7]:= l1
Out[7]= {{1, 1, 1, 1, 1}, {1, 2, 1, 2, 1}, {1, 1, 3, 1, 1}, {1, 2, 1, 4, 1}, {1, 1, 1, 1, 5}}

Observe that this solution is considerably larger than the previous ones.

Common structures and manipulations

One guiding principle in Mathematica is a unified structure behind almost all objects representable in Mathematica. For example, the expression x4 + 1 if entered will be represented as if it were written:

In[8]:= x^4 + 1
Out[8]= 1+x4

If the FullForm command is used on this expression however:

In[9]:= FullForm[x^4 + 1]
Out[9]= Plus[1, Power[x, 4]]

All objects in Mathematica, except atomic ones such as symbols, numbers, and strings, have the basic form head[e1, e2, . . . ] (which may be displayed or entered in some other fashion). For example, the head of the above expression is Plus. Lists have this structure too, where the head is List, and the elements are e1, e2, etc. The concept of head is defined for atomic objects as well (Symbol for symbols, Integer for whole numbers, etc. ), but they have no extractable subparts.

The principle permits ordinary expressions unrelated to lists to be operated on with list operators:

In[10]:= Expand[(Cos[x] + 2 Log[x^11])/13][[2, 1]]
Out[10]= 2/13

The reverse can also occur -- lists can be modified to behave like ordinary expressions:

In[11]:= Map[Apply[Log, #] &, {{2, x}, {3, x}, {4, x}}]
Out[11]= {Log[x]/Log[2], Log[x]/Log[3], Log[x]/Log[4]}

where the Apply function changes the head of its second argument to that of the first, and Map behaves like the map function found in many functional languages. In Mathematics and Computer science, higher-order functions or '''functionals''' are functions which do at least one of the following Note that Log[b,x] is the base b logarithm, which is converted to Log[x]/Log[b] on input. In Mathematics, the logarithm of a number to a given base is the power or Exponent to which the base must be raised in order to produce

Because of this equivalence between a regular mathematical object represented in Mathematica to that of a simple list structure, some built-in Mathematica functions permit threading, where functions map themselves over lists without much further specification. Indeed, Apply threads itself over lists when invoked as

In[12]:= Apply[Log, {{2,x}, {3,x}, {4,x}}, 1]
Out[12]= {Log[x]/Log[2], Log[x]/Log[3], Log[x]/Log[4]}

where the third argument being a 1 specifies that Apply replaces the heads of its argument only at the first level in the list, which is what we want, and is equivalent to the above example.

When writing a large piece of code ("Module"), variables references are by default global rather than local and must be declared at the top rather than inline, violating DRY. Contrast with redundancy and mirror. Don't Repeat Yourself (DRY also known as Single Point of Truth is a process philosophy aimed

Licensing

Mathematica is proprietary software protected by both trade secret and copyright law. Proprietary software is Computer software on which the producer has set restrictions on use private modification copying, or republishing. A trade secret is a Formula, practice, Process, Design, instrument, Pattern, or compilation of Information which Copyright is a legal concept enacted by Governments, giving the creator of an original work of authorship Exclusive rights to control its distribution usually for [18]

A regular single-user license for Mathematica 6. 0 includes one year of service which includes updates, technical support, a home use license, a webMathematica Amateur license. [19] and a Wolfram Workbench license. Discounts are available for government, charity, educational, pre-college, school, student and retiree use and depend on geographical region. Educational site licenses allow use by students at home. A license manager similar to Flexlm is available to provide efficient sharing of licenses within a group.

Platform Availability

Mathematica 6 is supported on various versions of Microsoft Windows, Apple's Mac OS X, Linux, Sun's Solaris (UltraSPARC and AMD x86 processors only), HP's HP-UX and IBM's AIX platforms. Microsoft Windows is a series of Software Operating systems and Graphical user interfaces produced by Microsoft. Mac OS X (mæk oʊ ɛs tɛn is a line of computer Operating systems developed marketed and sold by Apple Inc, the latest of which is pre-loaded on all currently Linux (commonly pronounced ˈlɪnəks Solaris is a Unix -based Operating system introduced by Sun Microsystems in 1992 as the successor to SunOS. HP-UX (Hewlett Packard UniX is Hewlett-Packard 's proprietary implementation of the Unix Operating system, based on System V (initially All platforms are supported with 64-bit implementations. [20]

Version history

Mathematica built on the ideas in Cole and Wolfram's earlier Symbolic Manipulation Program (SMP). Symbolic Manipulation Program, usually called SMP, was a Computer algebra system designed by Chris A [21][22]

Wolfram Research has released the following versions of Mathematica:

See also

References

  1. ^ Stephen Wolfram: Simple Solutions; The iconoclastic physicist's Mathematica software nails complex puzzles, BusinessWeek, October 3, 2005. The following tables provide a comparison of Computer algebra systems (CAS The following tables provide a comparison of Numerical analysis software. The following tables compare general and technical information for a number of Statistical analysis packages The IMTEK Mathematica Supplement (IMS for short is an Open source Mathematica AddOn that aims to provide a wealth of tutorials and packages for Scientific and Engineering Listed here are a number of computer programs used for performing numerical calculations acslX is a software application for modeling and evaluating the performance A statistical package is a suite of Computer programs that are specialised for statistical analysis. This is a list of software to create any kind of Information graphics: either includes the ability to create one or more Infographics from a provided data set Mathematical software is Software used to model, analyze or calculate numeric symbolic or geometric data Mathematical Markup Language ( MathML) is an application of XML for describing mathematical notations and capturing both its structure and content MathModelica System Designer, developed by MathCore Engineering AB is a tool for modeling and simulation of multidomain dynamic systems Theodore W Gray is one of the founders of Wolfram Research and is currently Wolfram's Director of User Interface Technology
  2. ^ Mathematica documentation
  3. ^ MacWorld review of Wolfram Workbench
  4. ^ JMath website
  5. ^ MASH website
  6. ^ 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.
  7. ^ Mathematica 5.1: additional features make software well-suited for operations research professionals by ManMohan S. Sodhi, OR/MS Today, December 1, 2004.
  8. ^ The 21st annual Editors' Choice Awards, Macworld, February 1, 2006.
  9. ^ ClearSpeed Advance(TM) Accelerator Boards Certified by Wolfram Research; Math Coprocessors Enable Mathematica Users to Quadruple Performance.
  10. ^ gridMathematica offers parallel computing solution by Dennis Sellers, MacWorld, November 20, 2002.
  11. ^ Mathematica Player Pro - new Application Delivery System for Mathematica www. gizmag. com
  12. ^ 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.
  13. ^ .NET/Link: . NET/Link is a toolkit that integrates Mathematica and the Microsoft . NET Framework.
  14. ^ Mathematica 4.2: Feature-Rich Math Program Integrates with the Web, Adds Full Java Support by Charles Seiter, Macworld, November 1, 2002.
  15. ^ Mathematica 5.1 Available , Database Journal, Jan 3, 2005.
  16. ^ Mathematical Web Services: W3C Note 1 August 2003
  17. ^ Introduction to Web Services, Mathematica Web Services Tutorial
  18. ^ Wolfram Mathematica License Agreement
  19. ^ webMathematica terms
  20. ^ Supported platforms list
  21. ^ 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.
  22. ^ A Top Scientist's Latest: Math Software by Andrew Pollack, The New York Times, June 24, 19988.
  23. ^ Supercomputer Pictures Solve the Once Insoluble, John Markoff, October 30, 1988.
  24. ^ Mathematica 1.2 adds new graphics options: upgrade also promises concurrent operations by Elinor Craig, MacWeek, July 25, 1989.
  25. ^ Mathematica + 283 functions = Mathematica 2.0 by Raines Cohen, MacWeek, January 15, 1991.
  26. ^ 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.
  27. ^ New version of Mathematica, Mechanical Engineering, June 1, 1993.
  28. ^ New Mathematica by Stephen H. Wildstrom, BusinessWeek, June 15, 1997.
  29. ^ Mathematica 4.0 by Charles Seiters, Macworld, October 1, 1999.
  30. ^ Mathematica 4.2: Feature-Rich Math Program Integrates with the Web, Adds Full Java Support by Charles Seiter, Macworld, November 1, 2002.
  31. ^ Mathematica 5.0 Adds Up: Exactly 15 years after Mathematica's initial release, Wolfram Research has released Mathematica , PC Magazine, September 3, 2003.
  32. ^ 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.
  33. ^ Mathematica hits 64-bit, MacWorld UK, July 13, 2005.
  34. ^ 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.

External links


© 2009 citizendia.org; parts available under the terms of GNU Free Documentation License, from http://en.wikipedia.org
Dapyx Software network: MP3 Explorer | Ebook Manager | Zenithic