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
);
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

in
type

TYPE 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.

in
kl

The lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
ku

The upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
cfrom

Must be nonzero.

in
cto

The 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.

in
m

The number of rows of the matrix A. M >= 0.

in
n

The number of columns of the matrix A. N >= 0.

inout
A

Double precision array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.

in
lda

The 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.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value.

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
);
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

in
type

TYPE 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.

in
kl

The lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
ku

The upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
cfrom

Must be nonzero.

in
cto

The 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.

in
m

The number of rows of the matrix A. M >= 0.

in
n

The number of columns of the matrix A. N >= 0.

inout
A

Double precision array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.

in
lda

The 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.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value.

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
);
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

in
type

TYPE 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.

in
kl

The lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
ku

The upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
cfrom

Must be nonzero.

in
cto

The 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.

in
m

The number of rows of the matrix A. M >= 0.

in
n

The number of columns of the matrix A. N >= 0.

inout
A

Complex*16 array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.

in
lda

The 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.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value.

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
);
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

in
type

TYPE 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.

in
kl

The lower bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
ku

The upper bandwidth of A. Referenced only if TYPE = “B”, ‘Q’ or ‘Z’.

in
cfrom

Must be nonzero.

in
cto

The 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.

in
m

The number of rows of the matrix A. M >= 0.

in
n

The number of columns of the matrix A. N >= 0.

inout
A

Complex*16 array, dimension (lda, n). The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.

in
lda

The 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.

out
info

  • = 0: successful exit

  • < 0: if info = -i, the i-th argument had an illegal value.