C++ API for the Linear Algebra PACKage
copied from cf-staging / lapackppThe Linear Algebra PACKage (LAPACK) is a standard software library for numerical linear algebra. It provides routines for solving systems of linear equations and linear least squares problems, eigenvalue problems, and singular value decomposition. It also includes routines to implement the associated matrix factorizations such as LU, QR, Cholesky, etc. LAPACK was originally written in FORTRAN 77, and moved to Fortran 90 in version 3.2 (2008). LAPACK provides routines for handling both real and complex matrices in both single and double precision. The objective of LAPACK++ is to provide a convenient, performance oriented API for development in the C++ language, that, for the most part, preserves established conventions, while, at the same time, takes advantages of modern C++ features, such as: namespaces, templates, exceptions, etc. LAPACK++ is part of the SLATE project (Software for Linear Algebra Targeting Exascale), which is funded by the Department of Energy as part of its Exascale Computing Initiative (ECP). Closely related to LAPACK++ is the BLAS++ project, which provides a C++ API for BLAS and Batch BLAS.