SRC/cpftrs.f(3)
π SRC/cpftrs.f(3) π
okay bestie, this page is from the Library Functions Manual, and it's all about SRC/cpftrs.f β yes, the whole NAME section is literally just that file name, minimal queen behavior, we respect it. π
β¨ NAME β¨
SRC/cpftrs.f
π¦ SYNOPSIS π¦
Functions/Subroutines
subroutine cpftrs (transr, uplo, n, nrhs, a, b, ldb, info)
CPFTRS
πΈ Function/Subroutine Documentation πΈ
subroutine cpftrs
subroutine cpftrs (character transr, character uplo, integer n, integer
nrhs, complex, dimension( 0: * ) a, complex, dimension( ldb, * ) b,
integer ldb, integer info)
CPFTRS
π« CPFTRS π«
π Purpose: π
okay so CPFTRS solves a system of linear equations A*X = B with a Hermitian positive definite matrix A using the Cholesky factorization A = U**H*U or A = L*L**H computed by CPFTRF. that's the whole flex. slay. β¨
π Parameters π
TRANSRβTRANSR is CHARACTER*1. it's giving:= 'N': The Normal TRANSR of RFP A is stored;= 'C': The Conjugate-transpose TRANSR of RFP A is stored.
UPLOβUPLO is CHARACTER*1. pick your vibe:= 'U': Upper triangle of RFP A is stored;= 'L': Lower triangle of RFP A is stored.
NβN is INTEGER. the order of the matrixA.N >= 0. no negative girlies allowed. π«ΆNRHSβNRHS is INTEGER. the number of right hand sides, i.e., the number of columns of the matrixB.NRHS >= 0.AβA is COMPLEX array, dimension ( N*(N+1)/2 );. it's the triangular factorUorLfrom the Cholesky factorization ofRFP A = U**H*UorRFP A = L*L**H, as computed byCPFTRF. see note below for more details about RFP A. πBβB is COMPLEX array, dimension (LDB,NRHS). on entry, the right hand side matrixB. on exit, the solution matrixX. glow-up moment. πLDBβLDB is INTEGER. the leading dimension of the arrayB.LDB >= max(1,N). periodt.INFOβINFO is INTEGER. the receipts:= 0: successful exit< 0: if INFO = -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: π
okay bestie, this is the packed-format lore, and the spacing is doing the absolute most, so the raw matrix art below is kept exactly as it should be β !> prefixes and all. no cap. π
first up: we consider Standard Packed Format when N is even. example era: 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
next we consider Standard Packed Format when N is odd. example era: 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 219 of file cpftrs.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
k bye bestie β this iconic manual page is serving LAPACK Version 3.12.0 footer energy for SRC/cpftrs.f(3). πβ¨π
π¦ 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