Select Git revision
liblapack-dev.tex
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
liblapack-dev.tex 1.72 KiB
\subsection{LAPACK}
"`LAPACK"' steht für "`Linear Algebra PACKage"' und ist eine Bibliothek von numerischen Algorithmen aus der linearen Algebra, insbesondere also für Matrixoperationen für sowohl reelle als auch komplexe Zahlen. Geschrieben ist sie in \texttt{Fortran}, aber sie kann auch in \texttt{C} und \texttt{C++} genutzt werden. Aufgrund von Längenbeschränkungen von Funktionsnamen in alten Fortranversionen sind alle Lapack-Funktionsnamen maximal sechs Buchstaben lang, wie z.B. DGESV zum Lösen eines allgemeinen linearen Gleichungssystems in doppelter Genauigkeit.
Sie gehört zu den Standard-Bibliotheken bei allen Numerikern.
\paragraph{Nutzung:}
Grundsätzlich ist die Bibliothek als Header im Programmquelltext einzubinden. In \texttt{C++} würde dies durch die Zeile
\begin{verbatim}
#include "<PFAD>/lapack.h"
\end{verbatim}
geschehen. Beim Kompilieren sind dann die Bibliotheken zu "`linken"'. (Das heißt, dass man dem Compiler entsprechende Flags mitgeben muss.)
\texttt{g++}-Benutzer würden eingeben:
\begin{verbatim}
g++ main.cpp -llapack
\end{verbatim}
LAPACK wird normaler Weise zusammen mit anderen Bibliotheken verwendet; insbesondere mit "`BLAS"' (Basic Linear Algebra Subprograms), dessen Funktionen in den Lapack-Funktionen verwendet werden. Hier müssen gegebenenfalls weitere Header eingebunden werden und weitere Compiler-Flags gesetzt werden. Genaueres erfährt man hierzu in den Dokumentationen.
\paragraph{Für Hilfe:}
LAPACK ist auf seiner Homepage \url{http://www.netlib.org/lapack/} nicht hinreichend dokumentiert. Zum tieferen Verständnis der Funktion sollte der Fortran-Sourcecode betrachtet werden. Alternativ findet man auch schon etliche Beispiele in der Manpage, die man über \texttt{man lapack} erreicht.