tpttf(3)
okay bestie, this is tpttf(3) from the Library Functions Manual, and it's giving triangular matrix, packed (tp) to RFP (tf) realness. no cap. π
β¨
β¨ NAME β¨
tpttf β tpttf: triangular matrix, packed (tp) to RFP (tf).
π¦ SYNOPSIS π¦
π§ Functions π§
subroutine ctpttf (transr, uplo, n, ap, arf, info)β CTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). πsubroutine dtpttf (transr, uplo, n, ap, arf, info)β DTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). β¨subroutine stpttf (transr, uplo, n, ap, arf, info)β STPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). πΈsubroutine ztpttf (transr, uplo, n, ap, arf, info)β ZTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). β
πΈ Detailed Description πΈ
okay so the detailed description is literally the function docs below. keep scrolling, bestie. π«Ά
π Function Documentation π
π subroutine ctpttf π
subroutine ctpttf (character transr, character uplo, integer n, complex, dimension( 0: * ) ap, complex, dimension( 0: * ) arf, integer info)
π Purpose π
CTPTTF copies a triangular matrix A from standard packed format (TP) to rectangular full packed format (TF).
π Parameters π
TRANSRβCHARACTER*1. This is the format selector:= 'N':ARFin Normal format is wanted;= 'C':ARFin Conjugate-transpose format is wanted.
UPLOβCHARACTER*1:= 'U':Ais upper triangular;= 'L':Ais lower triangular.
NβINTEGER. The order of the matrixA.N >= 0.APβCOMPLEX array, dimension ( N*(N+1)/2 ). On entry, this is the upper or lower triangular matrixA, packed columnwise in a linear array. The j-th column ofAis stored inAPas follows:- if
UPLO = 'U',AP(i + (j-1)*j/2) = A(i,j)for1<=i<=j; - if
UPLO = 'L',AP(i + (j-1)*(2n-j)/2) = A(i,j)forj<=i<=n.
- if
ARFβCOMPLEX array, dimension ( N*(N+1)/2 ). On exit, the upper or lower triangular matrixAstored in RFP format. For a further discussion see Notes below.INFOβINTEGER:= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π§ Further Details: π§
the diagram tea is real, and it is exact. π
!>
!> 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
!>
Definition at line 206 of file ctpttf.f.
β¨ subroutine dtpttf β¨
subroutine dtpttf (character transr, character uplo, integer n, double precision, dimension( 0: * ) ap, double precision, dimension( 0: * ) arf, integer info)
π Purpose π
DTPTTF copies a triangular matrix A from standard packed format (TP) to rectangular full packed format (TF).
π Parameters π
TRANSRβCHARACTER*1. Format selector, but note the letter:= 'N':ARFin Normal format is wanted;= 'T':ARFin Conjugate-transpose format is wanted.
UPLOβCHARACTER*1:= 'U':Ais upper triangular;= 'L':Ais lower triangular.
NβINTEGER. The order of the matrixA.N >= 0.APβDOUBLE PRECISION array, dimension ( N*(N+1)/2 ). On entry, this is the upper or lower triangular matrixA, packed columnwise in a linear array. The j-th column ofAis stored inAPas follows:- if
UPLO = 'U',AP(i + (j-1)*j/2) = A(i,j)for1<=i<=j; - if
UPLO = 'L',AP(i + (j-1)*(2n-j)/2) = A(i,j)forj<=i<=n.
- if
ARFβDOUBLE PRECISION array, dimension ( N*(N+1)/2 ). On exit, the upper or lower triangular matrixAstored in RFP format. For a further discussion see Notes below.INFOβINTEGER:= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
πΈ Further Details πΈ
π Further Details β the RFP format lore
ok so here's the whole picture, and honestly it's giving "math girlie explaining her grid system" energy. First we consider Rectangular Full Packed (RFP) Format when N is even, with the example 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
!> the 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
!> the transpose of the last three columns of AP lower.
!> 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 = 'T'. RFP A in both UPLO cases is just the
!> 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
Then we consider Rectangular Full Packed (RFP) Format when N is odd, with the example N = 5 β yes, the parity switch-up is a whole thing, bestie:
!> 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
!> the 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
!> the transpose of the last two columns of AP lower.
!> 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 = 'T'. RFP A in both UPLO cases is just the
!> 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
πΈ stpttf β the single-precision real one
subroutine stpttf (character transr, character uplo, integer n, real,
dimension( 0: * ) ap, real, dimension( 0: * ) arf, integer info)
STPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). Same energy as dtpttf, just with REAL numbers instead of DOUBLE PRECISION ones β she's the lowkey twin π«
Purpose
!>
!> STPTTF copies a triangular matrix A from standard packed format (TP)
!> to rectangular full packed format (TF).
!>
Parameters
TRANSRisCHARACTER*1= 'N': ARF in Normal format is wanted;= 'T': ARF in Conjugate-transpose format is wanted.
UPLOisCHARACTER*1= 'U': A is upper triangular;= 'L': A is lower triangular.
NisINTEGERβ the order of the matrix A.N >= 0. (no cap, just vibes β¨)APisREALarray, 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)for1<=i<=j; - if
UPLO = 'L',AP(i + (j-1)*(2n-j)/2) = A(i,j)forj<=i<=n.
- if
ARFisREALarray, 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. πINFOisINTEGER= 0: successful exit (we love a win π)< 0: ifINFO = -i, the i-th argument had an illegal value
Author
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Further Details
Same tea as above, and no I'm not skipping it β every bit of it matters. First up, the N even case, example 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
!> the 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
!> the transpose of the last three columns of AP lower.
!> 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 = 'T'. RFP A in both UPLO cases is just the
!> 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
Then the N odd case, example 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
!> the 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
!> the transpose of the last two columns of AP lower.
!> 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 = 'T'. RFP A in both UPLO cases is just the
!> 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
Definition at line 185 of file stpttf.f.
π¦ ztpttf β the big complex COMPLEX*16 one
subroutine ztpttf (character transr, character uplo, integer n, complex*16,
dimension( 0: * ) ap, complex*16, dimension( 0: * ) arf, integer info)
ZTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed format (TF). She's complex, she's double precision, she's the main character of the TPTTF cinematic universe π
Purpose
!>
!> ZTPTTF copies a triangular matrix A from standard packed format (TP)
!> to rectangular full packed format (TF).
!>
Parameters
TRANSRisCHARACTER*1= 'N': ARF in Normal format is wanted;= 'C': ARF in Conjugate-transpose format is wanted. π«§ (note it's'C'here, not'T'β conjugates are built different, fr fr)
UPLOisCHARACTER*1= 'U': A is upper triangular;= 'L': A is lower triangular.
NisINTEGERβ the order of the matrix A.N >= 0.APisCOMPLEX*16array, 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)for1<=i<=j; - if
UPLO = 'L',AP(i + (j-1)*(2n-j)/2) = A(i,j)forj<=i<=n.
- if
ARFisCOMPLEX*16array, 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. πINFOisINTEGER= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
INFOβINTEGER, bestie, it's the vibe report at the end π= 0: successful exit β¨ iconic, flawless, no notes< 0: ifINFO = -i, the i-th argument had an illegal value π so like, go count your arguments and find the culprit at position i
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Further Details π
Okay so buckle up, because this is the part where we explain the actual layout, and honestly? It's giving puzzle. π§©
We first consider Standard Packed Format when N is even. We give an example where N = 6.
!>
!> 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 fr fr:
- For
UPLO = 'U', the upper trapezoidA(0:5,0:2)consists of the last three columns of AP upper. The lower triangleA(4:6,0:2)consists of the conjugate-transpose of the first three columns of AP upper. - For
UPLO = 'L', the lower trapezoidA(1:6,0:2)consists of the first three columns of AP lower. The upper triangleA(0:2,0:2)consists of the 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. (Yes, odd numbers get their own whole section. She's different. π
)
!>
!> 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 trapezoidA(0:4,0:2)consists of the last three columns of AP upper. The lower triangleA(3:4,0:1)consists of the conjugate-transpose of the first two columns of AP upper. - For
UPLO = 'L', the lower trapezoidA(0:4,0:2)consists of the first three columns of AP lower. The upper triangleA(0:1,1:2)consists of the 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
!>
π Definition π
Definition at line 206 of file ztpttf.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
And that's the whole page, bestie! π«Ά This one's LAPACK, Version 3.12.0, page tpttf(3) β and the date column is literally just vibes and empty space, so don't come for me about it πβ¨ Go forth and pack those triangles. π
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms