Developer Reference

Contents

?trmvt

Performs matrix-vector operations.

Syntax

void strmvt
(
const
char*
uplo
,
const
MKL_INT*
n
,
const
float*
t
,
const
MKL_INT*
ldt
,
float*
x
,
const
MKL_INT*
incx
,
const
float*
y
,
const
MKL_INT*
incy
,
float*
w
,
const
MKL_INT*
incw
,
const
float*
z
,
const
MKL_INT*
incz
);
void dtrmvt
(
const
char*
uplo
,
const
MKL_INT*
n
,
const
double*
t
,
const
MKL_INT*
ldt
,
double*
x
,
const
MKL_INT*
incx
,
const
double*
y
,
const
MKL_INT*
incy
,
double*
w
,
const
MKL_INT*
incw
,
const
double*
z
,
const
MKL_INT*
incz
);
void ctrmvt
(
const
char*
uplo
,
const
MKL_INT*
n
,
const
MKL_Complex8*
t
,
const
MKL_INT*
ldt
,
MKL_Complex8*
x
,
const
MKL_INT*
incx
,
const
MKL_Complex8*
y
,
const
MKL_INT*
incy
,
MKL_Complex8*
w
,
const
MKL_INT*
incw
,
const
MKL_Complex8*
z
,
const
MKL_INT*
incz
);
void ztrmvt
(
const
char*
uplo
,
const
MKL_INT*
n
,
const
MKL_Complex16*
t
,
const
MKL_INT*
ldt
,
MKL_Complex16*
x
,
const
MKL_INT*
incx
,
const
MKL_Complex16*
y
,
const
MKL_INT*
incy
,
MKL_Complex16*
w
,
const
MKL_INT*
incw
,
const
MKL_Complex16*
z
,
const
MKL_INT*
incz
);
Include Files
  • mkl_scalapack.h
Description
?trmvt
performs the matrix-vector operations as follows:
strmvt
and
dtrmvt
:   x :=
T
' *y, and w :=
T
*z
ctrmvt
and
ztrmvt
:   x := conjg(
T
' ) *y, and w :=
T
*z,
where x is an
n
element vector and
T
is an
n
-by-
n
upper or lower triangular matrix.
Input Parameters
uplo
On entry,
uplo
specifies whether the matrix is an upper or lower triangular matrix as follows:
uplo
= 'U' or 'u'
A
is an upper triangular matrix.
uplo
= 'L' or 'l'
A
is a lower triangular matrix.
Unchanged on exit.
n
On entry,
n
specifies the order of the matrix
A
.
n
must be at least zero.
Unchanged on exit.
t
Array of size (
ldt
,
n
).
Before entry with
uplo
= 'U' or 'u', the leading
n
-by-
n
upper triangular part of the array
t
must contain the upper triangular matrix and the strictly lower triangular part of
t
is not referenced.
Before entry with
uplo
= 'L' or 'l', the leading
n
-by-
n
lower triangular part of the array
t
must contain the lower triangular matrix and the strictly upper triangular part of
t
is not referenced.
ldt
On entry,
lda
specifies the first dimension of
A
as declared in the calling (sub) program.
lda
must be at least max( 1,
n
).
Unchanged on exit.
incx
On entry,
incx
specifies the increment for the elements of
x
.
incx
must not be zero.
Unchanged on exit.
y
Array of size at least ( 1 + (
n
- 1 )*abs(
incy
) ).
Before entry, the incremented array
y
must contain the
n
element vector
y
.
Unchanged on exit.
incy
On entry,
incy
specifies the increment for the elements of
y
.
incy
must not be zero.
Unchanged on exit.
incw
On entry,
incw
specifies the increment for the elements of
w
.
incw
must not be zero.
Unchanged on exit.
z
Array of size at least ( 1 + (
n
- 1 )*abs(
incz
) ).
Before entry, the incremented array
z
must contain the
n
element vector
z
.
Unchanged on exit.
incz
On entry,
incz
specifies the increment for the elements of
z
.
incz
must not be zero.
Unchanged on exit.
Output Parameters
t
Before entry with
uplo
= 'U' or 'u', the leading
n
-by-
n
upper triangular part of the array
t
must contain the upper triangular matrix and the strictly lower triangular part of
t
is not referenced.
Before entry with
uplo
= 'L' or 'l', the leading
n
-by-
n
lower triangular part of the array
t
must contain the lower triangular matrix and the strictly upper triangular part of
t
is not referenced.
x
Array of size at least ( 1 + (
n
- 1 )*abs(
incx
) ).
On exit,
x
=
T
' *
y
.
w
Array of size at least ( 1 + (
n
- 1 )*abs(
incw
) ).
On exit,
w
=
T
*
z
.

Product and Performance Information

1

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