Developer Reference for Intel® oneAPI Math Kernel Library for C
Naming Conventions for ScaLAPACK Routines
For each routine introduced in this chapter, you can use the ScaLAPACK name. The naming convention for ScaLAPACK routines is similar to that used for LAPACK routines. A general rule is that each routine name in ScaLAPACK, which has an LAPACK equivalent, is simply the LAPACK name prefixed by initial letter p .
ScaLAPACK names have the structure p?yyzzz or p?yyzz , which is described below.
The initial letter p is a distinctive prefix of ScaLAPACK routines and is present in each such routine.
The second symbol ? indicates the data type:
s
real, single precision
d
real, double precision
c
complex, single precision
z
complex, double precision
The second and third letters yy indicate the matrix type as:
ge
general
gb
general band
gg
a pair of general matrices (for a generalized problem)
dt
general tridiagonal (diagonally dominant-like)
db
general band (diagonally dominant-like)
po
symmetric or Hermitian positive-definite
pb
symmetric or Hermitian positive-definite band
pt
symmetric or Hermitian positive-definite tridiagonal
sy
symmetric
st
symmetric tridiagonal (real)
he
Hermitian
or
orthogonal
tr
triangular (or quasi-triangular)
tz
trapezoidal
un
unitary
For computational routines, the last three letters zzz indicate the computation performed and have the same meaning as for LAPACK routines.
For driver routines, the last two letters zz or three letters zzz have the following meaning:
sv
a simple driver for solving a linear system
svx
an expert driver for solving a linear system
ls
a driver for solving a linear least squares problem
ev
a simple driver for solving a symmetric eigenvalue problem
evd
a simple driver for solving an eigenvalue problem using a divide and conquer algorithm
evx
an expert driver for solving a symmetric eigenvalue problem
svd
a driver for computing a singular value decomposition
gvx
an expert driver for solving a generalized symmetric definite eigenvalue problem
Simple driver here means that the driver just solves the general problem, whereas an expert driver is more versatile and can also optionally perform some related computations (such, for example, as refining the solution and computing error bounds after the linear system is solved).