Compute & Visualize

- Key capabilities - Advantages -


Numerics of any precision, symbolics, or visualization--Mathematica is the ultimate computational tool, with system-wide technology to ensure reliability, ease-of-use, and performance. Use Mathematica computation directly, as the engine in an infrastructure, or integrated into a standalone application.

All the computation you need
Mathematica provides you with the world's largest collection of algorithms in a single system--each able to operate across the widest applicable scope of numeric, symbolic, or graphical input.



Integrated symbolic computation
With integrated symbolic computation, you can work directly on precise models--transforming, optimizing, solving, and visualizing--only substituting approximate or specific numerical values where necessary. Whether it's for simulation set-up or as part of a hybrid approach with numerics, integrated symbolic computation is now recognized as an essential element of any error-free engineering or scientific workflow. Mathematica is the world's leading symbolic computation system, both in functionality and integration with numerics.

Any precision numerical computation
Mathematica's numerics support any precision or number size across all functions, in contrast to the typical fixed 16-digit limitation found in other computing systems. Without this you may be unable to produce answers accurate even to a small number of digits, as the internal workings of many calculations require much higher-precision input than they produce as output.

Visualize anything
Functions or data, discrete objects, diagrams, images, or annotations--Mathematica's visualization engine powers professional-quality static or dynamic representations, automatically optimizing the balance between computational efficiency and visual sophistication.



Integrated, computable data
Ready-to-use curated data is built into Mathematica in areas as diverse as chemistry, geopolitics, finance, and geometry. Compiled and collated by Wolfram Research, data paclets are immediately ready for computational use within Mathematica.

High-performance numerical computation
Multi-core, platform-optimized numerical computation is built into Mathematica, making it suitable for the most computationally intensive problems.



Precision control and tracking
Untracked numerical precision is a major cause of unrecognized errors in engineering and science calculations. Mathematica is unique in providing systemwide precision control and tracking to alert you to possible problems or correct them automatically.



Automatic algorithm selection
Often you know the task you want performed (e.g., solve a differential equation), but not the best algorithm to use. Systems usually leave you to manually select and sample any alternatives--risking a slow result, no result, or even the wrong answer. Mathematica instead uses automatic algorithm selection--applied to many algorithms. It's crucial for getting you and your team consistent, reliable results--a unique capability refined by our computation specialists over the past 20 years.

Models instantly come alive
Simply wrapping Manipulate around your expression takes any selected symbols--variables, parameters, Booleans, etc.--and immediately makes a ready-to-use interface through which you can control and vary their values.



Work with any data
Just one automated step enables you to import your data in hundreds of formats, from files, URLs, or live from databases--all immediately ready for Mathematica analysis. Mathematica's flexible symbolic representation natively supports textual, geometric, image, XML, sound, and many other modern structures, not just numerical matrices--making export as easy as import.

Symbolically enhanced numeric computing
Mathematica often uses symbolic calculation behind the scenes to optimize performance of your numerical computations for time and accuracy--or to make them directly computable at all. Examples include the intelligent handling of piecewise functions, discontinuities and automatic expression transformation ahead of numerical sampling.


Develop

- Key capabilities - Advantages -


Develop applets, applications, documents, or infrastructure components and systems using Mathematica's unique mix of capabilities--achieving record times on large projects or making small developments practical at all.

Full programming language
Mathematica has a fully featured, modern, symbolic language that enables you to create anything from models and algorithms to complex simulations, from simple macros to complete applications.

Automated interface construction



System integration support
Mathematica comes with built-in tools for full integration with your existing systems--legacy code, databases, web and grid infrastructures, etc.--acting as a client or a server.

Advanced development tools
Write, manage, debug, optimize, and deploy large projects with state-of-the-art Wolfram Workbench development tools.



Personal development environment
Mathematica makes it practical to build applications for just yourself or an individual colleague, even if it's only for better communicating a single idea.





Integrated modeling to development workflow
Build a model in Mathematica and instantly turn it into a deployable simulation, with documentation, cross-platform compatibility, and a range of deployment options.



Multi-scale: one system for small and large tasks
Mathematica is practical for building high-functionality single-line programs and also optimized and robust for large projects with tens of thousands of lines of code.

Literate and precise programming
Mathematica's language is highly literate--easily readable by you and your team--and precisely specifies programs for Mathematica's interpretation.



Multi-paradigm language
Express your technical ideas naturally with Mathematica by using any combination of functional, procedural, pattern-matching, object-oriented, or other paradigms. This multi-paradigm approach gets you programming the way you think, not thinking about which way you need to program.

Parallel programming
Mathematica provides high-level tools for developing applications that automatically distribute computations over multiple processors or cores.




Usability

- Key capabilities and Advantages -


Usability is not only about getting a result quickly and easily, but getting the right result every time. Automation and careful design, alongside broad but deep capabilities, are key to Mathematica's practical, long-term usability.

Task-oriented functions
Often you know the task you want performed, but not the best method for computing it. That's why Mathematica functions are called up by task (e.g., Solve) and pick the best method(s) automatically--dramatically improving consistency, reliability, and accessibility to powerful capabilities.



Document-centered interface
Mathematica's interface is based around documents, so that all elements--calculation, visualization, documentation, and even interactive applications--can be kept together and managed in one place.

One system: one design
Mathematica is highly coherent because every aspect--functions, graphics, notebooks, I/O, typesetting, interface elements, etc.--is represented with the same symbolic function paradigm. Additionally it's built as an all-in-one system, not as separate modules for you to piece together.

Dynamic type handling
Mathematica automates type handling, assigning Integer, Real, Symbol, Text, etc. to incoming data, making it quick to work with and reliable for different cases.

Automatic aesthetic control
The look of all output in Mathematica is controlled to maximize the efficiency with which you can understand patterns or trends--a crucial factor with the increasing volume of data and complexity of models employed.



Active documentation, including 100,000 examples
Mathematica documentation and all 100,000 examples are provided as notebooks. All in-product examples are immediately executable and modifiable, while examples on the web contain copyable popups and tiny URLs for direct linking.



Instantly interactive
Building an interactive model or simulation in Mathematica is as easy as making a static one. Just specify the parameters you'd like to vary and the ranges of possible values you'd like to test, and Mathematica instantly builds an interface with the best control elements automatically wired up.

Consistent design and naming: everything fits together
From ubiquitous symbolic representation to function naming, everything is consistent and coherent across Mathematica--allowing familiarity with one part of the system to immediately translate to the usability of a broad range of capabilities.


Performance

- Key capabilities and Advantages -


Mathematica combines reliability performance with superior, raw computational speed using state-of-the-art methods, some of which are only feasible in an integrated numeric-symbolic system.

Fast, modern algorithms
The latest algorithms developed around the world and in-house at Wolfram Research are built into Mathematica functions, along with the automation to invoke them when appropriate.

Systemwide adaptive scalability
Numerical or graphical algorithms have to sample points to evaluate functions. Sample too many and you sacrifice performance; too few and you get inaccurate results. Unlike most other systems, Mathematica automatically adapts the sampling rate to the function's behavior at each stage in a calculation, optimizing performance for a given algorithm.



Just-in-time compilation
Mathematica automatically applies its internal compiler to optimize numerical computations when this can improve total start-to-finish time. The process is transparent: you get higher performance without changing your input.

Optimized array handling
Different forms of arrays (e.g., sparse, machine-precision number, etc.) are represented internally in a variety of ways to optimize processing speed and memory usage. The full set of Mathematica commands are available for working with all forms of arrays.

Autovectorizing
Mathematica applies operations automatically to an entire vector, matrix, or array rather than just a single element--enhancing performance and ease-of-use.

Hardware-optimized numerical performance
Mathematica is consistently the first-to-market technical software with complete implementation for new hardware, OSes, and chipsets, often beating other systems by months or years. Ports are individually optimized to give you the best performance for your platform.



Every Mathematica is multicore
Parallel computation and automatic control is included with every Mathematica--making the most of your multicore computer to speed up built-in capabilities as well as your own functions.



Parallelize across the grid
With gridMathematica, parallelize not only your numerical computations, but symbolic too.



Self-checking precision control
Mathematica verifies and controls the precision of numerical calculations as it performs them, ensuring much greater consistency of results than previously possible. You have the choice to specify input, output, or working precision; Mathematica will give outputs corresponding to the justifiable precision.

Minimized start-to-finish time
Rather than purely optimizing computational performance, Mathematica cuts down total start-to-finish time through integrating all stages in the workflow from high-level symbolic problem specification through prototyping to simulation, reliability analysis, and deployment of results.



Hybrid symbolics-numerics
By preprocessing your numerical problems with symbolic techniques, Mathematica can increase computational performance, improve reliability, and cover a broader scope.

Always use the best algorithm
Mathematica consistently matches the best performing algorithm to your problem both because it contains a broad range of algorithms, and because Mathematica automates and optimizes selection between algorithms (even mid-calculation). Systemwide automatic algorithm selection is unique to Mathematica and eliminates a major source of poor speed and reliability performance in other systems.


Connect

- Key capabilities and Advantages -


Mathematica becomes the ultimate nerve center for all your technical computing needs--connecting, controlling, and integrating external data sources, streamed information, and existing systems as if they were built-in functions.

Automated import and export
Mathematica makes the importing and exporting of hundreds of formats seamless, automatically converting data to or from the Mathematica-computable format.

Data component retrieval
Seamlessly install and utilize live web services, or call up data from public or secured URLs just as you would from files.



Built-in connectivity with databases, languages, and applications
Built into Mathematica is integration with databases, languages, and a range of applications--so you can plug a Mathematica solution into your infrastructure immediately.



Deployment on a wide range of platforms
Mathematica is often the first major application ported to a new platform and is available, fully featured and optimized, for almost all operating systems available today--enabling you to use your machine of choice.



Optimized binary I/O
For fast interactive data transport, Mathematica includes Input/Output tools for binary data.

Work natively with any data
Just one automated step to import your data in hundreds of formats, from files, URLs, or live from databases--all immediately ready for Mathematica analysis. Mathematica's flexible symbolic representation natively supports textual, geometric, image, XML, sound, and many other modern structures, not just numerical matrices--making export as easy as import.


Document and Deploy

- Key capabilities - Advantages -


Mathematica offers a wide range of innovative deployment options based on the Mathematica notebook. Whether your deliverables are interactive documents, applications, infrastructure components, or presentations, Mathematica notebooks are the complete solution--deployable locally or across a network.


Interactive document system
Mathematica notebooks combine text, graphics, computations, and applications in one structured, interactive document. You can keep everything together--models, assumptions, experimental data, results (in static or interactive form), and commentary--while deploying complete workflows to others.



Deploy with the Player family
Use Mathematica Player or Player Pro to deploy complete applications or fully interactive documents to those without Mathematica. Player can be downloaded for free and is already in use by over tens of thousands of users.



Server deployment options
Deliver your Mathematica-based material across the web, accessible through a client's browser or other interface. webMathematica makes it easy to move from local prototype to server-side deployment.



Deployable as a service engine
Use Mathematica as an engine to power capabilities behind other systems. APIs are supplied for common languages and cases, such as web services and database linking.

Dynamic report generation
Generate and email interactive reports from Mathematica individually or programmatically. Use notebooks and deploy with the Player family or output as PDFs, Excel spreadsheets, and in other formats.



Document-application duality
Bridge the gap between documents and applications. The combination of Mathematica technology and the Player family means that everyday documents become interactive and applications are routinely part of documents--a first that dramatically increases the bandwidth of technical communication and reduces errors.



Retargetable documents
Once you make a Mathematica notebook, it can be retargeted for a variety of uses--giving presentations, printing reports, providing interactive documents, or pushing out to websites--in different formats, such as notebooks, PDFs, HTML, and XML.

Player Pro: the ultimate runtime
Because Player Pro contains the Mathematica engine, it immediately runs almost any Mathematica application, with the same multicore performance. Player Pro is the ultimate runtime--the power of Mathematica's ultra-high-level development environment for a fraction of the cost.

Live math
Math that looks like math, and can be edited and evaluated like math. It's all in situ, in Mathematica notebooks.

Concept-to-deployment workflow
Traditionally, code development and deployment tools have been separate from modeling and simulation systems. Mathematica combines both to create the first unified concept-to-deployment workflow.

Options for all scales of deployment
With the free Player and powerful Player Pro, there's an efficient and cost-effective deployment option for all scales. You can efficiently and cost-effectively deploy your interactive documents or applications at any scale to colleagues or clients.

Document as you go
Mathematica enables you to embed your ideas, reasoning, and conclusions into your work as you go along, because everything--computations, programs, and graphics--is in the Mathematica notebook document.










.