Developer Reference for Intel® oneAPI Math Kernel Library for C
?trmvt
Performs matrix-vector operations.
Syntax
void strmvt ( constchar*uplo , constMKL_INT*n , constfloat*t , constMKL_INT*ldt , float*x , constMKL_INT*incx , constfloat*y , constMKL_INT*incy , float*w , constMKL_INT*incw , constfloat*z , constMKL_INT*incz );
void dtrmvt ( constchar*uplo , constMKL_INT*n , constdouble*t , constMKL_INT*ldt , double*x , constMKL_INT*incx , constdouble*y , constMKL_INT*incy , double*w , constMKL_INT*incw , constdouble*z , constMKL_INT*incz );
void ctrmvt ( constchar*uplo , constMKL_INT*n , constMKL_Complex8*t , constMKL_INT*ldt , MKL_Complex8*x , constMKL_INT*incx , constMKL_Complex8*y , constMKL_INT*incy , MKL_Complex8*w , constMKL_INT*incw , constMKL_Complex8*z , constMKL_INT*incz );
void ztrmvt ( constchar*uplo , constMKL_INT*n , constMKL_Complex16*t , constMKL_INT*ldt , MKL_Complex16*x , constMKL_INT*incx , constMKL_Complex16*y , constMKL_INT*incy , MKL_Complex16*w , constMKL_INT*incw , constMKL_Complex16*z , constMKL_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
-
CHARACTER*1. 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
-
INTEGER. On entry, n specifies the order of the matrix A . n must be at least zero. Unchanged on exit.
- t
-
REAL for strmvt DOUBLE PRECISION for dtrmvt COMPLEX for ctrmvt DOUBLE COMPLEX for ztrmvt 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
-
INTEGER. 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
-
INTEGER. On entry, incx specifies the increment for the elements of x . incx must not be zero. Unchanged on exit.
- y
-
REAL for strmvt DOUBLE PRECISION for dtrmvt COMPLEX for ctrmvt DOUBLE COMPLEX for ztrmvt 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
-
INTEGER. On entry, incy specifies the increment for the elements of y . incy must not be zero. Unchanged on exit.
- incw
-
INTEGER. On entry, incw specifies the increment for the elements of w . incw must not be zero. Unchanged on exit.
- z
-
REAL for strmvt DOUBLE PRECISION for dtrmvt COMPLEX for ctrmvt DOUBLE COMPLEX for ztrmvt 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
-
INTEGER. 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
-
REAL for strmvt DOUBLE PRECISION for dtrmvt COMPLEX for ctrmvt DOUBLE COMPLEX for ztrmvt Array of size at least ( 1 + ( n - 1 )*abs( incx ) ). On exit, x = T ‘ * y .
- w
-
REAL for strmvt DOUBLE PRECISION for dtrmvt COMPLEX for ctrmvt DOUBLE COMPLEX for ztrmvt Array of size at least ( 1 + ( n - 1 )*abs( incw ) ). On exit, w = T * z .