PCDBTRS(l)
π PCDBTRS β bestie's guide to solving your banded system π
LAPACK routine, version 1.5, chillin' in section l of the manual. Yes, the (l) is just the manual section, she's fancy like that. π
β¨ NAME β¨
PCDBTRS β solves a system of linear equations, and the system in question is this iconic little number:
A(1:N, JA:JA+N-1) * X = B(IB:IB+N-1, 1:NRHS)
no cap, that's literally the whole job description. π¦
πΈ SYNOPSIS πΈ
SUBROUTINE PCDBTRS( TRANS, N, BWL, BWU, NRHS, A, JA, DESCA, B, IB,
DESCB, AF, LAF, WORK, LWORK, INFO )
CHARACTER TRANS
INTEGER BWL, BWU, IB, INFO, JA, LAF, LWORK, N, NRHS
INTEGER DESCA( * ), DESCB( * )
COMPLEX A( * ), AF( * ), B( * ), WORK( * )
look at her. so many arguments. so much main character energy. π
π PURPOSE π
PCDBTRS solves a system of linear equations, and it comes in two flavours:
A(1:N, JA:JA+N-1) * X = B(IB:IB+N-1, 1:NRHS)
or
A(1:N, JA:JA+N-1)' * X = B(IB:IB+N-1, 1:NRHS)
(that little apostrophe is a transpose, bestie, she's doing the conjugate-transpose version when you ask her to. π )
So where does A(1:N, JA:JA+N-1) come from? It's the matrix that was used to produce the factors stored in A(1:N,JA:JA+N-1) and AF by PCDBTRF. π
And what even is A(1:N, JA:JA+N-1)? She's an N-by-N complex banded diagonally dominant-like distributed matrix, with bandwidth BWL (lower) and BWU (upper). Banded. Dominant-ish. Distributed. The full package. π¦
π¨ OKAY SO THIS PART IS NOT OPTIONAL, FR FR: routinePCDBTRFMUST be called first. Not "should", not "maybe", MUST. If you skipPCDBTRF,PCDBTRShas nothing to work with and it's giving π. Do the factorization first, then come back here. Periodt. π«Ά
π SEE YA π
That's the page, bestie β go forth and solve your banded systems responsibly. πΈ
This one's from LAPACK version 1.5, dated 12 May 1997. Old money, timeless icon. πβ¨
π¦ where this page comes from
- ubuntu jammy: scalapack-doc 1.5-11
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms