Wolfram Mathematica (conhecido como Mathematica) é um programa de computador, originalmente concebido por Stephen Wolfram, e continuamente desenvolvido pela empresa Wolfram Research, localizada em Champaign (Illinois), que implementa um sistema de álgebra computacional. Além de uma linguagem de programação, contém diversas bibliotecas de programação prontas a serem usadas para diversos fins em várias áreas das ciências exatas.[1]

Wolfram Mathematica
Logótipo
Mathematica

Superfície criada com o Mathematica.
Desenvolvedor Wolfram Research
Plataforma Multiplataforma, Windows, Linux, Mac OS X da Apple
Lançamento 23 de junho de 1988
Versão estável 14.0 (Janeiro de 2024)
Versão em teste [+/-]
Idioma(s) Inglês, Chinês, Japonês
Escrito em Mathematica, C/C++, Wolfram, Java
Gênero(s) Sistema de Álgebra Computacional, Visualização de informação, Computações numéricas
Licença Software Proprietário
Página oficial Wolfram Mathematica: Software de Computação Técnica

O programa insere-se em diversas áreas da engenharia, biologia, química, processamento de imagens, finanças, estatística, matemática, além de outras, e também serve como um ambiente para desenvolvimento rápido de programas.

As versões mais recentes permitem a troca de informação com programas em Java, C++, entre outros, usando bibliotecas para comunicação entre aplicações - assim possibilitando que um programa do Mathematica, por exemplo, acesse a porta serial ou receba informações de um equipamento (hardware) externo. Pode também ser usado para a digitação de documentos com formatação matemática complexa

O Mathematica roda nas plataformas Windows, Linux, Solaris e Mac OS X. O nome do programa foi sugerido a Stephen Wolfram por Steve Jobs em meados da década de 1980, e apesar de Wolfram ter recusado o nome no começo, decidiu adota-lo.[2]

Diversas empresas brasileiras utilizam o Mathematica em suas atividades, como Petrobrás, Banco Santander, Furnas, Transpetro, CENPES, Inpe e Embraer.[3] Várias universidades do país também têm adquirido licenças do Mathematica para o uso de seus alunos, professores e demais funcionários.[4][5]

Formato de Arquivo editar

O Mathematica cria, edita e salva arquivos no formato chamado de notebook (ou caderno, em tradução livre para o Português). Este formato é expressado pela extensão .nb, formato reconhecido por todas as versões do Mathematica e pelos players lançados pela Wolfram research, o Mathematica Player e sua versão mais atual o CDF Player.

Recursos editar

Recursos do Mathematica incluem:[6]

  • Biblioteca de funções matemáticas básicas
  • Bibliotecas de funções matemáticas especiais
  • Ferramentas de manipulação de matrizes e dados incluindo suporte a matrizes esparsas
  • Suporte a números complexos, precisão arbitrária, aritmética de intervalos e computação simbólica
  • Visualização de funções e dados em 2D e 3D, e ferramentas de animação
  • Solucionadores de sistemas de equações, equações de diophantine, ODEs, PDEs, DAEs, DDEs e relações de retorno
  • Ferramentas numéricas e simbólicas para cálculo contínuo e discreto
  • Bibliotecas multivariadas de estatística incluindo ajuste, teste de hipóteses, e cálculos de probabilidade e expectativa em mais de 100 distribuições
  • Otimização local e global, restrita e irrestrita
  • Linguagem de programação que suporta construções procedural, funcional e orientada a objetos
  • Kit de ferramentas para adicionar interfaces de usuário a cálculos e aplicações
  • Ferramentas para processamento de imagens e processamento de imagens morfológico incluindo reconhecimento de imagens
  • Ferramentas para visualizar e analisar grafos
  • Ferramentas para problemas combinatórios
  • Ferramentas para prospecção de textos incluindo análise de expressões regulares e análises semânticas
  • Ferramentas de prospecção de dados como análise de cluster, alinhamento de sequências e correspondência de padrões
  • Biblioteca de funções de teoria dos números
  • Ferramentas para cálculos financeiros incluindo fundos, anuidades, derivativos, opções, etc.
  • Funções da teoria dos grupos
  • Bibliotecas para análise de sons, imagens e dados de wavelets
  • Bibliotecas de sistemas de controle
  • Transformadas integrais contínuas e discretas
  • Filtros de importação e exportação de dados, imagens, vídeos, sons, CAD, GIS, documentos e formatos biomédicos
  • Coleção de base de dados para acesso a dados e computações do WolframAlpha em áreas como matemática, científica, e informações socioeconômicas
  • Processamento de palavras técnicas como edição de fórmulas e geração automática de relatórios
  • Ferramentas para conectar DLLs. Sistemas com base em SQL, Java, .NET, C++, FORTRAN, CUDA, OpenCL e http
  • Ferramentas para programação em paralelo
  • Possibilidade de uso de entradas linguísticas de forma livre (uma interface de usuário em linguagem natural) e linguagem do Mathematica em um notebook quando existir conexão a internet

Interface editar

O Mathematica é composto de duas partes, a interface gráfica (também conhecida como front end) e o kernel. O kernel é a parte que interpreta as expressões e código do Mathematica e retorna os resultados. Já a interface gráfica, é onde o usuário trabalha com opções gráficas mais estéticas e com possíveis edições. Alguns dos recursos mais conhecidos da front end do Mathematica são a possível alternância entre notação matemática e notação padrão do Mathematica, a criação de relatórios e artigos científicos, apresentações, etc.

O principal responsável pela front end do Mathematica é Theodore Gray, co-fundador da Wolfram Research e atual diretor do setor de interface de usuário da empresa. A partir do trabalho que Theodore desenvolveu para a interface do usuário do Mathematica surgiu uma empresa de nome TouchPress que utiliza tecnologias do Mathematica para a criação de ebooks dinâmicos.[7] Outras aplicações derivadas da interface do usuário desenvolvida para o Mathematica são o Mathematica Player e o CDF Player. O Mathematica Player é uma versão anterior de plugin para navegadores de internet para execução de arquivos do Mathematica. A versão mais recente deste player é o CDF Player, introduzido em conjunto com o Formato de Documento Computável (do inglês Computable Document Format, CDF). O CDF Player é o atual programa utilizado para distribuição gratuita de arquivos criados pelo Mathematica.

Os documentos do Mathematica podem ser estruturados através da utilização de uma hierarquia de células, que permite destacar e dividir o trabalho em seções, que suporta criação automática de número de seções. Os documentos podem ser apresentados em um ambiente no formato de apresentação de slides, no caso de apresentações. Os notebooks e seus conteúdos podem ser expressados como expressões do Mathematica que podem ser criadas, modificadas e analisadas por programas do Mathematica. Isso permite a conversão entre o formato padrão do Mathematica e outros formatos como TeX ou XML.

O front-end inclui ferramentas de desenvolvimento como um depurador, conclusão de entrada e coloração automática de sintaxe.

Entre os front-ends alternativos está o Wolfram Workbench, um IDE baseado no Eclipse, lançado em 2006. Ele fornece ferramentas de desenvolvimento de código baseadas em projetos para o Mathematica, incluindo gestão de revisão, depuração, perfis e testes.[8] O Mathematica Kernel também inclui um front-end de linha de comando.[9] Entre outras interfaces está ainda o JMath,[10] baseado no GNU readline, e o MASH,[11] que executa programas do Mathematica independentes a partir da linha de comando UNIX.

Dados Computáveis editar

 
Um gráfico de fluxo a partir de dados meteorológicos em tempo real

O Mathematica inclui coleções de dados processados de maneira consistente para computação imediata. Os dados podem ser acessados de maneira programática para informar ou testar modelos e são atualizados automaticamente a partir de um servidor de dados da Wolfram Research.[12] Alguns dados como preços de ações e dados meteorológicos são fornecidos em tempo real. Atualmente os conjuntos de dados incluem:

  • Dados astronômicos: 99 propriedades de 155.000 corpos astronômicos
  • Dados químicos: 111 propriedades de 34.000 compostos químicos, 86 propriedades de 118 elementos químicos e 35 propriedades de 1000 partículas subatômicas
  • Dados geopolíticos: 225 propriedades de 237 países e 14 propriedades de 160.000 cidades ao redor do mundo
  • Dados financeiros: 71 propriedades históricas e em tempo real de 186.000 ações e instrumentos financeiros
  • Dados matemáticos: 89 propriedades de 187 poliedros, 258 propriedades de 3000 gráficos, 63 propriedades de 6 nós, 37 propriedades de 21 estruturas de rede, 32 propriedades de 52 esquemas geodésicos
  • Dados linguísticos: 37 propriedades de 149.000 palavras em inglês. 26 dicionários de línguas adicionais
  • Dados biomédicos: 41 propriedades de todos os 40.000 genes humanos, 30 propriedades de 27.000 proteínas
  • Dados meteorológicos: medidas históricas e em tempo real de 43 propriedades de 17.000 estações meteorológicas ao redor do mundo
  • Dados do Wolfram|Alpha: trilhões de pontos de dados do WolframAlpha

Áreas de aplicação editar

O Mathematica é um dos programas de computação mais poderosos que existem, e para atingir tal patamar estendeu a aplicação do programa às mais diversas áreas do conhecimento. O que inicialmente era um programa mais focado para matemática, levou a uma restrição do conceito por causa do nome. Stephen Wolfram comenta que o Mathematica de hoje em dia é muito mais do que era há mais de duas décadas quando foi lançado, e sente que o nome limita o entendimento das pessoas com relação a capacidade do programa.[13]

A versão 8 do Mathematica inclui diversas novas áreas do conhecimento, como análise de wavelets, computação em paralelo, programação em GPU, processamento e análise de imagens, sistemas de controle, engenharia financeira e biologia computacional. Como pode se ver pelos exemplos citados, o software é capaz de trabalhar com as mais diversas áreas sem a necessidade de compra de pacotes adicionais, todas as áreas podem ser operadas com a licença original. A tabela a seguir mostra algumas das áreas em que o Mathematica é capaz de operar.[14]

Engenharia - Engenharia Química

- Ciências dos Materiais
- Engenharia Mecânica
- Engenharia Elétrica
- Engenharia do Petróleo

Ciências Biológicas - Bioinformática - banco de dados

- Genoma humano
- Proteína: todas as proteínas humanas
- Estruturas Químicas
- Medicina - processamento de imagens

Ciências Exatas - Astronomia

- Meteorologia
- Ótica
- Física
- Química
- Estatística

Economia e Finanças - Seguro: estimativas e banco de dados

- Análise de crédito e risco
- Econometria: banco de dados de índices
- Engenharia financeira e Economia

Ensino de Matemática - Nível superior: Cálculo

- Ensino a distância: matemática interativa
- Centros de Aprendizagem

Outras Áreas - Música

- Artes
- Design de Jogos
- Edição de Artigos Científicos

Conexão com outras aplicações editar

A comunicação com outras aplicações ocorre através de um protocolo chamado MathLink. Ele permite a comunicação entre o kernel do Mathematica e o front-end, e também fornece uma interface geral entre o kernel e outras aplicações. A Wolfram Research distribui gratuitamente um kit de desenvolvimento para a ligação de aplicativos escritos na linguagem de programação C com o kernel do Mathematica através do MathLink.[15] Usando J/Link.,[16] um programa Java pode solicitar do Mathematica que execute cálculos; por sua vez, um programa Mathematica pode carregar classes Java, manipular objetos Java e realizar chamadas de método. Funcionalidade semelhante é conseguida com .NET /Link,[17] mas com programas . NET em vez de programas Java. Entre outras linguagens que se conectam ao Mathematica estão Haskell,[18] AppleScript,[19] Racket,[20] Visual Basic,[21] Python[22][23] e Clojure.[24]

Há ainda a disponibilidade de links para muitos pacotes de software especializados em matemática, incluindo LibreOffice Calc,[25] Microsoft Excel,[26] MATLAB,[27][28][29] R,[30] Sage,[31][32] SINGULAR,[33] Wolfram SystemModeler e Origin.[34] Equações matemáticas podem ser intercambiadas com outros softwares de cálculo ou de formatação de texto via MathML.

A comunicação com bancos de dados SQL é realizada através de um suporte embutido para JDBC.[35] O programa também pode instalar serviços da web a partir de uma descrição WSDL.[36][37]

Mathematica pode capturar dados em tempo real através de um link para o LabVIEW,[38] a partir de feeds de dados financeiros[39] e diretamente de dispositivos de hardware via GPIB (IEEE 488),[40] USB[41] e interfaces seriais.[42] Ele ainda automaticamente reconhece e lê a partir de dispositivos HID.

Licenciamento e Plataformas editar

Mathematica é um software proprietário licenciado a uma variedade de preços, a depender da finalidade do uso: comercial, educacional, para a administração pública, entre outros.[43]

Mathematica 9 é compatível com várias versões do Microsoft Windows (XP SP3, Vista, 7 e 8), OS X, Linux e Raspbian.[44] Todas as plataformas possuem suporte para versões de 64 bits.[45] Versões anteriores do Mathematica, até a versão 6.0.3, suportavam outros siestemas operacionais, como Solaris, AIX, Convex, HP-UX, IRIX, MS-DOS, NeXTSTEP, OS/2, Ultrix e Windows Me.[46]

Histórico de versões editar

Wolfram Research lançou as seguintes versões do Mathematica:[47]

  • Mathematica 1.0 (23 de Junho, 1988)[48][49][50][51]
  • Mathematica 1.1 (31 de Outubro, 1988)
  • Mathematica 1.2 (1 de Agosto, 1989)[52][51]
  • Mathematica 2.0 (15 de Janeiro, 1991)[53][51]
  • Mathematica 2.1 (15 de Junho, 1992)[51][15]
  • Mathematica 2.2 (1 de Junho, 1993)[51][54]
  • Mathematica 3.0 (3 de Setembro, 1996)[55]
  • Mathematica 4.0 (19 de Maio, 1999)[51][56]
  • Mathematica 4.1 (2 de Novembro, 2000)[51]
  • Mathematica 4.2 (1° de Novembro, 2002)[51]
  • Mathematica 5.0 (12 de Junho, 2003)[51][57]
  • Mathematica 5.1 (25 de Outubro, 2004)[51][58]
  • Mathematica 5.2 (20 de Junho, 2005)[51][59]
  • Mathematica 6.0 (1° de Maio, 2007)[60][61]
  • Mathematica 7.0 (18 de Novembro, 2008)[62]
  • Mathematica 8.0 (15 de Novembro, 2010)
  • Mathematica 8.0.1 (7 de Março, 2011)
  • Mathematica 8.0.4 (24 de Outubro, 2011)
  • Mathematica 9.0 (28 de Novembro, 2012)
  • Mathematica 9.0.1 (30 de Janeiro, 2013)
  • Mathematica 10.0 (9 de Julho, 2014)
  • Mathematica 10.0.1 (17 de Setembro de 2014)
  • Mathematica 10.0.2 (10 de Dezembro de 2014)
  • Mathematica 10.1 (30 de Março de 2015)
  • Mathematica 10.2 (14 de Julho de 2015)
  • Mathematica 10.3 (15 de Outubro de 2015)
  • Mathematica 10.3.1 (16 de Dezembro de 2015)
  • Mathematica 10.4 (2 de março de 2016)
  • Mathematica 11.0 (8 de Agosto de 2016) [63]
  • Mathematica 11.0.1 (22 de setembro de 2016)
  • Mathematica 11.1 (16 de março de 2017) [64]
  • Mathematica 11.1.1 (19 de abril de 2017)
  • Mathematica 11.2 (14 de setembro de 2017) [65]
  • Mathematica 11.3 (8 de março de 2018)
  • Mathematica 12.0 (16 de abril de 2019)[66]

Ver também editar

 
Wikilivros
O Wikilivros tem um livro chamado Mathematica
 
O Commons possui uma categoria com imagens e outros ficheiros sobre Mathematica

Referências

  1. Sobre o Mathematica.
  2. Steve Jobs: A Few Memories
  3. http://www.sia.com.br/mathematica.htm
  4. http://portal.ufes.br/conteudo/software-mathematica-auxilia-pesquisadores-e-professores
  5. http://www.ufpe.br/dmat/index.php?option=com_content&view=article&id=523&Itemid=342
  6. Mathematica documentation
  7. «Touch Press - About Us». Consultado em 16 de Fevereiro de 2012. Arquivado do original em 21 de Janeiro de 2012 
  8. MacWorld review of Wolfram Workbench
  9. Using a Text-Based Interface documentation at wolfram.com
  10. JMath website
  11. MASH website
  12. «Cópia arquivada». Consultado em 22 de fevereiro de 2012. Arquivado do original em 10 de maio de 2012 
  13. «Entrevista com Stephen Wolfram, o cientista que quer reinventar as buscas». Consultado em 16 de fevereiro de 2012. Arquivado do original em 6 de julho de 2010 
  14. «Mathematica». Consultado em 16 de Junho de 2010. Arquivado do original em 19 de Junho de 2010 
  15. 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.
  16. Mathematica 4.2 Arquivado em 21 de novembro de 2007, no Wayback Machine. by Charles Seiter, Macworld, November 1, 2002.
  17. .NET/Link: .NET/Link is a toolkit that integrates Mathematica and the Microsoft .NET Framework.
  18. Haskell packages
  19. «Unisoftware plus». Consultado em 28 de janeiro de 2014. Arquivado do original em 17 de julho de 2011 
  20. MrMathematica website
  21. Mathematica for ActivX
  22. Pythonika MathLink module for Python
  23. PYML (Python Mathematica interface)
  24. «Clojuratica - Home». Clojuratica.weebly.com. Consultado em 16 de agosto de 2013 
  25. CalcLink Arquivado em 6 de janeiro de 2016, no Wayback Machine. Lauschke Consulting
  26. Mathematica Link for Excel
  27. MATLink
  28. Mathematica Toolbox for Matlab
  29. Mathsource item #618 for calling MATLAB from Mathematica Roger Germundsson da Wolfram Research
  30. RLink Mathematica Documentation
  31. «Calling Sage from Mathematica». Consultado em 28 de janeiro de 2014. Arquivado do original em 8 de julho de 2012 
  32. A Mathematica notebook Arquivado em 19 de julho de 2011, no Wayback Machine. para acessar Sage do Mathematica.
  33. Manuel Kauers and Viktor Levandovskyy da Universidade Johannes Kepler, Austria
  34. * Interface Links Origin And Mathematica Software Arquivado em 20 de março de 2007, no Wayback Machine. Electronic Design
  35. Mathematica 5.1 Available , Database Journal, Jan 3, 2005.
  36. Mathematical Web Services: W3C Note 1 August 2003
  37. Introduction to Web Services, Mathematica Web Services Tutorial
  38. Mathematica Link to Labview BetterView Consulting
  39. DDFLink Arquivado em 6 de janeiro de 2016, no Wayback Machine. Lauschke Consulting
  40. GITM SourceForge
  41. BTopTools Uma interface comercial para dispositivos USB
  42. Interfacing Hardware with Mathematica
  43. Wolfram Mathematica License Agreement
  44. Raspberry Pi Includes Mathematica for Free The Verge
  45. Supported platforms list
  46. «Mathematica 6 Platform Availability». Consultado em 28 de janeiro de 2014. Arquivado do original em 28 de setembro de 2011 
  47. Quick Revision History of Mathematica
  48. Mathematica: The Scrapbook, Wolfram, consultado em 28 de janeiro de 2014, cópia arquivada em 18 de maio de 2012 
  49. Mathematica Journal, Volume 9, Issue 1
  50. Supercomputer Pictures Solve the Once Insoluble, John Markoff, October 30, 1988.
  51. a b c d e f g h i j k Nasser M. Abbasi. «A little bit of Mathematica history» 
  52. Mathematica 1.2 adds new graphics options: upgrade also promises concurrent operations by Elinor Craig, MacWeek, July 25, 1989.
  53. Mathematica + 283 functions = Mathematica 2.0 by Raines Cohen, MacWeek, January 15, 1991.
  54. New version of Mathematica Arquivado em 23 de outubro de 2012, no Wayback Machine., Mechanical Engineering, June 1, 1993.
  55. «Wolfram News Archive». Wolfram.com. Consultado em 16 de agosto de 2013 
  56. Mathematica 4.0 Arquivado em 2012-06-04 na Archive.today by Charles Seiters, Macworld, October 1, 1999.
  57. Mathematica 5.0 Adds Up: Exactly 15 years after Mathematica's initial release, Wolfram Research has released Mathematica , PC Magazine, September 3, 2003.
  58. 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.
  59. Mathematica hits 64-bit, MacWorld UK, July 13, 2005.
  60. Today, Mathematica is reinvented - Blog by Stephen Wolfram
  61. 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.
  62. Mathematica 7.0 Released Today! - Blog by Stephen Wolfram
  63. Today We Launch Version 11! - Blog by Stephen Wolfram
  64. The R&D Pipeline Continues: Launching Version 11.1! - Blog by Stephen Wolfram
  65. It's Another Impressive Release! Launching Version 11.2 Today - Blog by Stephen Wolfram
  66. «Version 12 Launches Today! (And It's a Big Jump for Wolfram Language and Mathematica)—Stephen Wolfram Blog». blog.stephenwolfram.com. Consultado em 14 de junho de 2019 

Ligações externas editar