PDDBSV(l)

πŸ“¦ version 1.5, in ubuntu jammy

πŸ’– PDDBSV πŸ’–

okay bestie, gather round, because we're about to talk about a LAPACK routine and honestly? she's giving solver energy. this is PDDBSV, from LAPACK version 1.5, and she's here to solve a system of linear equations for you. no cap. ✨


🌸 NAME 🌸

PDDBSV β€” she solves a system of linear equations, and here's the exact shape of it:

A(1:N, JA:JA+N-1) * X = B(IB:IB+N-1, 1:NRHS)

like. that's the whole vibe. she takes your matrix, she takes your right-hand side, and she hands you back the X. iconic behavior fr fr πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

SUBROUTINE PDDBSV( N, BWL, BWU, NRHS, A, JA, DESCA, B, IB, DESCB, WORK,
                   LWORK, INFO )

and the types, because we do NOT skip the types in this house:

INTEGER        BWL, BWU, IB, INFO, JA, LWORK, N, NRHS

INTEGER        DESCA( * ), DESCB( * )

DOUBLE         PRECISION A( * ), B( * ), WORK( * )
ngl the DOUBLE PRECISION is one type, it just got line-wrapped in the original. she's one type. she's thriving. 🫢

✨ PURPOSE ✨

okay so. PDDBSV solves a system of linear equations

where A(1:N, JA:JA+N-1) is an N-by-N real banded diagonally dominant-like distributed matrix with bandwidth BWL, BWU. yes that is a lot of adjectives and every single one of them is load-bearing. πŸŽ€

Gaussian elimination without pivoting is used to factor a reordering of the matrix into L U.

⚠️ bestie, note the without pivoting part. that's not a suggestion, that's literally what it does. and if you want the full tea on how that goes down, the manpage is very clear:

See PDDBTRF and PDDBTRS for details.


and that's the whole page, babes. this was LAPACK version 1.5, dated 12 May 1997 β€” yeah she's vintage, she's a classic, she's been solving banded systems since before we were born and she's still slaying. PDDBSV(l), signing off. πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…

πŸ“¦ where this page comes from