spmv(3F)
dspmv, sspmv, zhpmv, chpmv - BLAS Level Two (Symmetric/Hermitian) Packed Matrix - Vector Product
As shipped in IRIX 6.5. First release of IRIX 6.5.
NAME dspmv, sspmv, zhpmv, chpmv - BLAS Level Two (Symmetric/Hermitian) Packed Matrix - Vector Product FORTRAN 77 SYNOPSIS subroutine dspmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) character*1 uplo integer n, incx, incy double precision alpha, beta double precision ap(*), x(*), y(*) subroutine sspmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) character*1 uplo integer n, incx, incy real alpha, beta real ap(*), x(*), y(*) subroutine zhpmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) character*1 uplo integer n, incx, incy double complex alpha, beta double complex ap(*), x(*), y(*) subroutine chpmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) character*1 uplo integer n, incx, incy complex alpha, beta complex ap(*), x(*), y(*) C SYNOPSIS void dspmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) MatrixTriangle uplo; Integer n, incx, incy; double alpha, beta; double (*ap)[ n*( n + 1 ) )/2 ], (*x)[ n ], (*y)[ n ]; void sspmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) MatrixTriangle uplo; Integer n, incx, incy; float alpha, beta; float (*ap)[ n*( n + 1 ) )/2 ], (*x)[ n ], (*y)[ n ]; void zhpmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) MatrixTriangle uplo; Integer n, incx, incy; Zomplex alpha, beta; Zomplex (*ap)[ n*( n + 1 ) )/2 ], (*x)[ n ], (*y)[ n ]; void chpmv( uplo,n,alpha,ap,x,incx,beta,y,incy ) MatrixTriangle uplo; Integer n, incx, incy; Complex alpha, beta; Complex (*ap)[ n*( n + 1 ) )/2 ], (*x)[ n ], (*y)[ n ]; DESCRIPTION dspmv , sspmv , dhpmv and chpmv perform matrix-vector operation y := alpha*A*x + beta*y, where alpha and beta are scalars, x and y are n element vectors and A is an n by n symmetric/hermitian matrix, supplied in packed form. PARAMETERS uplo On entry, uplo specifies whether the upper or lower triangular part of the matrix A is being supplied as follows: FORTRAN uplo = 'U' or 'u' The upper triangular part of A is supplied in AP. uplo = 'L' or 'l' The lower triangular part of A is supplied in AP. C uplo = UpperTriangle The upper triangular part of A is supplied in AP. uplo = LowerTriangle The lower triangular part of A is supplied in AP. Unchanged on exit. n On entry, n specifies the the order of the matrix A. n must be at least zero. Unchanged on exit. alpha specifies the scalar alpha. Unchanged on exit. ap Array of size at least ( ( n*( n + 1 ) )/2 ). Before entry with uplo = 'U' or 'u' or the array ap must contain the upper triangular part of the symmetric/hermitian matrix packed sequentially, column by column, so that ap( 1 ) contains A( 1, 1 ), ap( 2 ) and ap( 3 ) contain A( 1, 2 ) and A( 2, 2 ) respectively, and so on. Before entry with UPLO = 'L' or 'l' or , the array ap must contain the lower triangular part of the symmetric/hermitian matrix packed sequentially, column by column, so that ap( 1 ) contains A( 1, 1 ), ap( 2 ) and ap( 3 ) contain A( 2, 1 ) and A( 3, 1 ) respectively, and so on. Unchanged on exit. x Array of size at least ( 1 + ( n - 1 )*abs( incx ) ). Before entry, the incremented array x must contain the n element vector x. Unchanged on exit. incx On entry, incx specifies the increment for the elements of x. incx must not be zero. Unchanged on exit. beta On entry, beta specifies the scalar beta. When beta is supplied as zero then y need not be set on input. 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. On exit, y is overwritten by the updated vector y. incy On entry, incy specifies the increment for the elements of y. incy must not be zero. Unchanged on exit. AUTHORS Jack Dongarra, Argonne National Laboratory. Iain Duff, AERE Harwell. Jeremy Du Croz, Numerical Algorithms Group Ltd. Sven Hammarling, Numerical Algorithms Group Ltd. TUNING DSPMV and SSPMV are optimized and parallelized for SGI R3000 and R4x00 platforms. ZHPMV and CHPMV are optimized and parallelized for SGI R3000, R4x00 and R8000 platforms.