PZPTTRF(l)
β¨ PZPTTRF β¨
okay bestie, gather round, because we're about to talk about a LAPACK routine and honestly? she's a lot. this is PZPTTRF, and she lives in section l of the manual, and she's part of the LAPACK family. π
πΈ NAME πΈ
PZPTTRF β computes a Cholesky factorization of an N-by-N complex tridiagonal symmetric positive definite distributed matrix A(1:N, JA:JA+N-1). no cap, that's the whole job description. π
π SYNOPSIS π
SUBROUTINE PZPTTRF( N, D, E, JA, DESCA, AF, LAF, WORK, LWORK, INFO )
INTEGER INFO, JA, LAF, LWORK, N
INTEGER DESCA( * )
COMPLEX*16 AF( * ), E( * ), WORK( * )
DOUBLE PRECISION D( * )
π PURPOSE π
PZPTTRF computes a Cholesky factorization of an N-by-N complex tridiagonal symmetric positive definite distributed matrix A(1:N, JA:JA+N-1). β¨
and here's the tea, bestie: reordering is used to increase parallelism in the factorization. which means β and this is important, don't skip this β the factors it produces are DIFFERENT from the ones you'd get out of equivalent sequential codes. like, actually different. π
so these factors cannot be used directly by users. i know. tragic. π BUT β they can be used in subsequent calls to PZPTTRS to solve linear systems. so she's not useless, she's just β¨specializedβ¨.
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. the permutation matrix is doing the reordering thing i mentioned β she's the main character of this whole operation honestly. π
π
that's the whole vibe!! π¦ this was LAPACK routine, version 1.5, dated 12 May 1997 β yes she's an elder icon and yes she still eats. π«Άπβ¨
π¦ 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