NAME
chpr2 - perform the Hermitian rank 2 operation A :=
alpha*x*conjg( y' ) + conjg( alpha )*y*conjg( x' ) + A
SYNOPSIS
SUBROUTINE CHPR2 ( UPLO, N, ALPHA, X, INCX, Y, INCY, AP )
COMPLEX ALPHA
INTEGER INCX, INCY, N
CHARACTER*1 UPLO
COMPLEX AP( * ), X( * ), Y( * )
#include <sunperf.h>
void chpr2(char uplo, int n, complex *calpha, complex * x,
int incx, complex *cy, int incy, complex *ap) ;
PURPOSE
CHPR2 performs the Hermitian rank 2 operation A :=
alpha*x*conjg( y' ) + conjg( alpha )*y*conjg( x' ) + A where
alpha is a scalar, x and y are n element vectors and A is an
n by n hermitian matrix, supplied in packed form.
PARAMETERS
UPLO - CHARACTER*1.
On entry, UPLO specifies whether the upper or
lower triangular part of the matrix A is supplied
in the packed array AP as follows:
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.
Unchanged on exit.
N - INTEGER.
On entry, N specifies the order of the matrix A.
N must be at least zero. Unchanged on exit.
ALPHA - COMPLEX .
On entry, ALPHA specifies the scalar alpha.
Unchanged on exit.
X - COMPLEX array of dimension at least
( 1 + ( n - 1 )*abs( INCX ) ). Before entry, the
incremented array X must contain the n element
vector x. 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 - COMPLEX array of dimension 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.
AP - COMPLEX array of DIMENSION at least
( ( n*( n + 1 ) )/2 ). Before entry with UPLO =
'U' or 'u', the array AP must contain the upper
triangular part of the 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. On
exit, the array AP is overwritten by the upper
triangular part of the updated matrix. Before
entry with UPLO = 'L' or 'l', the array AP must
contain the lower triangular part of the 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. On exit, the array AP is overwritten by
the lower triangular part of the updated matrix.
Note that the imaginary parts of the diagonal ele-
ments need not be set, they are assumed to be
zero, and on exit they are set to zero.
|
Закладки на сайте Проследить за страницей |
Created 1996-2025 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |