PDPTTRF(l)

πŸ“¦ version 1.5, in ubuntu jammy

πŸ’– PDPTTRF β€” bestie's guide to the LAPACK routine πŸ’–

okay so we're doing PDPTTRF, a LAPACK routine β€” version 1.5 era, she's vintage and she still slays. Grab a snack, this one's actually not that long. πŸ“


✨ NAME ✨

PDPTTRF β€” she computes a Cholesky factorization of an N-by-N real tridiagonal symmetric positive definite distributed matrix A(1:N, JA:JA+N-1). That's the whole job description, no cap. πŸŽ€


🌸 SYNOPSIS 🌸

SUBROUTINE PDPTTRF( N, D, E, JA, DESCA, AF, LAF, WORK, LWORK, INFO )

    INTEGER         INFO, JA, LAF, LWORK, N

    INTEGER         DESCA( * )

    DOUBLE          PRECISION AF( * ), D( * ), E( * ), WORK( * )

look at her β€” tiny little signature, very demure, very mindful. 🫢


πŸ‘‘ PURPOSE πŸ‘‘

so here's the tea. PDPTTRF computes a Cholesky factorization of an N-by-N real tridiagonal symmetric positive definite distributed matrix A(1:N, JA:JA+N-1).

Now the important part, bestie, read this twice: reordering is used to increase parallelism in the factorization. Sounds cute, right? It is! But β€” and this is the plot twist β€” this reordering results in factors that are DIFFERENT from those produced by equivalent sequential codes. πŸ’€

Those factors can NOT be used directly by users. Periodt. Don't try it. They're not for you to read off and go do your own little math with.

But! they can be used in subsequent calls to PDPTTRS to solve linear systems. So the pipeline is: factorize here, hand the factors to PDPTTRS, live your life. πŸ’…

The factorization has the form

P A(1:N, JA:JA+N-1) P^T = U' D U  or

P A(1:N, JA:JA+N-1) P^T = L D L',

where U is a tridiagonal upper triangular matrix, L is tridiagonal lower triangular, and P is a permutation matrix. 🌈

iconic behavior honestly β€” two whole flavors of the same factorization. Pick your fighter. ✨


and that's the whole page, you ate it. πŸŽ€ This was PDPTTRF, from LAPACK version 1.5, dated 12 May 1997 β€” genuinely a legend, we stan an old queen πŸ‘‘. Now go call PDPTTRS and solve something, bestie. πŸ’œπŸ¦‹

πŸ“¦ where this page comes from