NAME

cungtr - generate a complex unitary matrix Q which is defined as the product of n-1 elementary reflectors of order N, as returned by CHETRD


SYNOPSIS

  SUBROUTINE CUNGTR( UPLO, N, A, LDA, TAU, WORK, LWORK, INFO)
  CHARACTER * 1 UPLO
  COMPLEX A(LDA,*), TAU(*), WORK(*)
  INTEGER N, LDA, LWORK, INFO
  SUBROUTINE CUNGTR_64( UPLO, N, A, LDA, TAU, WORK, LWORK, INFO)
  CHARACTER * 1 UPLO
  COMPLEX A(LDA,*), TAU(*), WORK(*)
  INTEGER*8 N, LDA, LWORK, INFO

F95 INTERFACE

  SUBROUTINE UNGTR( UPLO, [N], A, [LDA], TAU, [WORK], [LWORK], [INFO])
  CHARACTER(LEN=1) :: UPLO
  COMPLEX, DIMENSION(:) :: TAU, WORK
  COMPLEX, DIMENSION(:,:) :: A
  INTEGER :: N, LDA, LWORK, INFO
  SUBROUTINE UNGTR_64( UPLO, [N], A, [LDA], TAU, [WORK], [LWORK], 
 *       [INFO])
  CHARACTER(LEN=1) :: UPLO
  COMPLEX, DIMENSION(:) :: TAU, WORK
  COMPLEX, DIMENSION(:,:) :: A
  INTEGER(8) :: N, LDA, LWORK, INFO

C INTERFACE

#include <sunperf.h>

void cungtr(char uplo, int n, complex *a, int lda, complex *tau, int *info);

void cungtr_64(char uplo, long n, complex *a, long lda, complex *tau, long *info);


PURPOSE

cungtr generates a complex unitary matrix Q which is defined as the product of n-1 elementary reflectors of order N, as returned by CHETRD:

if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),

if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).


ARGUMENTS