SysTutorials

Linux Manual Pages › Section 3

chptrd(3)

NAME

chptrd.f –

SYNOPSIS

Functions/Subroutines

subroutine chptrd (UPLO, N, AP, D, E, TAU, INFO)
CHPTRD

Function/Subroutine Documentation

subroutine chptrd (characterUPLO, integerN, complex, dimension( * )AP, real, dimension( * )D, real, dimension( * )E, complex, dimension( * )TAU, integerINFO)

CHPTRD

Purpose:

 CHPTRD 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.

 

Parameters:

UPLO

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

N

          N is INTEGER
          The order of the matrix A.  N >= 0.

AP


          AP is COMPLEX 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 + (j-1)*j/2) = A(i,j) for 1<=i<=j;
          if UPLO = 'L', AP(i + (j-1)*(2*n-j)/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

          D is REAL array, dimension (N)
          The diagonal elements of the tridiagonal matrix T:
          D(i) = A(i,i).

E

          E is REAL 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'.

TAU

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

INFO

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

 

Author:

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Date:

November 2011

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 * *H 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
                  : i - 1, 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 * *H 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).

 

Definition at line 152 of file chptrd.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Index