Developer Reference

  • 0.9
  • 09/09/2020
  • Public Content
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

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804