.TH "zupmtr.f" 3 "Tue Nov 14 2017" "Version 3.8.0" "LAPACK" \" -*- nroff -*-
.ad l
.nh
.SH NAME
zupmtr.f
.SH SYNOPSIS
.br
.PP
.SS "Functions/Subroutines"

.in +1c
.ti -1c
.RI "subroutine \fBzupmtr\fP (SIDE, UPLO, TRANS, M, \fBN\fP, AP, TAU, C, LDC, WORK, INFO)"
.br
.RI "\fBZUPMTR\fP "
.in -1c
.SH "Function/Subroutine Documentation"
.PP 
.SS "subroutine zupmtr (character SIDE, character UPLO, character TRANS, integer M, integer N, complex*16, dimension( * ) AP, complex*16, dimension( * ) TAU, complex*16, dimension( ldc, * ) C, integer LDC, complex*16, dimension( * ) WORK, integer INFO)"

.PP
\fBZUPMTR\fP  
.PP
\fBPurpose: \fP
.RS 4

.PP
.nf
 ZUPMTR overwrites the general complex M-by-N matrix C with

                 SIDE = 'L'     SIDE = 'R'
 TRANS = 'N':      Q * C          C * Q
 TRANS = 'C':      Q**H * C       C * Q**H

 where Q is a complex unitary matrix of order nq, with nq = m if
 SIDE = 'L' and nq = n if SIDE = 'R'. Q is defined as the product of
 nq-1 elementary reflectors, as returned by ZHPTRD using packed
 storage:

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

 if UPLO = 'L', Q = H(1) H(2) . . . H(nq-1).
.fi
.PP
 
.RE
.PP
\fBParameters:\fP
.RS 4
\fISIDE\fP 
.PP
.nf
          SIDE is CHARACTER*1
          = 'L': apply Q or Q**H from the Left;
          = 'R': apply Q or Q**H from the Right.
.fi
.PP
.br
\fIUPLO\fP 
.PP
.nf
          UPLO is CHARACTER*1
          = 'U': Upper triangular packed storage used in previous
                 call to ZHPTRD;
          = 'L': Lower triangular packed storage used in previous
                 call to ZHPTRD.
.fi
.PP
.br
\fITRANS\fP 
.PP
.nf
          TRANS is CHARACTER*1
          = 'N':  No transpose, apply Q;
          = 'C':  Conjugate transpose, apply Q**H.
.fi
.PP
.br
\fIM\fP 
.PP
.nf
          M is INTEGER
          The number of rows of the matrix C. M >= 0.
.fi
.PP
.br
\fIN\fP 
.PP
.nf
          N is INTEGER
          The number of columns of the matrix C. N >= 0.
.fi
.PP
.br
\fIAP\fP 
.PP
.nf
          AP is COMPLEX*16 array, dimension
                               (M*(M+1)/2) if SIDE = 'L'
                               (N*(N+1)/2) if SIDE = 'R'
          The vectors which define the elementary reflectors, as
          returned by ZHPTRD.  AP is modified by the routine but
          restored on exit.
.fi
.PP
.br
\fITAU\fP 
.PP
.nf
          TAU is COMPLEX*16 array, dimension (M-1) if SIDE = 'L'
                                     or (N-1) if SIDE = 'R'
          TAU(i) must contain the scalar factor of the elementary
          reflector H(i), as returned by ZHPTRD.
.fi
.PP
.br
\fIC\fP 
.PP
.nf
          C is COMPLEX*16 array, dimension (LDC,N)
          On entry, the M-by-N matrix C.
          On exit, C is overwritten by Q*C or Q**H*C or C*Q**H or C*Q.
.fi
.PP
.br
\fILDC\fP 
.PP
.nf
          LDC is INTEGER
          The leading dimension of the array C. LDC >= max(1,M).
.fi
.PP
.br
\fIWORK\fP 
.PP
.nf
          WORK is COMPLEX*16 array, dimension
                                   (N) if SIDE = 'L'
                                   (M) if SIDE = 'R'
.fi
.PP
.br
\fIINFO\fP 
.PP
.nf
          INFO is INTEGER
          = 0:  successful exit
          < 0:  if INFO = -i, the i-th argument had an illegal value
.fi
.PP
 
.RE
.PP
\fBAuthor:\fP
.RS 4
Univ\&. of Tennessee 
.PP
Univ\&. of California Berkeley 
.PP
Univ\&. of Colorado Denver 
.PP
NAG Ltd\&. 
.RE
.PP
\fBDate:\fP
.RS 4
December 2016 
.RE
.PP

.PP
Definition at line 152 of file zupmtr\&.f\&.
.SH "Author"
.PP 
Generated automatically by Doxygen for LAPACK from the source code\&.
