Developer Reference

Contents

?lascl

Multiplies a general rectangular matrix by a real scalar defined as c
to
/c
from
.

Syntax

lapack_int
LAPACKE_slascl
(
int
matrix_layout
,
char
type
,
lapack_int
kl
,
lapack_int
ku
,
float
cfrom
,
float
cto
,
lapack_int
m
,
lapack_int
n
,
float
*
a
,
lapack_int
lda
);
lapack_int
LAPACKE_dlascl
(
int
matrix_layout
,
char
type
,
lapack_int
kl
,
lapack_int
ku
,
double
cfrom
,
double
cto
,
lapack_int
m
,
lapack_int
n
,
double
*
a
,
lapack_int
lda
);
lapack_int
LAPACKE_clascl
(
int
matrix_layout
,
char
type
,
lapack_int
kl
,
lapack_int
ku
,
float
cfrom
,
float
cto
,
lapack_int
m
,
lapack_int
n
,
lapack_complex_float
*
a
,
lapack_int
lda
);
lapack_int
LAPACKE_zlascl
(
int
matrix_layout
,
char
type
,
lapack_int
kl
,
lapack_int
ku
,
double
cfrom
,
double
cto
,
lapack_int
m
,
lapack_int
n
,
lapack_complex_double
*
a
,
lapack_int
lda
);
Include Files
  • mkl.h
Description
The routine
?lascl
multiplies the
m
-by-
n
real/complex matrix
A
by the real scalar
c
to
/
c
from
. The operation is performed without over/underflow as long as the final result
c
to
*
A
(
i
,
j
)/
c
from
does not over/underflow.
type
specifies that
A
may be full, upper triangular, lower triangular, upper Hessenberg, or banded.
Input Parameters
matrix_layout
Specifies whether matrix storage layout is row major (
LAPACK_ROW_MAJOR
) or column major (
LAPACK_COL_MAJOR
).
type
This parameter specifies 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
. See description of the
?gbtrf
function for storage details.
kl
The lower bandwidth of
A
. Referenced only if
type
=
'B'
,
'Q'
or
'Z'
.
ku
The upper bandwidth of
A
. Referenced only if
type
=
'B'
,
'Q'
or
'Z'
.
cfrom
,
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.
m
The number of rows of the matrix
A
.
m
0
.
n
The number of columns of the matrix
A
.
n
0.
a
Array, size
(
lda
*
n
)
. The matrix to be multiplied by
cto
/
cfrom
. See
type
for the storage type.
lda
The leading dimension of the array
a
.
lda
max(1,
m
)
.
Output Parameters
a
The multiplied matrix
A
.
info
If
info
= 0
- successful exit
If
info
= -
i
< 0
, the
i
-th argument had an illegal value.

Product and Performance Information

1

Performance varies by use, configuration and other factors. Learn more at www.Intel.com/PerformanceIndex.