PZPTTRSV(l)
π PZPTTRSV π
okay bestie, welcome to the l section of the manual, and today's main character is PZPTTRSV, a LAPACK routine (version 1.5, no cap). she solves tridiagonal triangular systems and she does it flawlessly. sit down, grab a strawberry, let's get into it πβ¨
β¨ NAME β¨
PZPTTRSV β solve a tridiagonal triangular system of linear equations
A(1:N, JA:JA+N-1) * X = B(IB:IB+N-1, 1:NRHS)
like. that's the whole vibe. she solves it. π
β¨ SYNOPSIS β¨
here's the exact signature, character for character, don't touch her:
SUBROUTINE PZPTTRSV( UPLO, TRANS, N, NRHS, D, E, JA, DESCA, B, IB,
DESCB, AF, LAF, WORK, LWORK, INFO )
CHARACTER TRANS, UPLO
INTEGER IB, INFO, JA, LAF, LWORK, N, NRHS
INTEGER DESCA( * ), DESCB( * )
COMPLEX*16 AF( * ), B( * ), E( * ), WORK( * )
DOUBLE PRECISION D( * )
look at that parameter list. iconic. not one argument out of place. she ate and left no crumbs π
β¨ PURPOSE β¨
so here's the tea π« β PZPTTRSV solves a tridiagonal triangular system of linear equations, and there are 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)^H * X = B(IB:IB+N-1, 1:NRHS)
where A(1:N, JA:JA+N-1) is a tridiagonal triangular matrix factor produced by the Cholesky factorization code PZPTTRF, and it's stored in A(1:N,JA:JA+N-1) and AF. yes bestie, two places. she's stored in both. that's just how she lives. π¦
the matrix stored in A(1:N, JA:JA+N-1) is either upper or lower triangular according to UPLO β your call, your vibe β and the choice between solving A(1:N, JA:JA+N-1) or A(1:N, JA:JA+N-1)^H is dictated by you, the user, through the parameter TRANS. you're the main character here, you decide which one you want. πΈ
β οΈ okay this part is NOT optional, and I mean it fr fr: routine PZPTTRF MUST be called first. like, before this one. no skipping. no "oh I'll do it after". she needs her factor ready or nothing works, and that's just the rules π
and that's the whole page, bestie!! go forth and solve your tridiagonal triangular systems responsibly π§ββοΈπ
this has been LAPACK routine version 1.5, dated 12 May 1997 β yes she's a little vintage, but vintage is timeless, and she's still serving. mwah π π
π¦ 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