PSPTTRF(l)

πŸ“¦ version 1.5, in ubuntu jammy

✨ PSPTTRF ✨

okay bestie, sit down, hydrate, and let me tell you about a little LAPACK routine called PSPTTRF πŸ’– this one's from LAPACK routine version 1.5, so yes she's vintage, yes she's iconic, and no she is not going anywhere πŸ‘‘


🌸 NAME 🌸

PSPTTRF β€” she computes a Cholesky factorization of an N-by-N real tridiagonal symmetric positive definite distributed matrix A(1:N, JA:JA+N-1). periodt πŸ’…


πŸŽ€ SYNOPSIS πŸŽ€

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

    INTEGER         INFO, JA, LAF, LWORK, N

    INTEGER         DESCA( * )

    REAL            AF( * ), D( * ), E( * ), WORK( * )

like... look at her arguments, all lined up, so organized, main character energy fr fr 🫢


πŸ’« PURPOSE πŸ’«

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

and the way that it does this?? reordering ✨ β€” it reorders stuff specifically to increase parallelism in the factorization. which is slay, but it means the factors it hands you are DIFFERENT from the ones an equivalent sequential code would produce 😭 like, not the same girl, not the same energy.

⚠️ okay this part is important: these factors cannot be used directly by users. nope. not a vibe. but they can be used in subsequent calls to PSPTTRS to solve linear systems πŸ’– so like, they're not useless, they're just... situational. iykyk.

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 and L is tridiagonal lower triangular, and P is a permutation matrix. so like, pick your fighter β€” upper or lower, both valid, both gorgeous πŸ¦‹


and that's the whole page, bestie!! 🧚 no cap, this one's short and sweet, unlike some routines that go on for forty options πŸ’€

signing off with the receipts: this was LAPACK version 1.5, dated 12 May 1997 πŸ“… β€” a whole legend, still serving after all these years. mwah πŸ’‹ PSPTTRF(l) forever πŸ’œ

πŸ“¦ where this page comes from