¿Cuáles son algunas de las mejores bibliotecas para la resolución de sistemas de álgebra lineal dispersa de gran tamaño (conjugado de gradiente, MINRES, GMRES, etc.)? A menudo he codificado mis propias rutinas, pero me interesa saber qué paquetes "listos para usar" prefieren. He oído hablar de PETSc, TAUCS, IML ++ y algunos otros. Me pregunto cómo se acumulan estas cosas, y qué más hay por ahí. Mi preferencia es por la facilidad de uso y el software disponible gratuitamente.Librerías de solución iterativa dispersas generales
Respuesta
Me gustaría ver la Fundación Solver de Microsoft. Es gratis, incluso para problemas bastante grandes. La versión ilimitada es resistencia industrial y está basada en Gurobi y, por supuesto, no es barata.
de Overview of Iterative Linear System Solver Packages Victor Eijkhout probablemente sería un buen lugar para comenzar.
Eso es genial, aunque un poco desactualizado. – batty
También es posible que desee ver Trilinos http://trilinos.sandia.gov/
Está diseñado por algún gran artesano de software, utilizando modernas técnicas de diseño .
Además, desde dentro de Trilinos, puede llamar a PetsC si lo desea.
NIST tiene algún software de escasa Álgebra Lineal se puede descargar aquí: http://math.nist.gov/sparselib++/ y aquí: http://math.nist.gov/spblas/
No he utilizado esos paquetes a mí mismo, pero he oído cosas buenas sobre ellos.
SparseLib ++ es solo una biblioteca de clases de matriz dispersa. La biblioteca de resolución iterativa relevante es IML ++ (http://math.nist.gov/iml++/), que se mencionó en la pregunta. – las3rjock
http://www.cise.ufl.edu/research/sparse/umfpack/
UMFPACK es un conjunto de rutinas para resolver asimétricas dispersas sistemas lineales, Ax = b, utilizando el método multifrontal asimétricas . Escrito en ANSI/ISO C, con una interfaz MATLAB (Versión 6.0 y posterior). Aparece como una rutina integrada (para lu, barra invertida, y barra diagonal) en MATLAB. Incluye una interfaz MATLAB, una interfaz C-invocable y una interfaz Fortran-callable . Tenga en cuenta que "UMFPACK" es pronunciado en dos sílabas, "Umph Pack". No es "You Em Ef Pack".
Lo estoy usando para el código FEM.
- 1. ¿Es posible convertir esta solución recursiva (para imprimir corchetes) en una versión iterativa?
- 2. Estructuras mundiales dispersas en Erlang
- 3. Programación dinámica recursiva o iterativa
- 4. consulta iterativa sin utilizar CTE
- 5. profundización iterativa vs búsqueda en profundidad
- 6. Prueba de gastos generales de rendimiento de la solución ORM personalizada: cómo hacerlo.
- 7. librerías de aserciones independientes?
- 8. Estructura de datos para almacenar matrices dispersas
- 9. ¿Las matrices de Javascript son dispersas?
- 10. Algunas preguntas generales C
- 11. ¿Qué es "gastos generales"?
- 12. ¿Cómo funciona esta torre iterativa de Hanoi? C
- 13. Javascript Código QR lectura de librerías
- 14. Validación y librerías fluidas
- 15. Librerías java Anti-XSS
- 16. Librerías de árbol en python
- 17. Librerías de escritura en Java
- 18. Fortran 90/95 biblioteca para matrices dispersas?
- 19. ¿Admite SVN fusionarse en listas dispersas?
- 20. ¿Hay soporte para matrices dispersas en Python?
- 21. ¿Incanter tiene soporte para matrices dispersas?
- 22. ¿Cómo puedo calcular un producto cartesiano de forma iterativa?
- 23. Preguntas generales sobre la recursión
- 24. Hola mundo sin usar librerías
- 25. Librerías Gzip/TAR para Javascript
- 26. Consideraciones generales para NUI/interfaz táctil
- 27. Manejo de excepciones generales en C#
- 28. Mezclando estilos generales de WPF con ResourceDictionary
- 29. Diseño de aplicaciones generales (IntentService/ContentProvider/AsyncTask)
- 30. Obtención de totales generales utilizando Agrupar por
De su enlace, parece que la Solver Foundation de Microsoft es una biblioteca de optimización lineal y no lineal, que está conectada al álgebra lineal numérica, pero no es la herramienta correcta para resolver el sistema lineal 'Ax = b' para el vector' x 'dado una matriz dispersa' A' y el vector 'b'. – las3rjock