LAPACK contains, more specifically, extremely well written and
time-tested (20+ years) routines for solving
matrix algebra problems. These operations range from determining the
eigenvalues of a system, to system
factorization. The most important routines in the collection, in my opinion, are those that were written to
solve linear systems. There are a very wide variety of LAPACK matrix solver routines, tailored for many specific kinds of matrices. These range from general,
nonsymmetric matrices, to
banded matrices, to
upper-triangular and
symmetric matrices, in
packed and
unpacked form. Routines exist to do these calculations for single and double precision real and complex number problems.
LAPACK is an indispensable resource when writing engineering software that involves matrix manipulation and solutions. These routines can be "dropped in" and used right away with almost no modification or headache to the programmer. I also differ on the statement that the routines are "difficult" to use, each routine is extensively well documented as far as the inputs they expect, the data formats, and the outputs.