Naming Scheme
Subroutines in LAPACK have a characteristic naming convention which makes the identifiers short but rather obscure. This was necessary as the first Fortran standards only supported identifiers up to six characters long, so the names had to be shortened to fit into this limit.
A LAPACK subroutine name is in the form pmmaaa
, where:
p
is a one-letter code denoting the type of numerical constants used.S
,D
stand for real floating point arithmetic respectively in single and double precision, whileC
andZ
stand for complex arithmetic with respectively single and double precision. The newer version LAPACK95 use generic subroutines in order to overcome the need to explicitly specify the data type.mm
is a two-letter code denoting the kind of matrix expected by the algorithm. The codes for the different kind of matrices are reported below; the actual data are stored in a different format depending on the specific kind; e.g., when the codeDI
is given, the subroutine expects a vector of lengthn
containing the elements on the diagonal, while when the codeGE
is given, the subroutine expects an n×n array containing the entries of the matrix.aaa
is a one- to three-letter code describing the actual algorithm implemented in the subroutine, e.g.SV
denotes a subroutine to solve linear system, whileR
denotes a rank-1 update.
For example, the subroutine to solve a linear system with a general (non-structured) matrix using real double-precision arithmetic is called DGESV
.
Name | Description |
---|---|
BD | Bidiagonal matrix |
DI | Diagonal matrix |
GB | Band matrix |
GE | Matrix (i.e., unsymmetric, in some cases rectangular) |
GG | general matrices, generalized problem (i.e., a pair of general matrices) |
GT | Tridiagonal Matrix General Matrix |
HB | (complex) Hermitian matrix Band matrix |
HE | (complex) Hermitian matrix |
HG | upper Hessenberg matrix, generalized problem (i.e. a Hessenberg and a Triangular matrix) |
HP | (complex) Hermitian matrix, Packed storage matrix |
HS | upper Hessenberg matrix |
OP | (real) Orthogonal matrix, Packed storage matrix |
OR | (real) Orthogonal matrix |
PB | Symmetric matrix or Hermitian matrix positive definite band |
PO | Symmetric matrix or Hermitian matrix positive definite |
PP | Symmetric matrix or Hermitian matrix positive definite, Packed storage matrix |
PT | Symmetric matrix or Hermitian matrix positive definite Tridiagonal matrix |
SB | (real) Symmetric matrix Band matrix |
SP | Symmetric matrix, Packed storage matrix |
ST | (real) Symmetric matrix Tridiagonal matrix |
SY | Symmetric matrix |
TB | Triangular matrix Band matrix |
TG | triangular matrices, generalized problem (i.e., a pair of triangular matrices) |
TP | Triangular matrix, Packed storage matrix |
TR | Triangular matrix (or in some cases quasi-triangular) |
TZ | Trapezoidal matrix |
UN | (complex) Unitary matrix |
UP | (complex) Unitary matrix, Packed storage matrix |
Details on this scheme can be found in the Naming scheme section in LAPACK Users' Guide.
Read more about this topic: LAPACK
Famous quotes containing the words naming and/or scheme:
“See, see where Christs blood streams in the firmament!
One drop would save my soulhalf a drop! ah, my Christ!
Ah, rend not my heart for naming of my Christ!
Yet will I call on him!O, spare me, Lucifer!
Where is it now? T is gone; and see where God
Stretcheth out his arm, and bends his ireful brows!
Mountains and hills, come, come and fall on me,
And hide me from the heavy wrath of God!”
—Christopher Marlowe (15641593)
“The real security of Christianity is to be found in its benevolent morality, in its exquisite adaptation to the human heart, in the facility with which its scheme accommodates itself to the capacity of every human intellect, in the consolation which it bears to the house of mourning, in the light with which it brightens the great mystery of the grave.”
—Thomas Babington Macaulay (18001859)