De Wikipedia, la enciclopedia libre
  (Redirigido desde Mathematica )
Saltar a navegación Saltar a búsqueda

Wolfram Mathematica (generalmente denominado Mathematica ) es un sistema de software con bibliotecas integradas para varias áreas de la computación técnica que permiten el cálculo simbólico , la manipulación de matrices , las funciones de trazado y varios tipos de datos, la implementación de algoritmos , la creación de interfaces de usuario y la interfaz con programas escritos en otros lenguajes de programación . Fue concebido por Stephen Wolfram y desarrollado por Wolfram Research de Champaign, Illinois . [8] [9] El lenguaje Wolframes el lenguaje de programación utilizado en Mathematica. [10]

Interfaz del cuaderno [ editar ]

Wolfram Mathematica se divide en dos partes: el núcleo y la interfaz . El kernel interpreta expresiones (código de Wolfram Language) y devuelve expresiones de resultado, que luego se pueden mostrar en la interfaz.

La interfaz original, diseñada por Theodore Gray [11] en 1988, consiste en una interfaz de cuaderno y permite la creación y edición de documentos de cuaderno que pueden contener código, texto plano, imágenes y gráficos. [12] Los cuadernos se pueden utilizar para crear presentaciones de diapositivas .

Las alternativas al front-end de Mathematica incluyen Wolfram Workbench, un entorno de desarrollo integrado (IDE) basado en Eclipse que se introdujo en 2006. Proporciona herramientas de desarrollo de código basadas en proyectos para Mathematica, incluida la gestión de revisiones, depuración, creación de perfiles y pruebas. [13]

También hay un complemento para IDE basados en IntelliJ IDEA para trabajar con código de Wolfram Language que, además del resaltado de sintaxis, puede analizar y autocompletar variables locales y funciones definidas. [14] El Kernel de Mathematica también incluye una interfaz de línea de comandos. [15]

Otras interfaces incluyen JMath, [16] basado en GNU Readline y WolframScript [17] que ejecuta programas Mathematica autónomos (con argumentos) desde la línea de comandos de UNIX.

Computación de alto rendimiento [ editar ]

Las capacidades para la computación de alto rendimiento se ampliaron con la introducción de matrices empaquetadas en la versión 4 (1999) [18] y matrices dispersas (versión 5, 2003), [19] y mediante la adopción de la biblioteca GNU Multi-Precision Library para evaluar alta precisión aritmética.

La versión 5.2 (2005) agregó subprocesos múltiples automáticos cuando los cálculos se realizan en computadoras de múltiples núcleos . [20] Esta versión incluía bibliotecas optimizadas específicas de la CPU. [21] Además, Mathematica es compatible con hardware de aceleración especializado de terceros, como ClearSpeed . [22]

En 2002, gridMathematica se introdujo para permitir la programación paralela a nivel de usuario en clústeres heterogéneos y sistemas multiprocesador [23] y en 2008 la tecnología de computación paralela se incluyó en todas las licencias de Mathematica incluyendo soporte para tecnología grid como Windows HPC Server 2008 , Microsoft Compute Cluster Server y Sun Grid .

La compatibilidad con el hardware de GPU CUDA y OpenCL se agregó en 2010. [24]

En 2019, se agregó soporte para compilar código de Wolfram Language en LLVM . [25]

Conexiones a otras aplicaciones, lenguajes de programación y servicios [ editar ]

La comunicación con otras aplicaciones se produce a través de un protocolo llamado Wolfram Symbolic Transfer Protocol (WSTP). Permite la comunicación entre el kernel de Wolfram Mathematica y el front-end y proporciona una interfaz general entre el kernel y otras aplicaciones. [26]

Wolfram Research distribuye gratuitamente un kit de desarrollo para vincular aplicaciones escritas en el lenguaje de programación C al kernel de Mathematica a través de WSTP usando J / Link., [27] un programa Java que puede pedirle a Mathematica que realice cálculos. Se logra una funcionalidad similar con .NET / Link, [28] pero con programas .NET en lugar de programas Java.

Otros lenguajes que se conectan a Mathematica incluyen Haskell , [29] AppleScript , [30] Racket , [31] Visual Basic , [32] Python , [33] [34] y Clojure . [35]

Mathematica admite la generación y ejecución de modelos de Modelica para el modelado de sistemas y se conecta con Wolfram System Modeler .

También hay enlaces disponibles para muchos paquetes de software de terceros, [36] y Mathematica puede llamar a una variedad de servicios en la nube. [37]

Mathematica también puede capturar datos en tiempo real de una variedad de fuentes [38] y puede leer y escribir en cadenas de bloques públicas ( Bitcoin , Ethereum y ARK). [39]

Admite la importación y exportación de más de 220 formatos de datos, imágenes, video, sonido, diseño asistido por computadora (CAD), sistemas de información geográfica (GIS), [40] documentos y biomédicos.

Datos computables [ editar ]

Un diagrama de flujo de datos meteorológicos en vivo

Wolfram Mathematica incluye colecciones de datos seleccionados que se proporcionan para su uso en cálculos. Mathematica también está integrado con Wolfram Alpha , un motor de respuesta de conocimiento computacional en línea que proporciona datos adicionales, algunos de los cuales se mantienen actualizados en tiempo real. Algunos de los conjuntos de datos incluyen datos astronómicos, químicos, geopolíticos, lingüísticos, biomédicos y meteorológicos, además de datos matemáticos (como nudos y poliedros). [41]

Recepción [ editar ]

BYTE en 1989 incluyó a Mathematica entre los ganadores "Distinción" de los premios BYTE, indicando que "es otra aplicación innovadora de Macintosh ... podría permitirle absorber el álgebra y el cálculo que parecían imposibles de comprender en un libro de texto". [42]

Ver también [ editar ]

  • Comparación de lenguajes de programación multi-paradigma
  • Comparación de software de análisis numérico
  • Comparación de lenguajes de programación
  • Comparación de motores de expresión regular
  • X computacional
  • Lenguaje de programación dinámico
  • Lenguaje de programación de cuarta generación
  • Programación funcional
  • Lista de sistemas de álgebra informática
  • Lista de software de simulación por computadora
  • Lista de software de gráficos
  • Programación alfabetizada
  • Lenguaje de marcado matemático
  • Software matemático
  • Wolfram Alpha , un motor de respuesta web
  • Wolfram Language
  • Wolfram SystemModeler , una herramienta de simulación y modelado físico que se integra con Mathematica

Referencias [ editar ]

  1. ^ Wolfram, Stephen (23 de junio de 2008), Mathematica cumple 20 años hoy , Wolfram , consultado el 16 de mayo de 2012
  2. ^ "Historial de revisión rápida de Mathematica" . Consultado el 20 de mayo de 2020 .
  3. ^ "Celebrando el primer cuarto de siglo de Mathematica" . Consultado el 11 de agosto de 2015 .
  4. ^ La ingeniería de software de Mathematica: documentación de Wolfram Mathematica 9 . Reference.wolfram.com. Consultado el 23 de marzo de 2015.
  5. ^ "Requisitos del sistema de Mathematica 12 y disponibilidad de la plataforma" . Consultado el 16 de diciembre de 2020 .
  6. ^ Raspberry Pi incluye Mathematica gratis The Verge
  7. ^ "Wolfram Mathematica" . Consultado el 11 de agosto de 2015 .
  8. ^ Stephen Wolfram: Soluciones simples; El software Mathematica del físico iconoclasta clava acertijos complejos , BusinessWeek, 3 de octubre de 2005.
  9. ^ "Póngase en contacto con Wolfram Research" . Consultado el 11 de agosto de 2015 .
  10. ^ "El nuevo lenguaje de programación de Stephen Wolfram: ¿Puede hacer que el mundo sea computable?" . Revista Slate . Consultado el 11 de agosto de 2015 .
  11. ^ Patente US8407580 Búsqueda de patentes de Google
  12. Hayes, Brian (1 de enero de 1990). "Reflexiones sobre Mathematica" (PDF) . Pixel .
  13. ^ "Wolfram intros Workbench IDE para Mathematica" . Macworld . 21 de junio de 2006 . Consultado el 11 de agosto de 2015 .
  14. ^ Complemento de Mathematica para IntelliJ IDEA
  15. ^ Usando una documentación de interfaz basada en texto en wolfram.com
  16. ^ "JMath: una interfaz basada en GNU Readline para Mathematica" . Consultado el 11 de agosto de 2015 .
  17. ^ "Listado de directorios" . Consultado el 18 de abril de 2019 .
  18. ^ El software matemático incluye un nuevo poder; nuevos programas automatizan procesos tan tediosos como resolver ecuaciones diferenciales no lineales y convertir unidades por Agnes Shanley, Ingeniería Química , 1 de marzo de 2002.
  19. ^ Mathematica 5.1: las características adicionales hacen que el software sea adecuado para los profesionales de la investigación de operaciones por ManMohan S. Sodhi, OR / MS Today , 1 de diciembre de 2004.
  20. ^ Los 21 premios anuales de elección de los editores , Macworld, 1 de febrero de 2006.
  21. ^ "Mathematica está optimizado para aprovechar las funciones de la CPU cuando están disponibles" . Consultado el 13 de abril de 2020 .
  22. ^ "Tableros ClearSpeed ​​Advance Accelerator certificados por Wolfram Research; los coprocesadores matemáticos permiten a los usuarios de Mathematica cuadriplicar el rendimiento" . Consultado el 11 de agosto de 2015 .
  23. ^ gridMathematica ofrece una solución de computación paralela por Dennis Sellers, MacWorld, 20 de noviembre de 2002.
  24. ^ "Se agregó compatibilidad con CUDA y OpenCL en Mathematica 8" . Consultado el 13 de abril de 2020 .
  25. ^ "Crear código LLVM" . Consultado el 13 de abril de 2020 .
  26. ^ Protocolo de transferencia simbólica de Wolfram (WSTP)
  27. ^ Mathematica 4.2 Archivado 2007-11-21 en Wayback Machine por Charles Seiter, Macworld , 1 de noviembre de 2002.
  28. ^ .NET / Link : .NET / Link es un conjunto de herramientas que integra Mathematica y Microsoft .NET Framework.
  29. ^ "mathlink: escribir paquetes de Mathematica en Haskell - Hackage" . Consultado el 11 de agosto de 2015 .
  30. ^ S. Kratky. "MathLink para AppleScript" . Consultado el 11 de agosto de 2015 .
  31. ^ "MrMathematica: llamar a Mathematica desde Scheme" . Consultado el 11 de agosto de 2015 .
  32. ^ "Mathematica para ActiveX - de Wolfram Library Archive" . Consultado el 11 de agosto de 2015 .
  33. ^ "erocarrera / pythonika" . GitHub . Consultado el 11 de agosto de 2015 .
  34. ^ "PYML (interfaz Python Mathematica) - de Wolfram Library Archive" . Consultado el 11 de agosto de 2015 .
  35. ^ "Clojuratica - Inicio" . Clojuratica.weebly.com . Consultado el 16 de agosto de 2013 .
  36. ^ "shadanan / HadoopLink" . GitHub . Consultado el 11 de agosto de 2015 .
  37. ^ Cconnection del servicio de Yelp de documentación de Wolfram Language
  38. ^ Vernier y Mathematica
  39. ^ "Trabajar con blockchains" . Consultado el 15 de abril de 2020 .
  40. ^ Mathematica 6 Labs Review Cadalyst 1 de febrero de 2008
  41. ^ "Datos científicos y técnicos" , Guía matemática , Wolfram Research, archivado desde el original el 10 de mayo de 2012 , consultado el 16 de mayo de 2012
  42. ^ "Los premios BYTE" . BYTE . Enero de 1989. p. 327.

Enlaces externos [ editar ]

  • Página web oficial
  • Centro de documentación de Mathematica
  • Wolfram Open Cloud acceso gratuito limitado a Mathematica a través de un navegador
  • Sitio web de identificación de imágenes impulsado por Mathematica
  • Wolfram Demonstrations Project Demostraciones basadas en Mathematica
  • Un poco de la historia de Mathematica que documenta el crecimiento de la base de código y el número de funciones a lo largo del tiempo.
  • Wolfram Screencast & Video Gallery: Comienzo práctico de Mathematica