spr2(3F)
dspr2, sspr2, zhpr2, chpr2 - BLAS Level Two Symmetric Packed Matrix Rank 2 Update
As shipped in IRIX 6.5. First release of IRIX 6.5.
NAME dspr2, sspr2, zhpr2, chpr2 - BLAS Level Two Symmetric Packed Matrix Rank 2 Update FORTRAN 77 SYNOPSIS subroutine dspr2( uplo, n, alpha, n, incx, y, incy, ap ) character*1 uplo integer n, incx, incy double precision alpha double precision ap(*), x(*), y(*) subroutine sspr2( uplo, n, alpha, n, character*1 uplo integer n, incx, incy real alpha real ap(*), x(*), y(*) subroutine zhpr2( uplo, n, alpha, n, incx, y, incy, ap ) character*1 uplo integer n, incx, incy complex*16 alpha complex*16 ap(*), x(*), y(*) subroutine chpr2( uplo, n, alpha, n, character*1 uplo integer n, incx, incy complex alpha complex ap(*), x(*), y(*) C SYNOPSIS void dspr2( uplo, n, alpha, n, incx, y, incy, ap ) MatrixTriangle uplo; Integer n, incx, incy; double alpha; double (*ap)[ n ], (*x)[ n ], (*y)[ n ]; void sspr2( uplo, n, alpha, n, incx, y, incy, ap ) MatrixTriangle uplo; Integer n, incx, incy; float alpha; float (*ap)[ n ], (*x)[ n ], (*y)[ n ]; void zhpr2( uplo, n, alpha, n, incx, y, incy, ap ) MatrixTriangle uplo; Integer n, incx, incy; Zomplex alpha; Zomplex (*ap)[ n ], (*x)[ n ], (*y)[ n ]; void chpr2( uplo, n, alpha, n, incx, y, incy, ap ) MatrixTriangle uplo; Integer n, incx, incy; Complex alpha; Complex (*ap)[ n ], (*x)[ n ], (*y)[ n ]; DESCRIPTION dspr2 and sspr2 perform the symmetric rank 2 operation A := alpha*x*y' + alpha*y*x' + A, zhpr2 and chpr2 perform the hermitian rank 2 operation A := alpha*x*conjg( y' ) + conjg( alpha )*y*conjg( x' ) + A, where alpha is a real/complex scalar, x is an n element vector 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' Only the upper triangular part of A is to be referenced. uplo = 'L' or 'l' Only the lower triangular part of A is to be referenced. C uplo = UpperTriangle Only the lower triangular part of A is to be referenced. uplo = LowerTriangle Only the lower triangular part of A is to be referenced. 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. 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. 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. 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. Note that for the hermitian matrix the imaginary parts of the diagonal elements need not be set, they are assumed to be zero, and on exit they are set to 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.