Ich habe mir C ++ - Bibliotheken für lineare Algebra für ein Projekt angesehen, an dem ich gearbeitet habe. Was ich immer noch nicht verstehe, ist die Verbindung von BLAS und LAPACK mit anderen Bibliotheken für lineare Algebra.
Als ich diesen Artikel über lineare Algebra-Bibliotheken durchgesehen habe, fand ich es interessant, dass:
- Einige Bibliotheken sind unabhängig von BLAS und LAPACK
- Einige erfordern BLAS und LAPACK
- Einige haben optionale Schnittstellen zu BLAS und LAPACK
- und so wie ich es verstehe, können Sie BLAS und LAPACK verwenden, um lineare Algebraprobleme direkt zu lösen
Ich kann mir vorstellen, dass einige Bibliotheken einfach C ++ - Schnittstellen zu BLAS- und LAPACK-Bibliotheken sind, die in C und Fortran geschrieben wurden, und andere ihre eigenen Ersatzroutinen implementiert haben, aber
Welche Auswirkungen haben die optionalen Schnittstellen zu BLAS und LAPACK? Was verlieren Sie, wenn Sie sich abmelden, und was machen die Bibliotheken stattdessen?
Bietet eine der Bibliotheken mehr als nur eine Schnittstelle? Beispielsweise ist UMFPACK in C geschrieben und verfügt über optionale Schnittstellen zu BLAS und LAPACK. Was können UMFPACK (oder andere Bibliotheken), was BLAS und LAPACK nicht können?