Matemática | |
---|---|
Tipo de | Sistema de álgebra computacional |
Desarrollador | Investigación Wolframio |
Escrito en | C , C++ [1] , Java [1] y Wolfram |
Interfaz | Qt |
Sistema operativo | Windows , mac OS , Linux |
Primera edición | 23 de junio de 1988 |
ultima versión |
|
Formatos de archivo legibles | .nb, .m, .cdf y otros |
Estado | En desarrollo activo |
Licencia | Software propietario , comercial |
Sitio web | wolfram.com/mathematica |
Archivos multimedia en Wikimedia Commons |
Mathematica es un sistema patentado de álgebra computacional ampliamente utilizado para cálculos científicos, de ingeniería y matemáticos. Desarrollado en 1988 por Stephen Wolfram , el desarrollo posterior del sistema está ocupado por Wolfram Research , fundada por él junto con Theodore Gray .
Equipado con capacidades analíticas y proporciona cálculos numéricos; los resultados se muestran tanto en forma alfanumérica como en forma de gráficos. Las funciones informáticas y analíticas son proporcionadas por un backend al que se pueden conectar varias interfaces de usuario . La interfaz tradicional que viene con el sistema es una computadora portátil , pero es posible trabajar con el backend desde entornos de desarrollo integrados como Eclipse e IntelliJ IDEA ; Desde 2002 ha habido una herramienta JMath gratuita que proporciona una interfaz de línea de comandos para Mathematica a través de la interfaz MathLink [3] .
Principales capacidades analíticas:
El sistema también realiza cálculos numéricos: determina los valores de las funciones (incluidas las especiales ) con precisión arbitraria , realiza la interpolación polinomial de una función a partir de un número arbitrario de argumentos utilizando un conjunto de valores conocidos y calcula probabilidades.
Posibilidades teóricas de números : definición de un número primo por su número ordinal, determinación del número de números primos que no exceden uno dado; transformada discreta de Fourier ; descomposición de un número en factores primos , hallando MCD y MCM .
El sistema también tiene capacidades algebraicas lineales : trabajar con matrices (suma, multiplicación, encontrar la matriz inversa , multiplicación por un vector, calcular el exponente, tomar el determinante ), buscar valores propios y vectores propios .
El sistema presenta los resultados tanto en forma alfanumérica como en forma de gráficos. En particular, se implementa la construcción de gráficas de funciones , incluyendo curvas y superficies paramétricas ; construcción de formas geométricas ( polilíneas , círculos , rectángulos y otros); construcción y manipulación de grafos . Además, se implementa la reproducción de sonido , cuya gráfica está determinada por una función analítica o un conjunto de puntos.
El sistema proporciona la generación automática de código de programa en lenguaje C y su vinculación ; mientras que los programas generados se pueden utilizar de forma autónoma. Se admite el uso de SymbolicC para crear, procesar y optimizar el código C. Los programas pueden utilizar bibliotecas dinámicas externas , incluida la integración con CUDA y OpenCL .
Wolfram es un lenguaje de programación funcional interpretado que forma la base lingüística del sistema, permitiéndole expandir sus capacidades; además, Mathematica está escrito en gran parte en el lenguaje Wolfram, aunque algunas funciones, especialmente las relacionadas con el álgebra lineal , se implementan en C con fines de optimización .
El lenguaje es compatible tanto con la programación procedimental que utiliza sentencias de control de ejecución de programas estándar (bucles y saltos condicionales) como con un enfoque orientado a objetos que permite una evaluación diferida . También en el sistema de Mathematica, puede establecer las reglas para trabajar con ciertas expresiones.
Ejemplo de código: se selecciona una lista de números primos en bloques usando niveles de números primos:
En [ 1 ] := tm = 2 ; pag = {}; k = 1 ; hacer [ Hacer [ Si [ t > 0 , Para [ i = 1 , ( s = p [[ i ]]) <= t + 1 , i ++ , Si [ MCD [ k - s , 2 s - 1 ] != 1 , Ir a [ l ]]]]; p = Agregar a [ p , k ]; Etiqueta [ l ]; k ++ , { 4 ( t + 1 )}], { t , 0 , tm }]; pag *= 2 ; pag- ; _ pag [[ 1 ]] ++ ; pags Fuera [ 1 ] = { 2 , 3 , 5 , 7 , 11 , 13 , 17 , 19 , 23 , 29 , 31 , 37 , 41 , 43 , 47 }Existen numerosas extensiones para el sistema que resuelven clases especializadas de problemas. Por ejemplo, la extensión AceFEM está diseñada para resolver problemas físicos y matemáticos usando el método de elementos finitos , la extensión Analog Insydes es para modelar, analizar y crear circuitos eléctricos, Derivatives Expert es para analizar valores y derivados , Fuzzy Logic es para crear, modificar y visualización de conjuntos borrosos . Para resolver problemas geométricos, existen extensiones Geométrica (una enciclopedia geométrica con la capacidad de construir con precisión objetos geométricos y verificar declaraciones) y Geometry Expressions (geometría simbólica). Además de extensiones, se implementan generadores de código para C++ y Fortran 90 y paquetes de integración para interactuar con Excel y LabView .
diccionarios y enciclopedias | |
---|---|
En catálogos bibliográficos |
Programas de aprendizaje profundo | |
---|---|
software libre |
|
software no libre |
|
|
Sistemas de álgebra computacional | |
---|---|
Propiedad |
|
Libre | |
Gratis/shareware |
|
No soportado |
|