SLASCL(3f)

NAME
SLASCL - the M by N real matrix A by the real scalar CTO/CFROM

SYNOPSIS

SUBROUTINE SLASCL(
    TYPE, KL, KU, CFROM, CTO, M, N, A, LDA, INFO )

CHARACTER
    TYPE

INTEGER
    INFO, KL, KU, LDA, M, N

REAL
    CFROM, CTO

REAL
    A( LDA, * )

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

ARGUMENTS

TYPE    (input) CHARACTER*1
    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 the only the lower half stored. = 'Q': A is a symmetric band matrix with lower bandwidth KL and upper bandwidth KU and with the only the upper half stored. = 'Z': A is a band matrix with lower bandwidth KL and upper bandwidth KU.

KL      (input) INTEGER
    The lower bandwidth of A. Referenced only if TYPE = 'B', 'Q' or 'Z'.

KU      (input) INTEGER
    The upper bandwidth of A. Referenced only if TYPE = 'B', 'Q' or 'Z'.

CFROM   (input) REAL
    CTO (input) REAL 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.

M       (input) INTEGER
    The number of rows of the matrix A. M >= 0.

N       (input) INTEGER
    The number of columns of the matrix A. N >= 0.

A       (input/output) REAL array, dimension (LDA,N)
    The matrix to be multiplied by CTO/CFROM. See TYPE for the storage type.

LDA     (input) INTEGER
    The leading dimension of the array A. LDA >= max(1,M).

INFO    (output) INTEGER
    0 - successful exit <0 - if INFO = -i, the i-th argument had an illegal value.