labrd#
Functions
-
void slabrd(const INT m, const INT n, const INT nb, f32 *restrict A, const INT lda, f32 *restrict D, f32 *restrict E, f32 *restrict tauq, f32 *restrict taup, f32 *restrict X, const INT ldx, f32 *restrict Y, const INT ldy)#
SLABRD reduces the first NB rows and columns of a real general m by n matrix A to upper or lower bidiagonal form by an orthogonal transformation Q**T * A * P, and returns the matrices X and Y which are needed to apply the transformation to the unreduced part of A.
If m >= n, A is reduced to upper bidiagonal form; if m < n, to lower bidiagonal form.
This is an auxiliary routine called by SGEBRD.
Parameters
inmThe number of rows in the matrix A.
innThe number of columns in the matrix A.
innbThe number of leading rows and columns of A to be reduced.
inoutADouble precision array, dimension (lda, n). On entry, the m by n general matrix to be reduced. On exit, the first NB rows and columns of the matrix are overwritten; the rest of the array is unchanged.
inldaThe leading dimension of the array A. lda >= max(1,m).
outDDouble precision array, dimension (nb). The diagonal elements of the first NB rows and columns of the reduced matrix. D[i] = A[i,i].
outEDouble precision array, dimension (nb). The off-diagonal elements of the first NB rows and columns of the reduced matrix.
outtauqDouble precision array, dimension (nb). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.
outtaupDouble precision array, dimension (nb). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.
outXDouble precision array, dimension (ldx, nb). The m-by-nb matrix X required to update the unreduced part of A.
inldxThe leading dimension of the array X. ldx >= max(1,m).
outYDouble precision array, dimension (ldy, nb). The n-by-nb matrix Y required to update the unreduced part of A.
inldyThe leading dimension of the array Y. ldy >= max(1,n).
void slabrd(
const INT m,
const INT n,
const INT nb,
f32* restrict A,
const INT lda,
f32* restrict D,
f32* restrict E,
f32* restrict tauq,
f32* restrict taup,
f32* restrict X,
const INT ldx,
f32* restrict Y,
const INT ldy
);
Functions
-
void dlabrd(const INT m, const INT n, const INT nb, f64 *restrict A, const INT lda, f64 *restrict D, f64 *restrict E, f64 *restrict tauq, f64 *restrict taup, f64 *restrict X, const INT ldx, f64 *restrict Y, const INT ldy)#
DLABRD reduces the first NB rows and columns of a real general m by n matrix A to upper or lower bidiagonal form by an orthogonal transformation Q**T * A * P, and returns the matrices X and Y which are needed to apply the transformation to the unreduced part of A.
If m >= n, A is reduced to upper bidiagonal form; if m < n, to lower bidiagonal form.
This is an auxiliary routine called by DGEBRD.
Parameters
inmThe number of rows in the matrix A.
innThe number of columns in the matrix A.
innbThe number of leading rows and columns of A to be reduced.
inoutADouble precision array, dimension (lda, n). On entry, the m by n general matrix to be reduced. On exit, the first NB rows and columns of the matrix are overwritten; the rest of the array is unchanged.
inldaThe leading dimension of the array A. lda >= max(1,m).
outDDouble precision array, dimension (nb). The diagonal elements of the first NB rows and columns of the reduced matrix. D[i] = A[i,i].
outEDouble precision array, dimension (nb). The off-diagonal elements of the first NB rows and columns of the reduced matrix.
outtauqDouble precision array, dimension (nb). The scalar factors of the elementary reflectors which represent the orthogonal matrix Q.
outtaupDouble precision array, dimension (nb). The scalar factors of the elementary reflectors which represent the orthogonal matrix P.
outXDouble precision array, dimension (ldx, nb). The m-by-nb matrix X required to update the unreduced part of A.
inldxThe leading dimension of the array X. ldx >= max(1,m).
outYDouble precision array, dimension (ldy, nb). The n-by-nb matrix Y required to update the unreduced part of A.
inldyThe leading dimension of the array Y. ldy >= max(1,n).
void dlabrd(
const INT m,
const INT n,
const INT nb,
f64* restrict A,
const INT lda,
f64* restrict D,
f64* restrict E,
f64* restrict tauq,
f64* restrict taup,
f64* restrict X,
const INT ldx,
f64* restrict Y,
const INT ldy
);
Functions
-
void clabrd(const INT m, const INT n, const INT nb, c64 *restrict A, const INT lda, f32 *restrict D, f32 *restrict E, c64 *restrict tauq, c64 *restrict taup, c64 *restrict X, const INT ldx, c64 *restrict Y, const INT ldy)#
CLABRD reduces the first NB rows and columns of a complex general m by n matrix A to upper or lower real bidiagonal form by a unitary transformation Q**H * A * P, and returns the matrices X and Y which are needed to apply the transformation to the unreduced part of A.
If m >= n, A is reduced to upper bidiagonal form; if m < n, to lower bidiagonal form.
This is an auxiliary routine called by CGEBRD.
Parameters
inmThe number of rows in the matrix A.
innThe number of columns in the matrix A.
innbThe number of leading rows and columns of A to be reduced.
inoutAComplex array, dimension (lda, n). On entry, the m by n general matrix to be reduced. On exit, the first NB rows and columns of the matrix are overwritten; the rest of the array is unchanged.
inldaThe leading dimension of the array A. lda >= max(1,m).
outDSingle precision array, dimension (nb). The diagonal elements of the first NB rows and columns of the reduced matrix. D[i] = A[i,i].
outESingle precision array, dimension (nb). The off-diagonal elements of the first NB rows and columns of the reduced matrix.
outtauqComplex array, dimension (nb). The scalar factors of the elementary reflectors which represent the unitary matrix Q.
outtaupComplex array, dimension (nb). The scalar factors of the elementary reflectors which represent the unitary matrix P.
outXComplex array, dimension (ldx, nb). The m-by-nb matrix X required to update the unreduced part of A.
inldxThe leading dimension of the array X. ldx >= max(1,m).
outYComplex array, dimension (ldy, nb). The n-by-nb matrix Y required to update the unreduced part of A.
inldyThe leading dimension of the array Y. ldy >= max(1,n).
void clabrd(
const INT m,
const INT n,
const INT nb,
c64* restrict A,
const INT lda,
f32* restrict D,
f32* restrict E,
c64* restrict tauq,
c64* restrict taup,
c64* restrict X,
const INT ldx,
c64* restrict Y,
const INT ldy
);
Functions
-
void zlabrd(const INT m, const INT n, const INT nb, c128 *restrict A, const INT lda, f64 *restrict D, f64 *restrict E, c128 *restrict tauq, c128 *restrict taup, c128 *restrict X, const INT ldx, c128 *restrict Y, const INT ldy)#
ZLABRD reduces the first NB rows and columns of a complex general m by n matrix A to upper or lower real bidiagonal form by a unitary transformation Q**H * A * P, and returns the matrices X and Y which are needed to apply the transformation to the unreduced part of A.
If m >= n, A is reduced to upper bidiagonal form; if m < n, to lower bidiagonal form.
This is an auxiliary routine called by ZGEBRD.
Parameters
inmThe number of rows in the matrix A.
innThe number of columns in the matrix A.
innbThe number of leading rows and columns of A to be reduced.
inoutAComplex array, dimension (lda, n). On entry, the m by n general matrix to be reduced. On exit, the first NB rows and columns of the matrix are overwritten; the rest of the array is unchanged.
inldaThe leading dimension of the array A. lda >= max(1,m).
outDDouble precision array, dimension (nb). The diagonal elements of the first NB rows and columns of the reduced matrix. D[i] = A[i,i].
outEDouble precision array, dimension (nb). The off-diagonal elements of the first NB rows and columns of the reduced matrix.
outtauqComplex array, dimension (nb). The scalar factors of the elementary reflectors which represent the unitary matrix Q.
outtaupComplex array, dimension (nb). The scalar factors of the elementary reflectors which represent the unitary matrix P.
outXComplex array, dimension (ldx, nb). The m-by-nb matrix X required to update the unreduced part of A.
inldxThe leading dimension of the array X. ldx >= max(1,m).
outYComplex array, dimension (ldy, nb). The n-by-nb matrix Y required to update the unreduced part of A.
inldyThe leading dimension of the array Y. ldy >= max(1,n).
void zlabrd(
const INT m,
const INT n,
const INT nb,
c128* restrict A,
const INT lda,
f64* restrict D,
f64* restrict E,
c128* restrict tauq,
c128* restrict taup,
c128* restrict X,
const INT ldx,
c128* restrict Y,
const INT ldy
);