LAPACK  3.8.0 LAPACK: Linear Algebra PACKage

## ◆ ztpttr()

 subroutine ztpttr ( character UPLO, integer N, complex*16, dimension( * ) AP, complex*16, dimension( lda, * ) A, integer LDA, integer INFO )

ZTPTTR copies a triangular matrix from the standard packed format (TP) to the standard full format (TR).

Purpose:
``` ZTPTTR copies a triangular matrix A from standard packed format (TP)
to standard full format (TR).```
Parameters
 [in] UPLO ``` UPLO is CHARACTER*1 = 'U': A is upper triangular. = 'L': A is lower triangular.``` [in] N ``` N is INTEGER The order of the matrix A. N >= 0.``` [in] AP ``` AP is COMPLEX*16 array, dimension ( N*(N+1)/2 ), On entry, the upper or lower triangular 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)*(2n-j)/2) = A(i,j) for j<=i<=n.``` [out] A ``` A is COMPLEX*16 array, dimension ( LDA, N ) On exit, the triangular matrix A. If UPLO = 'U', the leading N-by-N upper triangular part of A contains the upper triangular part of the matrix A, and the strictly lower triangular part of A is not referenced. If UPLO = 'L', the leading N-by-N lower triangular part of A contains the lower triangular part of the matrix A, and the strictly upper triangular part of A is not referenced.``` [in] LDA ``` LDA is INTEGER The leading dimension of the array A. LDA >= max(1,N).``` [out] INFO ``` INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value```
Date
December 2016

Definition at line 106 of file ztpttr.f.

106 *
107 * -- LAPACK computational routine (version 3.7.0) --
108 * -- LAPACK is a software package provided by Univ. of Tennessee, --
109 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..--
110 * December 2016
111 *
112 * .. Scalar Arguments ..
113  CHARACTER uplo
114  INTEGER info, n, lda
115 * ..
116 * .. Array Arguments ..
117  COMPLEX*16 a( lda, * ), ap( * )
118 * ..
119 *
120 * =====================================================================
121 *
122 * .. Parameters ..
123 * ..
124 * .. Local Scalars ..
125  LOGICAL lower
126  INTEGER i, j, k
127 * ..
128 * .. External Functions ..
129  LOGICAL lsame
130  EXTERNAL lsame
131 * ..
132 * .. External Subroutines ..
133  EXTERNAL xerbla
134 * ..
135 * .. Executable Statements ..
136 *
137 * Test the input parameters.
138 *
139  info = 0
140  lower = lsame( uplo, 'L' )
141  IF( .NOT.lower .AND. .NOT.lsame( uplo, 'U' ) ) THEN
142  info = -1
143  ELSE IF( n.LT.0 ) THEN
144  info = -2
145  ELSE IF( lda.LT.max( 1, n ) ) THEN
146  info = -5
147  END IF
148  IF( info.NE.0 ) THEN
149  CALL xerbla( 'ZTPTTR', -info )
150  RETURN
151  END IF
152 *
153  IF( lower ) THEN
154  k = 0
155  DO j = 1, n
156  DO i = j, n
157  k = k + 1
158  a( i, j ) = ap( k )
159  END DO
160  END DO
161  ELSE
162  k = 0
163  DO j = 1, n
164  DO i = 1, j
165  k = k + 1
166  a( i, j ) = ap( k )
167  END DO
168  END DO
169  END IF
170 *
171 *
172  RETURN
173 *
174 * End of ZTPTTR
175 *
subroutine xerbla(SRNAME, INFO)
XERBLA
Definition: xerbla.f:62
logical function lsame(CA, CB)
LSAME
Definition: lsame.f:55
Here is the call graph for this function:
Here is the caller graph for this function: