---
name: "ctfttr"
section: "3lapack"
platform: "linux"
package: "liblapack-doc"
version: "3.2.1-8"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/ctfttr/3lapack"
---

# ctfttr(3lapack)

copies a triangular matrix A from rectangular full packed format (TF) to standard full format (TR)

## NAME

CTFTTR - copies a triangular matrix A from rectangular full packed format (TF) to standard full format (TR)

## SYNOPSIS

- SUBROUTINE CTFTTR(

  TRANSR, UPLO, N, ARF, A, LDA, INFO )

- CHARACTER

  TRANSR, UPLO

- INTEGER

  INFO, N, LDA

- COMPLEX

  A( 0: LDA-1, 0: \* ), ARF( 0: \* )

## PURPOSE

CTFTTR copies a triangular matrix A from rectangular full packed format (TF) to standard full format (TR).

## ARGUMENTS

- TRANSR (input) CHARACTER

  \= 'N':  ARF is in Normal format;\
   \= 'C':  ARF is in Conjugate-transpose format;

- UPLO (input) CHARACTER

  \= 'U':  A is upper triangular;\
   \= 'L':  A is lower triangular.

- N (input) INTEGER

  The order of the matrix A.  N \>= 0.

- ARF (input) COMPLEX array, dimension ( N\*(N+1)/2 ),

  On entry, the upper or lower triangular matrix A stored in RFP format. For a further discussion see Notes below.

- A (output) COMPLEX array, dimension ( LDA, N )

  On exit, the triangular matrix A.  If UPLO = 'U', 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 = 'L', 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 array A.  LDA \>= max(1,N).

- 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.\
\
     AP is Upper             AP is Lower\
\
  00 01 02 03 04 05       00\
\
     11 12 13 14 15       10 11\
\
        22 23 24 25       20 21 22\
\
           33 34 35       30 31 32 33\
\
              44 45       40 41 42 43 44\
\
                 55       50 51 52 53 54 55\
 Let TRANSR = 'N'. RFP holds AP as follows:\
 For UPLO = 'U' 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 = 'L' 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 = 'N'.\
\
        RFP A                   RFP A\
\
                               \-- -- --\
\
       03 04 05                33 43 53\
\
                                  \-- --\
\
       13 14 15                00 44 54\
\
                                     \--\
\
       23 24 25                10 11 55\
\
       33 34 35                20 21 22\
\
       \--\
\
       00 44 45                30 31 32\
\
       \-- --\
\
       01 11 55                40 41 42\
\
       \-- -- --\
\
       02 12 22                50 51 52\
 Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate- transpose of RFP A above. One therefore gets:\
\
          RFP A                   RFP A\
\
    \-- -- -- --                -- -- -- -- -- --\
\
    03 13 23 33 00 01 02    33 00 10 20 30 40 50\
\
    \-- -- -- -- --                -- -- -- -- --\
\
    04 14 24 34 44 11 12    43 44 11 21 31 41 51\
\
    \-- -- -- -- -- --                -- -- -- --\
\
    05 15 25 35 45 55 22    53 54 55 22 32 42 52\
 We next  consider Standard Packed Format when N is odd.\
 We give an example where N = 5.\
\
    AP is Upper                 AP is Lower\
\
  00 01 02 03 04              00\
\
     11 12 13 14              10 11\
\
        22 23 24              20 21 22\
\
           33 34              30 31 32 33\
\
              44              40 41 42 43 44\
 Let TRANSR = 'N'. RFP holds AP as follows:\
 For UPLO = 'U' 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 = 'L' 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 = 'N'.\
\
        RFP A                   RFP A\
\
                                  \-- --\
\
       02 03 04                00 33 43\
\
                                     \--\
\
       12 13 14                10 11 44\
\
       22 23 24                20 21 22\
\
       \--\
\
       00 33 34                30 31 32\
\
       \-- --\
\
       01 11 44                40 41 42\
 Now let TRANSR = 'C'. RFP A in both UPLO cases is just the conjugate- transpose of RFP A above. One therefore gets:\
\
          RFP A                   RFP A\
\
    \-- -- --                   -- -- -- -- -- --\
\
    02 12 22 00 01             00 10 20 30 40 50\
\
    \-- -- -- --                   -- -- -- -- --\
\
    03 13 23 33 11             33 11 21 31 41 51\
\
    \-- -- -- -- --                   -- -- -- --\
\
    04 14 24 34 44             43 44 22 32 42 52\
