Developer Reference for Intel® oneAPI Math Kernel Library for Fortran
A newer version of this document is available. Customers should click here to go to the newest version.
?trmvt
Performs matrix-vector operations.
Syntax
call strmvt (uplo, n, t, ldt, x, incx, y, incy, w, incw, z, incz )
call dtrmvt (uplo, n, t, ldt, x, incx, y, incy, w, incw, z, incz )
call ctrmvt (uplo, n, t, ldt, x, incx, y, incy, w, incw, z, incz )
call ztrmvt (uplo, n, t, ldt, x, incx, y, incy, w, incw, z, incz )
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.  |