Next: , Previous: lapack, Up: lapack


D.10.1 lapack calling conventions

A table describing the inputs and outputs to the lapack library functions listed by their function names is given in this section. Some general points related to most of the functions are mentioned first.

dgesvx
zgesvx
These library functions take a pair (a,b) where a is an n by n matrix and b is a vector of length n. If a is non-singular, they return a vector x such that a x = b. Otherwise they return an empty list.
dgelsd
zgelsd
These functions generalize those above by taking a pair (a,b) where a is an m by n matrix and b is a vector of length m, with m greater than n. They return a vector x of length n to minimize the magnitude of b - a x.
dgesdd
zgesdd
These functions take a list of m time series (i.e., vectors) each of length n and return a list of basis vectors each of length n. The basis vectors span the set of time series in the given list according to the singular value decomposition (i.e., with the basis vectors forming a series in order of decreasing significance). The number of basis vectors is at most min(m,n) but could be less if the input time series aren't linearly independent. An empty list could be returned due to lack of convergence.
dgeevx
zgeevx
These functions take a non-symmetric square matrix and return a pair (e,v) where e is a list of eigenvectors and v is a list of eigenvalues, both of which will contain only complex numbers. (N.B., both functions return complex results even though dgeevx takes real input.) They could also return nil due to a lack of convergence.
dpptrf
zpptrf
These functions take a symmetric square matrix and return one of the Cholesky factors. The Cholesky factors are a pair of triangular matrices, each equal to the transpose of the other, whose product is the original matrix.
dggglm
zggglm
The input is a pair of matrices and a vector ((A,B),d). The output is a pair of vectors (x,y) satisfying Ax + By = d for which the magnitude of y is minimal. The dimensions all have to be consistent, which means the number of rows in A and B is the length of d, the number of columns in A is the length of x, and the number of columns in B is the length of y.
dgglse
zgglse
The input is of the form ((A,c),(B,d)) where A and B are matrices and c and d are vectors. The output is a vector x to minimize the magnitude of Ax - c subject to the constraint that Bx = d. The dimensions have to be consistent, which means A has m rows, c has length m, B has p rows, d has length p, both A and B have n columns, and the output x has length n. It is also a requirement that p <= n <= m + p.
dsyevr
This function takes a symmetric real matrix and returns a pair (e,v) where e is a list of eigenvectors and v is a list of eigenvalues. Both contain only real numbers. This function is fast and accurate but not as storage efficient as possible. If there is insufficient memory, it automatically invokes dspev.
dspev
This function takes a symmetric real matrix and returns a pair (e,v) where e is a list of eigenvectors and v is a list of eigenvalues. Both contain only real numbers. It uses roughly half the memory of dsyevr but is not as fast or accurate.
zheevr
This function takes a complex Hermitian matrix and returns a pair (e,v) where e is a list of eigenvectors and v is a list of eigenvalues. The eigenvectors are complex but the eigenvalues are real.
zhpev
This function has the same inputs and approximate outputs as zheevr but is slower and more memory efficient because it uses only packed matrices.