Wolfram Mathematica - Wolfram Mathematica

Wolfram Mathematica
Mathematica Logo.svg
Desenvolvedor (s) Wolfram Research
lançamento inicial 23 de junho de 1988 ; 33 anos atrás ( 23/06/1988 )
Versão estável 12.3.1 (20 de junho de 2021 ; 3 meses atrás ) [±] ( 2021-06-20 )
Escrito em Linguagem Wolfram , C / C ++ , Java
Plataforma Windows (10), macOS , Linux , Raspbian , serviço online. Todas as plataformas suportam implementações de 64 bits. (Lista)
Disponível em Inglês, chinês, japonês
Modelo Álgebra computacional , cálculos numéricos , visualização de informação , estatísticas , criação de interface de usuário
Licença Proprietário
Local na rede Internet www .wolfram .com / mathematica / Edite isso no Wikidata

Wolfram Mathematica é um sistema de software com bibliotecas integradas para diversas áreas da computação técnica que permite aprendizado de máquina , estatística , computação simbólica , manipulação de matrizes , funções de plotagem e vários tipos de dados, implementação de algoritmos , criação de interfaces de usuário e interface com programas escritos em outras linguagens de programação . Foi concebido por Stephen Wolfram e é desenvolvido pela Wolfram Research de Champaign, Illinois. A Wolfram Language é a linguagem de programação usada no Mathematica .

Interface de notebook

O Wolfram Mathematica (chamado de Mathematica por alguns de seus usuários) é dividido em duas partes: o kernel e o front end . O kernel interpreta expressões (código Wolfram Language) e retorna expressões de resultado, que podem então ser exibidas pelo front end.

O front end original, projetado por Theodore Gray em 1988, consiste em uma interface de notebook e permite a criação e edição de documentos de notebook que podem conter código, texto simples, imagens e gráficos.

Alternativas para o front-end do Mathematica incluem Wolfram Workbench - um ambiente de desenvolvimento integrado (IDE) baseado em Eclipse que foi introduzido em 2006. Ele fornece ferramentas de desenvolvimento de código baseadas em projeto para o Mathematica, incluindo gerenciamento de revisão, depuração, criação de perfil e teste.

Há também um plugin para IDEs baseados em IntelliJ IDEA para trabalhar com o código Wolfram Language que, além do realce de sintaxe, pode analisar e completar automaticamente variáveis ​​locais e funções definidas. O Kernel do Mathematica também inclui um front end de linha de comando.

Outras interfaces incluem JMath, baseado em GNU Readline e WolframScript, que executa programas independentes do Mathematica (com argumentos) a partir da linha de comando do UNIX.

Computação de alto desempenho

Capacidades para computação de alto desempenho foram estendidas com a introdução de matrizes compactadas na versão 4 (1999) e matrizes esparsas (versão 5, 2003), e com a adoção da GNU Multi-Precision Library para avaliar aritmética de alta precisão.

A versão 5.2 (2005) adicionou multi-threading automático quando os cálculos são realizados em computadores multi-core . Esta versão inclui bibliotecas otimizadas específicas para CPU. Além disso, o Mathematica é compatível com hardware de aceleração especializado de terceiros, como ClearSpeed .

Em 2002, o gridMathematica foi introduzido para permitir a programação paralela em nível de usuário em clusters heterogêneos e sistemas multiprocessadores e em 2008 a tecnologia de computação paralela foi incluída em todas as licenças do Mathematica, incluindo suporte para tecnologia de grade como Windows HPC Server 2008 , Microsoft Compute Cluster Server e Sun Grid .

Suporte para hardware CUDA e GPU OpenCL foi adicionado em 2010.

Em 2019, o suporte foi adicionado para compilar o código Wolfram Language para LLVM .

Conexões com outros aplicativos, linguagens de programação e serviços

A comunicação com outros aplicativos ocorre por meio de um protocolo denominado Wolfram Symbolic Transfer Protocol (WSTP). Ele permite a comunicação entre o kernel do Wolfram Mathematica e o front end e fornece uma interface geral entre o kernel e outros aplicativos.

A Wolfram Research distribui gratuitamente um kit de desenvolvedor para vincular aplicativos escritos na linguagem de programação C ao kernel do Mathematica através do WSTP usando J / Link., Um programa Java que pode pedir ao Mathematica para realizar cálculos. Funcionalidades semelhantes são alcançadas com .NET / Link, mas com programas .NET em vez de programas Java.

Outras linguagens que se conectam ao Mathematica incluem Haskell , AppleScript , Racket , Visual Basic , Python e Clojure .

O Mathematica suporta a geração e execução de modelos Modelica para modelagem de sistemas e se conecta com o Wolfram System Modeler .

Os links também estão disponíveis para muitos pacotes de software e APIs de terceiros.

O Mathematica também pode capturar dados em tempo real de uma variedade de fontes e pode ler e gravar em blockchains públicos ( Bitcoin , Ethereum e ARK).

Suporta importação e exportação de mais de 220 dados, imagem, vídeo, som, design auxiliado por computador (CAD), sistemas de informação geográfica (GIS), documentos e formatos biomédicos

Dados computáveis

Um gráfico de fluxo de dados meteorológicos ao vivo

O Mathematica também é integrado ao Wolfram Alpha , um mecanismo de resposta de conhecimento computacional online que fornece dados adicionais, alguns dos quais são mantidos atualizados em tempo real, para usuários que usam o Mathematica com uma conexão à Internet. Alguns dos conjuntos de dados incluem dados astronômicos, químicos, geopolíticos, linguísticos, biomédicos e meteorológicos, além de dados matemáticos (como nós e poliedros).

Recepção

A BYTE em 1989 listou o Mathematica como um dos vencedores de "Distinção" do Prêmio BYTE, afirmando que "é outra aplicação inovadora do Macintosh ... pode permitir que você absorva a álgebra e o cálculo que pareciam impossíveis de compreender em um livro". O Mathematica foi criticado por ser de código fechado. A Wolfram Research afirma que manter o código-fonte fechado do Mathematica é fundamental para seu modelo de negócios e para a continuidade do software.


Veja também

Referências

links externos