Articulo de referencia

Lista de bibliotecas numéricas

Esta es una lista de bibliotecas numéricas , que son bibliotecas que se utilizan en el desarrollo de software para realizar cálculos numéricos . No es una lista completa, sino u...

Esta es una lista de bibliotecas numéricas , que son bibliotecas que se utilizan en el desarrollo de software para realizar cálculos numéricos . No es una lista completa, sino una lista de bibliotecas numéricas con artículos en Wikipedia, con pocas excepciones.

La elección de una biblioteca típica depende de una variedad de requisitos tales como: características deseadas (por ejemplo, álgebra lineal de gran dimensión, computación paralela, ecuaciones diferenciales parciales), licencias, legibilidad de la API, portabilidad o dependencia de la plataforma/compilador (por ejemplo, Linux, Windows, Visual C++, GCC), rendimiento, facilidad de uso, soporte continuo de los desarrolladores, cumplimiento de estándares, optimización especializada en código para escenarios de aplicación específicos o incluso el tamaño de la base de código que se instalará.

Multi-idioma

  • ALGLIB es una biblioteca de análisis numérico de código abierto que puede utilizarse desde C++, C#, FreePascal, Delphi, VBA.
  • ArrayFire es una biblioteca de software de código abierto de alto rendimiento para computación paralela con una API fácil de usar.
  • Las bibliotecas numéricas IMSL son bibliotecas de funcionalidad de análisis numérico implementadas en lenguajes de programación estándar como C, Java, C# .NET, Fortran y Python.
  • La biblioteca NAG es una colección de rutinas matemáticas y estadísticas para múltiples lenguajes de programación (C, C++, Fortran, Visual Basic, Java, Python y C#) y paquetes (MATLAB, Excel, R, LabVIEW).
  • GNU Octave es un lenguaje de programación de alto nivel y una biblioteca de código abierto que incluye una interfaz de línea de comandos y una GUI análoga a alternativas comerciales como Maple, MATLAB, Mathematica, etc. Las API, funciones y bibliotecas se pueden llamar desde muchas plataformas, incluidos programas de ingeniería de alto nivel, donde las funciones se interpretan e integran sin problemas, en muchos casos, de manera similar a MATLAB. También se puede utilizar con orientación por lotes.
  • librsb es una biblioteca de código abierto para cálculos de matrices dispersas de alto rendimiento que proporciona primitivas multiproceso para construir solucionadores iterativos (también implementa el estándar Sparse BLAS ). Se puede utilizar desde C, C++, Fortran y un paquete GNU Octave dedicado.
  • Adept es una biblioteca combinada de diferenciación automática y matrices .
  • Advanced Simulation Library es un software de simulación multifísica acelerado por hardware gratuito y de código abierto con un motor computacional interno basado en OpenCL .
  • ALGLIB es una biblioteca de análisis numérico comercial de código abierto con versión C++
  • Armadillo es una biblioteca de álgebra lineal de C++ (matemáticas matriciales y vectoriales) que busca un buen equilibrio entre velocidad y facilidad de uso. [1] Emplea clases de plantilla y tiene enlaces opcionales a BLAS y LAPACK. La sintaxis ( API ) es similar a la de MATLAB .
  • Blitz++ es una biblioteca de matemáticas vectoriales de alto rendimiento escrita en C++.
  • Bibliotecas C++ Boost.uBLAS para cálculo numérico
  • deal.II es una biblioteca que admite todas las soluciones de elementos finitos de ecuaciones diferenciales parciales.
  • Dlib es una biblioteca C++ moderna con herramientas de optimización y álgebra lineal fáciles de usar que se benefician de las bibliotecas BLAS y LAPACK optimizadas.
  • Eigen es una biblioteca de matemáticas vectoriales con un rendimiento comparable con la biblioteca de núcleo matemático de Intel.
  • Proyecto Hermes : Biblioteca C++/Python para creación rápida de prototipos de solucionadores hp-FEM adaptativos al espacio y al espacio-tiempo.
  • IML++ es una biblioteca C++ para resolver sistemas lineales de ecuaciones, capaz de tratar con matrices densas, dispersas y distribuidas.
  • IT++ es una biblioteca C++ para álgebra lineal (matrices y vectores), procesamiento de señales y comunicaciones. Funcionalidad similar a MATLAB y Octave.
  • LAPACK++ , una biblioteca contenedora de C++ para LAPACK y BLAS
  • MFEM es una biblioteca C++ gratuita, liviana y escalable para métodos de elementos finitos .
  • Intel MKL , Intel Math Kernel Library (en C y C++), una biblioteca de rutinas matemáticas optimizadas para aplicaciones científicas, de ingeniería y financieras, escritas en C/C++ y Fortran. Las funciones matemáticas básicas incluyen BLAS, LAPACK, ScaLAPACK, solucionadores dispersos, transformadas rápidas de Fourier y matemáticas vectoriales.
  • mlpack es una biblioteca de código abierto para aprendizaje automático que aprovecha las características del lenguaje C++ para proporcionar el máximo rendimiento y flexibilidad al tiempo que proporciona una API simple y consistente.
  • MTL4 es una biblioteca de plantillas genéricas de C++ que proporciona funcionalidad BLAS densa y dispersa. MTL4 establece una interfaz intuitiva (similar a MATLAB ) y una amplia aplicabilidad gracias a la programación genérica .
  • La biblioteca NAG tiene API C++
  • NTL es una biblioteca C++ para teoría de números.
  • OpenFOAM es una biblioteca C++ de código abierto para resolver ecuaciones diferenciales parciales en dinámica de fluidos computacional (CFD).
  • El código SU2 es una biblioteca de código abierto para resolver ecuaciones diferenciales parciales con el método de volumen finito o elementos finitos.
  • Trilinos es un esfuerzo por desarrollar algoritmos y tecnologías que permitan resolver problemas científicos y de ingeniería multifísica complejos y de gran escala. Es una colección de paquetes .
  • Software de álgebra lineal Template Numerical Toolkit (TNT) de dominio público y en su totalidad en forma de encabezados, del NIST. TNT se presentó originalmente como sucesor de Lapack++, Sparselib++ e IML++. [2]
  • ALGLIB - una biblioteca de análisis numérico de código abierto.

Lenguajes de .NET FrameworkDO#,F#,VB.NETyPotencia Shell

  • Accord.NET es una colección de bibliotecas para computación científica, que incluye álgebra lineal numérica, optimización, estadísticas, redes neuronales artificiales, aprendizaje automático, procesamiento de señales y visión artificial. LGPLv3, parcialmente GPLv3.
  • AForge.NET es una biblioteca de inteligencia artificial y visión artificial. Implementa una serie de algoritmos genéticos, de lógica difusa y de aprendizaje automático con varias arquitecturas de redes neuronales artificiales con sus correspondientes algoritmos de entrenamiento. LGPLv3 y parcialmente GPLv3.
  • ALGLIB es una biblioteca de análisis numérico de código abierto con versión C#. Licencia dual: GPLv2+, licencia comercial.
  • ILNumerics.Net Clases y funciones de matrices numéricas comerciales, de alto rendimiento y con tipos seguros para matemática general, FFT y álgebra lineal, orientado a .NET/mono, 32 y 64 bits, sintaxis tipo script en C#, controles de gráficos 2D y 3D, gestión eficiente de memoria.
  • Las bibliotecas numéricas de IMSL tienen una versión C# (con licencia comercial). IMSL .Net ha anunciado que dejará de funcionar a fines de 2020.
  • Math.NET Numerics tiene como objetivo proporcionar métodos y algoritmos para cálculos numéricos en ciencia, ingeniería y uso cotidiano. Los temas tratados incluyen funciones especiales, álgebra lineal, modelos de probabilidad, números aleatorios, interpolación, transformaciones integrales y más. Software libre bajo licencia MIT/X11.
  • Measurement Studio es un conjunto comercial integrado de controles de interfaz de usuario y bibliotecas de clases para su uso en el desarrollo de aplicaciones de prueba y medición. Las bibliotecas de clases de análisis proporcionan diversas funciones de procesamiento de señales digitales, filtrado de señales, generación de señales, detección de picos y otras funciones matemáticas generales.
  • ML.NET es una biblioteca de aprendizaje automático de software libre para el lenguaje de programación C# . [3] [4]
  • La biblioteca NAG tiene API C#. Licencia comercial.
  • NMath de CenterSpace Software : bibliotecas de componentes numéricos comerciales para la plataforma .NET, que incluyen clases de procesamiento de señales (FFT), un marco de álgebra lineal (LAPACK y BLAS) y un paquete de estadísticas.
  • El lenguaje de datos Perl proporciona al Perl estándar la capacidad de almacenar de forma compacta y manipular rápidamente las grandes matrices de datos N -dimensionales. [11] Puede realizar operaciones matemáticas complejas y matriciales, y tiene interfaces para la biblioteca científica GNU , LINPACK , PROJ y para la representación gráfica con PGPLOT . Existen bibliotecas en CPAN que añaden compatibilidad con la biblioteca de álgebra lineal LAPACK , [12] la biblioteca de transformada de Fourier FFTW , [13] y la representación gráfica con gnuplot , [14] y PLplot . [15]
  • NumPy , una biblioteca con licencia BSD que agrega soporte para la manipulación de matrices y arreglos multidimensionales grandes; también incluye una gran colección de funciones matemáticas de alto nivel. NumPy sirve como columna vertebral para varias otras bibliotecas numéricas, en particular SciPy . Estándar de facto para operaciones con matrices y tensores en Python.
  • Pandas , una biblioteca para manipulación y análisis de datos.
  • SageMath es una gran aplicación de software matemático que integra el trabajo de casi 100 proyectos de software libre y admite álgebra lineal, combinatoria, matemáticas numéricas, cálculo y más. [16]
  • SciPy , [17] [18] [19] una gran biblioteca de herramientas científicas con licencia BSD. Estándar de facto para cálculos científicos en Python.
  • ScientificPython , una biblioteca con un conjunto diferente de herramientas científicas
  • SymPy , una biblioteca basada en la licencia New BSD para computación simbólica. Las funciones de Sympy abarcan desde aritmética simbólica básica hasta cálculo, álgebra, matemáticas discretas y física cuántica.

Otros

Véase también

Referencias

  1. ^ Sanderson, C., y Curtin, R. (2016). Armadillo: una biblioteca de C++ basada en plantillas para álgebra lineal. Journal of Open Source Software, 1(2), 26.
  2. ^ Pozo, Roldan. "Kit de herramientas numéricas de plantillas para álgebra lineal: programación de alto rendimiento con C++ y la biblioteca de plantillas estándar". Revista internacional de aplicaciones informáticas de alto rendimiento . Asociación para la maquinaria informática . Consultado el 15 de octubre de 2024 .
  3. ^ David Ramel (8 de mayo de 2018). "ML.NET multiplataforma y de código abierto simplifica el aprendizaje automático: Visual Studio Magazine". Visual Studio Magazine . Consultado el 10 de mayo de 2018 .
  4. ^ Kareem Anderson (9 de mayo de 2017). "Microsoft presenta el marco de aprendizaje automático multiplataforma ML.NET". En MSFT . Consultado el 10 de mayo de 2018 .
  5. ^ Smith, BT, Boyle, JM, Garbow, BS, Ikebe, Y., Klema, VC y Moler, CB (2013). Rutinas del sistema propio de matriz-Guía EISPACK (Vol. 6). Saltador.
  6. ^ Anderson, E., Bai, Z., Bischof, C., Blackford, S., Dongarra, J., Du Croz, J., ... y Sorensen, D. (1999). Guía de usuario de LAPACK (Vol. 9). SIAM.
  7. ^ Demmel, J. (1989, diciembre). LAPACK: una biblioteca portátil de álgebra lineal para supercomputadoras. En el taller sobre diseño de sistemas de control asistidos por computadora de la IEEE Control Systems Society (pp. 1-7). IEEE.
  8. ^ Dongarra, JJ, Moler, CB, Bunch, JR y Stewart, GW (1979). Guía del usuario de LINPACK. Sociedad de Matemáticas Industriales y Aplicadas.
  9. ^ Dongarra, JJ, Luszczek, P., y Petitet, A. (2003). El benchmark LINPACK: pasado, presente y futuro. Concurrencia y computación: práctica y experiencia, 15(9), 803-820.
  10. ^ Dongarra, JJ (1987, junio). El benchmark LINPACK: una explicación. En International Conference on Supercomputing (pp. 456-474). Springer, Berlín, Heidelberg.
  11. ^ "Lenguaje de datos Perl - metacpan.org". 26 de julio de 2021.
  12. ^ "PDL::LinearAlgebra - Utilidades de álgebra lineal para PDL - metacpan.org". 26 de julio de 2021.
  13. ^ "PDL::FFTW3 - Interfaz PDL para la Transformada de Fourier más rápida de Occidente - metacpan.org". 26 de julio de 2021.
  14. ^ "PDL::Graphics::Gnuplot - Trazado basado en Gnuplot para PDL - metacpan.org". 26 de julio de 2021.
  15. ^ "PDL::Graphics::PLplot - Interfaz orientada a objetos de Perl/PDL para la biblioteca de gráficos PLPLOT - metacpan.org". 26 de julio de 2021.
  16. ^ Zimmermann, P., Casamayou, A., Cohen, N., Connan, G., Dumont, T., Fousse, L., ... y Bray, E. (2018). Matemática Computacional con SageMath. SIAM.
  17. ^ Jones, E., Oliphant, T. y Peterson, P. (2001). SciPy: herramientas científicas de código abierto para Python.
  18. ^ Bressert, E. (2012). SciPy y NumPy: una descripción general para desarrolladores. " O'Reilly Media, Inc.".
  19. ^ Blanco-Silva, FJ (2013). Aprendizaje de SciPy para computación numérica y científica. Packt Publishing Ltd.
  20. ^ SM Rump: INTLAB – INTerval LABoratory. En Tibor Csendes, editor, Developments in Reliable Computing, páginas 77–104. Kluwer Academic Publishers, Dordrecht, 1999.
  21. ^ Moore, RE, Kearfott, RB y Cloud, MJ (2009). Introducción al análisis de intervalos. Sociedad de Matemáticas Industriales y Aplicadas.
  22. ^ Rump, SM (2010). Métodos de verificación: resultados rigurosos utilizando aritmética de punto flotante. Acta Numerica, 19, 287–449.
  23. ^ Hargreaves, GI (2002). Análisis de intervalos en MATLAB . Algoritmos numéricos, (2009.1).
  • El Foro de Matemáticas - Bibliotecas de Matemáticas, una extensa lista de bibliotecas matemáticas con breves descripciones
Obtenido de "https://es.wikipedia.org/w/index.php?title=Lista_de_bibliotecas_numéricas&oldid=1251221713"