# Ubuntu Feisty 7.04 manual page repository

Ubuntu is a free computer operating system based on the Linux kernel. Many IT companies, like DeployIS is using it to provide an up-to-date, stable operating system.

Provided by: lapack3-doc_3.0.20000531a-6ubuntu3_all

` `

### NAME

```        ZGEHRD  -  reduce a complex general matrix A to upper Hessenberg form H
by a unitary similarity transformation
```

### SYNOPSIS

```        SUBROUTINE ZGEHRD( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )

INTEGER        IHI, ILO, INFO, LDA, LWORK, N

COMPLEX*16     A( LDA, * ), TAU( * ), WORK( * )
```

### PURPOSE

```        ZGEHRD reduces a complex general matrix A to upper Hessenberg form H by
a unitary similarity transformation: Q’ * A * Q = H .
```

### ARGUMENTS

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

ILO     (input) INTEGER
IHI      (input)  INTEGER It is assumed that A is already upper
triangular in rows and columns 1:ILO-1 and IHI+1:N. ILO and IHI
are  normally  set by a previous call to ZGEBAL; otherwise they
should be set to 1 and N respectively. See Further Details.

A       (input/output) COMPLEX*16 array, dimension (LDA,N)
On entry, the N-by-N general matrix to be  reduced.   On  exit,
the upper triangle and the first subdiagonal of A are overwrit‐
ten with the upper Hessenberg matrix H, and the elements  below
the  first  subdiagonal, with the array TAU, represent the uni‐
tary matrix Q as a product of elementary reflectors.  See  Fur‐
ther Details.  LDA     (input) INTEGER The leading dimension of
the array A.  LDA >= max(1,N).

TAU     (output) COMPLEX*16 array, dimension (N-1)
The scalar factors of the elementary  reflectors  (see  Further
Details).  Elements 1:ILO-1 and IHI:N-1 of TAU are set to zero.

WORK    (workspace/output) COMPLEX*16 array, dimension (LWORK)
WORK(1) returns the optimal LWORK.

LWORK   (input) INTEGER
The length of the array WORK.  LWORK >= max(1,N).  For  optimum
performance LWORK >= N*NB, where NB is the optimal blocksize.

If  LWORK  = -1, then a workspace query is assumed; the routine
only calculates the optimal size of  the  WORK  array,  returns
this  value  as the first entry of the WORK array, and no error
message related to LWORK is issued by XERBLA.

INFO    (output) INTEGER
= 0:  successful exit
< 0:  if INFO = -i, the i-th argument had an illegal value.
The matrix Q is  represented  as  a  product  of  (ihi-ilo)  elementary
reflectors

Q = H(ilo) H(ilo+1) . . . H(ihi-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, v(i+1) = 1 and v(ihi+1:n) = 0;  v(i+2:ihi)  is  stored  on  exit  in
A(i+2:ihi,i), and tau in TAU(i).

The contents of A are illustrated by the following example, with n = 7,
ilo = 2 and ihi = 6:

on entry,                        on exit,

( a   a   a   a   a   a   a )    (  a   a   h   h   h   h   a ) (     a
a    a    a   a   a )    (      a   h   h   h   h   a ) (     a   a   a
a   a   a )    (      h   h   h   h   h   h ) (     a   a   a    a    a
a  )     (       v2   h   h   h   h   h ) (     a   a   a   a   a   a )
(      v2  v3  h   h   h   h ) (     a   a    a    a    a    a  )     (
v2    v3    v4    h    h    h  )  (                          a  )     (
a )

where a denotes an element of the original matrix A, h denotes a  modi‐
fied  element  of the upper Hessenberg matrix H, and vi denotes an ele‐
ment of the vector defining H(i).

```
Sections

What does Ubuntu mean?
Ubuntu is an African word meaning 'Humanity to others', or 'I am what I am because of who we all are'. The Ubuntu distribution brings the spirit of Ubuntu to the software world.