lacn2#
Functions
-
void slacn2(const INT n, f32 *restrict V, f32 *restrict X, INT *restrict isgn, f32 *est, INT *kase, INT *restrict isave)#
SLACN2 estimates the 1-norm of a square, real matrix A.
Reverse communication is used for evaluating matrix-vector products.
This is a thread safe version of SLACON, which uses the array isave in place of a SAVE statement.
Parameters
innThe order of the matrix (n >= 1).
outVOn the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned). Array of dimension n.
inoutXOn an intermediate return, X should be overwritten by A * X if kase=1, or A**T * X if kase=2, and SLACN2 must be re-called with all other parameters unchanged. Array of dimension n.
outisgnInteger array of dimension n.
inoutestOn entry with kase = 1 or 2 and isave[0] = 3, est should be unchanged from the previous call. On exit, est is an estimate (a lower bound) for norm(A).
inoutkaseOn the initial call, kase should be 0. On an intermediate return, kase will be 1 or 2, indicating whether X should be overwritten by A * X or A**T * X. On the final return from SLACN2, kase will again be 0.
inoutisaveInteger array of dimension 3 used to save variables between calls. isave[0] = JUMP, isave[1] = J, isave[2] = ITER.
void slacn2(
const INT n,
f32* restrict V,
f32* restrict X,
INT* restrict isgn,
f32* est,
INT* kase,
INT* restrict isave
);
Functions
-
void dlacn2(const INT n, f64 *restrict V, f64 *restrict X, INT *restrict isgn, f64 *est, INT *kase, INT *restrict isave)#
DLACN2 estimates the 1-norm of a square, real matrix A.
Reverse communication is used for evaluating matrix-vector products.
This is a thread safe version of DLACON, which uses the array isave in place of a SAVE statement.
Parameters
innThe order of the matrix (n >= 1).
outVOn the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned). Array of dimension n.
inoutXOn an intermediate return, X should be overwritten by A * X if kase=1, or A**T * X if kase=2, and DLACN2 must be re-called with all other parameters unchanged. Array of dimension n.
outisgnInteger array of dimension n.
inoutestOn entry with kase = 1 or 2 and isave[0] = 3, est should be unchanged from the previous call. On exit, est is an estimate (a lower bound) for norm(A).
inoutkaseOn the initial call, kase should be 0. On an intermediate return, kase will be 1 or 2, indicating whether X should be overwritten by A * X or A**T * X. On the final return from DLACN2, kase will again be 0.
inoutisaveInteger array of dimension 3 used to save variables between calls. isave[0] = JUMP, isave[1] = J, isave[2] = ITER.
void dlacn2(
const INT n,
f64* restrict V,
f64* restrict X,
INT* restrict isgn,
f64* est,
INT* kase,
INT* restrict isave
);
Functions
-
void clacn2(const INT n, c64 *restrict V, c64 *restrict X, f32 *est, INT *kase, INT *restrict isave)#
CLACN2 estimates the 1-norm of a square, complex matrix A.
Reverse communication is used for evaluating matrix-vector products.
This is a thread safe version of CLACON, which uses the array isave in place of a SAVE statement, as follows:
CLACON CLACN2 JUMP isave[0] J isave[1] ITER isave[2]
Parameters
innThe order of the matrix. n >= 1.
outVComplex array, dimension (n). On the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned).
inoutXComplex array, dimension (n). On an intermediate return, X should be overwritten by A * X, if kase=1, A**H * X, if kase=2, where A**H is the conjugate transpose of A, and CLACN2 must be re-called with all the other parameters unchanged.
inoutestOn entry with kase = 1 or 2 and isave[0] = 3, est should be unchanged from the previous call to CLACN2. On exit, est is an estimate (a lower bound) for norm(A).
inoutkaseOn the initial call to CLACN2, kase should be 0. On an intermediate return, kase will be 1 or 2, indicating whether X should be overwritten by A * X or A**H * X. On the final return from CLACN2, kase will again be 0.
inoutisaveInteger array of dimension 3 used to save variables between calls to CLACN2.
void clacn2(
const INT n,
c64* restrict V,
c64* restrict X,
f32* est,
INT* kase,
INT* restrict isave
);
Functions
-
void zlacn2(const INT n, c128 *restrict V, c128 *restrict X, f64 *est, INT *kase, INT *restrict isave)#
ZLACN2 estimates the 1-norm of a square, complex matrix A.
Reverse communication is used for evaluating matrix-vector products.
This is a thread safe version of ZLACON, which uses the array isave in place of a SAVE statement, as follows:
ZLACON ZLACN2 JUMP isave[0] J isave[1] ITER isave[2]
Parameters
innThe order of the matrix. n >= 1.
outVComplex array, dimension (n). On the final return, V = A*W, where EST = norm(V)/norm(W) (W is not returned).
inoutXComplex array, dimension (n). On an intermediate return, X should be overwritten by A * X, if kase=1, A**H * X, if kase=2, where A**H is the conjugate transpose of A, and ZLACN2 must be re-called with all the other parameters unchanged.
inoutestOn entry with kase = 1 or 2 and isave[0] = 3, est should be unchanged from the previous call to ZLACN2. On exit, est is an estimate (a lower bound) for norm(A).
inoutkaseOn the initial call to ZLACN2, kase should be 0. On an intermediate return, kase will be 1 or 2, indicating whether X should be overwritten by A * X or A**H * X. On the final return from ZLACN2, kase will again be 0.
inoutisaveInteger array of dimension 3 used to save variables between calls to ZLACN2.
void zlacn2(
const INT n,
c128* restrict V,
c128* restrict X,
f64* est,
INT* kase,
INT* restrict isave
);