ctrttf (l) - Linux Manuals
ctrttf: copies a triangular matrix A from standard full format (TR) to rectangular full packed format (TF)
NAME
CTRTTF - copies a triangular matrix A from standard full format (TR) to rectangular full packed format (TF)SYNOPSIS
- SUBROUTINE CTRTTF(
- TRANSR, UPLO, N, A, LDA, ARF, INFO )
- CHARACTER TRANSR, UPLO
- INTEGER INFO, N, LDA
- COMPLEX A( 0: LDA-1, 0: * ), ARF( 0: * )
PURPOSE
CTRTTF copies a triangular matrix A from standard full format (TR) to rectangular full packed format (TF) .ARGUMENTS
- TRANSR (input) CHARACTER
-
= aqNaq: ARF in Normal mode is wanted;
= aqCaq: ARF in Conjugate Transpose mode is wanted; - UPLO (input) CHARACTER
-
= aqUaq: A is upper triangular;
= aqLaq: A is lower triangular. - N (input) INTEGER
- The order of the matrix A. N >= 0.
- A (input) COMPLEX array, dimension ( LDA, N )
- On entry, the triangular matrix A. If UPLO = aqUaq, the leading N-by-N upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced. If UPLO = aqLaq, the leading N-by-N lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced.
- LDA (input) INTEGER
- The leading dimension of the matrix A. LDA >= max(1,N).
- ARF (output) COMPLEX*16 array, dimension ( N*(N+1)/2 ),
- On exit, the upper or lower triangular matrix A stored in RFP format. For a further discussion see Notes below.
- INFO (output) INTEGER
-
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an illegal value
FURTHER DETAILS
We first consider Standard Packed Format when N is even.We give an example where N = 6.
Let TRANSR = `Naq. RFP holds AP as follows:
For UPLO = `Uaq the upper trapezoid A(0:5,0:2) consists of the last three columns of AP upper. The lower triangle A(4:6,0:2) consists of conjugate-transpose of the first three columns of AP upper. For UPLO = `Laq the lower trapezoid A(1:6,0:2) consists of the first three columns of AP lower. The upper triangle A(0:2,0:2) consists of conjugate-transpose of the last three columns of AP lower. To denote conjugate we place -- above the element. This covers the case N even and TRANSR = `Naq.
03 04 05
13 14 15
23 24 25
33 34 35
--
00 44 45
-- --
01 11 55
-- -- --
02 12 22
Now let TRANSR = `Caq. RFP A in both UPLO cases is just the conjugate- transpose of RFP A above. One therefore gets:
-- -- -- --
03 13 23 33 00 01 02
-- -- -- -- --
04 14 24 34 44 11 12
-- -- -- -- -- --
05 15 25 35 45 55 22
We next consider Standard Packed Format when N is odd.
We give an example where N = 5.
AP is Upper
Let TRANSR = `Naq. RFP holds AP as follows:
For UPLO = `Uaq the upper trapezoid A(0:4,0:2) consists of the last three columns of AP upper. The lower triangle A(3:4,0:1) consists of conjugate-transpose of the first two columns of AP upper. For UPLO = `Laq the lower trapezoid A(0:4,0:2) consists of the first three columns of AP lower. The upper triangle A(0:1,1:2) consists of conjugate-transpose of the last two columns of AP lower. To denote conjugate we place -- above the element. This covers the case N odd and TRANSR = `Naq.
02 03 04
12 13 14
22 23 24
--
00 33 34
-- --
01 11 44
Now let TRANSR = `Caq. RFP A in both UPLO cases is just the conjugate- transpose of RFP A above. One therefore gets:
-- -- --
02 12 22 00 01
-- -- -- --
03 13 23 33 11
-- -- -- -- --
04 14 24 34 44