lascl#
Functions
-
void slascl(const char *type, const INT kl, const INT ku, const f32 cfrom, const f32 cto, const INT m, const INT n, f32 *restrict A, const INT lda, INT *info)#
SLASCL multiplies the M by N real matrix A by the real scalar CTO/CFROM.
This is done without over/underflow as long as the final result CTO*A(I,J)/CFROM does not over/underflow. TYPE specifies that A may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
Parameters
intypeTYPE indices the storage type of the input matrix. = ‘G’: A is a full matrix. = ‘L’: A is a lower triangular matrix. = ‘U’: A is an upper triangular matrix. = ‘H’: A is an upper Hessenberg matrix. = ‘B’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the lower half stored. = ‘Q’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the upper half stored. = ‘Z’: A is a band matrix with lower bandwidth KL and upper bandwidth KU. See SGBTRF for storage details.
inklThe lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
inkuThe upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
incfromMust be nonzero.
inctoThe matrix A is multiplied by CTO/CFROM. A(I,J) is computed without over/underflow if the final result CTO*A(I,J)/CFROM can be represented without over/underflow. CFROM must be nonzero.
inmThe number of rows of the matrix A. M >= 0.
innThe number of columns of the matrix A. N >= 0.
inoutADouble precision array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.
inldaThe leading dimension of the array A. If TYPE = “G”, “L”, “U”, “H”, LDA >= max(1,M); TYPE = “B”, LDA >= KL+1; TYPE = “Q”, LDA >= KU+1; TYPE = “Z”, LDA >= 2*KL+KU+1.
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void slascl(
const char* type,
const INT kl,
const INT ku,
const f32 cfrom,
const f32 cto,
const INT m,
const INT n,
f32* restrict A,
const INT lda,
INT* info
);
Functions
-
void dlascl(const char *type, const INT kl, const INT ku, const f64 cfrom, const f64 cto, const INT m, const INT n, f64 *restrict A, const INT lda, INT *info)#
DLASCL multiplies the M by N real matrix A by the real scalar CTO/CFROM.
This is done without over/underflow as long as the final result CTO*A(I,J)/CFROM does not over/underflow. TYPE specifies that A may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
Parameters
intypeTYPE indices the storage type of the input matrix. = ‘G’: A is a full matrix. = ‘L’: A is a lower triangular matrix. = ‘U’: A is an upper triangular matrix. = ‘H’: A is an upper Hessenberg matrix. = ‘B’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the lower half stored. = ‘Q’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the upper half stored. = ‘Z’: A is a band matrix with lower bandwidth KL and upper bandwidth KU. See DGBTRF for storage details.
inklThe lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
inkuThe upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
incfromMust be nonzero.
inctoThe matrix A is multiplied by CTO/CFROM. A(I,J) is computed without over/underflow if the final result CTO*A(I,J)/CFROM can be represented without over/underflow. CFROM must be nonzero.
inmThe number of rows of the matrix A. M >= 0.
innThe number of columns of the matrix A. N >= 0.
inoutADouble precision array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.
inldaThe leading dimension of the array A. If TYPE = “G”, “L”, “U”, “H”, LDA >= max(1,M); TYPE = “B”, LDA >= KL+1; TYPE = “Q”, LDA >= KU+1; TYPE = “Z”, LDA >= 2*KL+KU+1.
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void dlascl(
const char* type,
const INT kl,
const INT ku,
const f64 cfrom,
const f64 cto,
const INT m,
const INT n,
f64* restrict A,
const INT lda,
INT* info
);
Functions
-
void clascl(const char *type, const INT kl, const INT ku, const f32 cfrom, const f32 cto, const INT m, const INT n, c64 *restrict A, const INT lda, INT *info)#
CLASCL multiplies the M by N complex matrix A by the real scalar CTO/CFROM.
This is done without over/underflow as long as the final result CTO*A(I,J)/CFROM does not over/underflow. TYPE specifies that A may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
Parameters
intypeTYPE indices the storage type of the input matrix. = ‘G’: A is a full matrix. = ‘L’: A is a lower triangular matrix. = ‘U’: A is an upper triangular matrix. = ‘H’: A is an upper Hessenberg matrix. = ‘B’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the lower half stored. = ‘Q’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the upper half stored. = ‘Z’: A is a band matrix with lower bandwidth KL and upper bandwidth KU. See CGBTRF for storage details.
inklThe lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
inkuThe upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
incfromMust be nonzero.
inctoThe matrix A is multiplied by CTO/CFROM. A(I,J) is computed without over/underflow if the final result CTO*A(I,J)/CFROM can be represented without over/underflow. CFROM must be nonzero.
inmThe number of rows of the matrix A. M >= 0.
innThe number of columns of the matrix A. N >= 0.
inoutAComplex*16 array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.
inldaThe leading dimension of the array A. If TYPE = “G”, “L”, “U”, “H”, LDA >= max(1,M); TYPE = “B”, LDA >= KL+1; TYPE = “Q”, LDA >= KU+1; TYPE = “Z”, LDA >= 2*KL+KU+1.
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void clascl(
const char* type,
const INT kl,
const INT ku,
const f32 cfrom,
const f32 cto,
const INT m,
const INT n,
c64* restrict A,
const INT lda,
INT* info
);
Functions
-
void zlascl(const char *type, const INT kl, const INT ku, const f64 cfrom, const f64 cto, const INT m, const INT n, c128 *restrict A, const INT lda, INT *info)#
ZLASCL multiplies the M by N complex matrix A by the real scalar CTO/CFROM.
This is done without over/underflow as long as the final result CTO*A(I,J)/CFROM does not over/underflow. TYPE specifies that A may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
Parameters
intypeTYPE indices the storage type of the input matrix. = ‘G’: A is a full matrix. = ‘L’: A is a lower triangular matrix. = ‘U’: A is an upper triangular matrix. = ‘H’: A is an upper Hessenberg matrix. = ‘B’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the lower half stored. = ‘Q’: A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with only the upper half stored. = ‘Z’: A is a band matrix with lower bandwidth KL and upper bandwidth KU. See ZGBTRF for storage details.
inklThe lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
inkuThe upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.
incfromMust be nonzero.
inctoThe matrix A is multiplied by CTO/CFROM. A(I,J) is computed without over/underflow if the final result CTO*A(I,J)/CFROM can be represented without over/underflow. CFROM must be nonzero.
inmThe number of rows of the matrix A. M >= 0.
innThe number of columns of the matrix A. N >= 0.
inoutAComplex*16 array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.
inldaThe leading dimension of the array A. If TYPE = “G”, “L”, “U”, “H”, LDA >= max(1,M); TYPE = “B”, LDA >= KL+1; TYPE = “Q”, LDA >= KU+1; TYPE = “Z”, LDA >= 2*KL+KU+1.
outinfo= 0: successful exit
< 0: if info = -i, the i-th argument had an illegal value.
void zlascl(
const char* type,
const INT kl,
const INT ku,
const f64 cfrom,
const f64 cto,
const INT m,
const INT n,
c128* restrict A,
const INT lda,
INT* info
);