·  Home
+   man pages
 -> Linux -> FreeBSD -> OpenBSD -> NetBSD -> Tru64 Unix -> HP-UX 11i -> IRIX
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

man pages->IRIX man pages -> complib/zhptrd (3)
 Title
 Content
 Arch
 Section All Sections 1 - General Commands 2 - System Calls 3 - Subroutines 4 - Special Files 5 - File Formats 6 - Games 7 - Macros and Conventions 8 - Maintenance Commands 9 - Kernel Interface n - New Commands

### Contents

```
ZHPTRD(3F)							    ZHPTRD(3F)

```

### NAME[Toc][Back]

```     ZHPTRD - reduce a complex Hermitian matrix	A stored in packed form	to
real symmetric tridiagonal	form T by a unitary similarity transformation
```

### SYNOPSIS[Toc][Back]

```     SUBROUTINE	ZHPTRD(	UPLO, N, AP, D,	E, TAU,	INFO )

CHARACTER	UPLO

INTEGER	INFO, N

DOUBLE		PRECISION D( * ), E( * )

COMPLEX*16	AP( * ), TAU( *	)
```

### PURPOSE[Toc][Back]

```     ZHPTRD reduces a complex Hermitian	matrix A stored	in packed form to real
symmetric tridiagonal form	T by a unitary similarity transformation: Q**H
* A * Q = T.

```

### ARGUMENTS[Toc][Back]

```     UPLO    (input) CHARACTER*1
= 'U':  Upper triangle of A is stored;
= 'L':  Lower triangle of A is stored.

N	     (input) INTEGER
The order of the matrix A.	 N >= 0.

AP	     (input/output) COMPLEX*16 array, dimension	(N*(N+1)/2)
On	entry, the upper or lower triangle of the Hermitian matrix A,
packed columnwise in a linear array.  The j-th column of A	is
stored in the array AP as follows:	 if UPLO = 'U',	AP(i + (j1)*j/2)
= A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2*nj)/2)
= A(i,j) for	j<=i<=n.  On exit, if UPLO = 'U', the diagonal
and first superdiagonal of	A are overwritten by the corresponding
elements of the tridiagonal matrix	T, and the elements above the
first superdiagonal, with the array TAU, represent	the unitary
matrix Q as a product of elementary reflectors; if	UPLO = 'L',
the diagonal and first subdiagonal	of A are over- written by the
corresponding elements of the tridiagonal matrix T, and the
elements below the	first subdiagonal, with	the array TAU,
represent the unitary matrix Q as a product of elementary
reflectors. See Further Details.  D       (output)	DOUBLE
PRECISION array, dimension	(N) The	diagonal elements of the
tridiagonal matrix	T:  D(i) = A(i,i).

E	     (output) DOUBLE PRECISION array, dimension	(N-1)
The off-diagonal elements of the tridiagonal matrix T:  E(i) =
A(i,i+1) if UPLO =	'U', E(i) = A(i+1,i) if	UPLO = 'L'.

Page 1

ZHPTRD(3F)							    ZHPTRD(3F)

TAU     (output) COMPLEX*16 array,	dimension (N-1)
The scalar	factors	of the elementary reflectors (see Further
Details).

INFO    (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value

FURTHER	DETAILS
If	UPLO = 'U', the	matrix Q is represented	as a product of	elementary
reflectors

Q = H(n-1) . . . H(2) H(1).

Each H(i) has the form

H(i) = I - tau * v * v'

where tau is a complex scalar, and	v is a complex vector with v(i+1:n) =
0 and v(i)	= 1; v(1:i-1) is stored	on exit	in AP, overwriting A(1:i1,i+1),
and tau is	stored in TAU(i).

If	UPLO = 'L', the	matrix Q is represented	as a product of	elementary
reflectors

Q = H(1) H(2) .	. . H(n-1).

Each H(i) has the form

H(i) = I - tau * v * v'

where tau is a complex scalar, and	v is a complex vector with v(1:i) = 0
and v(i+1)	= 1; v(i+2:n) is stored	on exit	in AP, overwriting A(i+2:n,i),
and tau is	stored in TAU(i).
ZHPTRD(3F)							    ZHPTRD(3F)

```

### NAME[Toc][Back]

```     ZHPTRD - reduce a complex Hermitian matrix	A stored in packed form	to
real symmetric tridiagonal	form T by a unitary similarity transformation
```

### SYNOPSIS[Toc][Back]

```     SUBROUTINE	ZHPTRD(	UPLO, N, AP, D,	E, TAU,	INFO )

CHARACTER	UPLO

INTEGER	INFO, N

DOUBLE		PRECISION D( * ), E( * )

COMPLEX*16	AP( * ), TAU( *	)
```

### PURPOSE[Toc][Back]

```     ZHPTRD reduces a complex Hermitian	matrix A stored	in packed form to real
symmetric tridiagonal form	T by a unitary similarity transformation: Q**H
* A * Q = T.

```

### ARGUMENTS[Toc][Back]

```     UPLO    (input) CHARACTER*1
= 'U':  Upper triangle of A is stored;
= 'L':  Lower triangle of A is stored.

N	     (input) INTEGER
The order of the matrix A.	 N >= 0.

AP	     (input/output) COMPLEX*16 array, dimension	(N*(N+1)/2)
On	entry, the upper or lower triangle of the Hermitian matrix A,
packed columnwise in a linear array.  The j-th column of A	is
stored in the array AP as follows:	 if UPLO = 'U',	AP(i + (j1)*j/2)
= A(i,j) for 1<=i<=j; if UPLO = 'L', AP(i + (j-1)*(2*nj)/2)
= A(i,j) for	j<=i<=n.  On exit, if UPLO = 'U', the diagonal
and first superdiagonal of	A are overwritten by the corresponding
elements of the tridiagonal matrix	T, and the elements above the
first superdiagonal, with the array TAU, represent	the unitary
matrix Q as a product of elementary reflectors; if	UPLO = 'L',
the diagonal and first subdiagonal	of A are over- written by the
corresponding elements of the tridiagonal matrix T, and the
elements below the	first subdiagonal, with	the array TAU,
represent the unitary matrix Q as a product of elementary
reflectors. See Further Details.  D       (output)	DOUBLE
PRECISION array, dimension	(N) The	diagonal elements of the
tridiagonal matrix	T:  D(i) = A(i,i).

E	     (output) DOUBLE PRECISION array, dimension	(N-1)
The off-diagonal elements of the tridiagonal matrix T:  E(i) =
A(i,i+1) if UPLO =	'U', E(i) = A(i+1,i) if	UPLO = 'L'.

Page 1

ZHPTRD(3F)							    ZHPTRD(3F)

TAU     (output) COMPLEX*16 array,	dimension (N-1)
The scalar	factors	of the elementary reflectors (see Further
Details).

INFO    (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value

FURTHER	DETAILS
If	UPLO = 'U', the	matrix Q is represented	as a product of	elementary
reflectors

Q = H(n-1) . . . H(2) H(1).

Each H(i) has the form

H(i) = I - tau * v * v'

where tau is a complex scalar, and	v is a complex vector with v(i+1:n) =
0 and v(i)	= 1; v(1:i-1) is stored	on exit	in AP, overwriting A(1:i1,i+1),
and tau is	stored in TAU(i).

If	UPLO = 'L', the	matrix Q is represented	as a product of	elementary
reflectors

Q = H(1) H(2) .	. . H(n-1).

Each H(i) has the form

H(i) = I - tau * v * v'

where tau is a complex scalar, and	v is a complex vector with v(1:i) = 0
and v(i+1)	= 1; v(i+2:n) is stored	on exit	in AP, overwriting A(i+2:n,i),
and tau is	stored in TAU(i).

PPPPaaaaggggeeee 2222```
[ Back ]
Similar pages