CPPT01(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

🌸 NAME 🌸

Okay so this is the page for CPPT01(3) from the Library Functions Manual, and the source file is literally:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/TESTING/LIN/cppt01.f

That's the whole NAME section, bestie. Short and iconic πŸ’….


✨ SYNOPSIS ✨

Functions/Subroutines β€” the lineup is giving main character energy:

   Functions/Subroutines
       subroutine CPPT01 (uplo, n, a, afac, rwork, resid)
           CPPT01

And the full signature, no cap:

   subroutine CPPT01 (character uplo, integer n, complex, dimension( * ) a,
       complex, dimension( * ) afac, real, dimension( * ) rwork, real resid)
       CPPT01

🫢 Function/Subroutine Documentation 🫢

🎯 Purpose 🎯

Not me being obsessed with a residual routine, but here we are πŸ’–. The purpose is exactly this:

!>
!> CPPT01 reconstructs a Hermitian positive definite packed matrix A
!> from its L*L' or U'*U factorization and computes the residual
!>    norm( L*L' - A ) / ( N * norm(A) * EPS ) or
!>    norm( U'*U - A ) / ( N * norm(A) * EPS ),
!> where EPS is the machine epsilon, L' is the conjugate transpose of
!> L, and U' is the conjugate transpose of U.
!>

So yeah, it reconstructs, it computes residuals, it slays ✨. EPS is the machine epsilon, L' is the conjugate transpose of L, and U' is the conjugate transpose of U β€” fr fr.


🧚 Parameters 🧚

πŸ’… UPLO

UPLO is CHARACTER*1. It specifies whether the upper or lower triangular part of the Hermitian matrix A is stored:

  • = 'U': Upper triangular
  • = 'L': Lower triangular

πŸ’… N

N is INTEGER. It's the number of rows and columns of the matrix A. And yes, N >= 0. β€” that's the vibe check 🫢.

πŸ’… A

A is COMPLEX array, dimension (N*(N+1)/2). It's the original Hermitian matrix A, stored as a packed triangular matrix. Literally the blueprint πŸ’–.

πŸ’… AFAC

AFAC is COMPLEX array, dimension (N*(N+1)/2). On entry, it's the factor L or U from the L*L' or U'*U factorization of A, stored as a packed triangular matrix. Then it gets overwritten with the reconstructed matrix, and then with the difference L*L' - A (or U'*U - A). It's giving transformation arc πŸ”₯.

πŸ’… RWORK

RWORK is REAL array, dimension (N).

πŸ’… RESID

RESID is REAL.

  • If UPLO = 'L', it's norm(L*L' - A) / ( N * norm(A) * EPS )
  • If UPLO = 'U', it's norm(U'*U - A) / ( N * norm(A) * EPS )

That's the whole residual situation, periodt πŸ’….


πŸ‘‘ Author πŸ‘‘

The author squad is:

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

πŸ“ Definition at line 94 of file cppt01.f.


🌟 Author 🌟

This page was Generated automatically by Doxygen for LAPACK from the source code. Iconic behavior, honestly πŸŽ€.


And that's the tea, bestie πŸ«ΆπŸ’– β€” this footer says LAPACK Version 3.12.0 and /home/abui...IN/cppt01.f(3). Byeee βœ¨πŸ¦‹

πŸ“¦ where this page comes from