TESTING/LIN/ctrt01.f(3)

πŸ“¦
version 3.12.1 Β· 2 versions
, in arch rolling

✨ TESTING/LIN/ctrt01.f β€” CTRT01 ✨

Okay bestie, welcome to the TESTING/LIN/ctrt01.f page from the Library Functions Manual β€” it's giving section 3 energy, and we're gonna get through every single detail together. πŸ’…πŸ¦‹


🌸 NAME 🌸

TESTING/LIN/ctrt01.f β€” that's the file on the page, and that's the name, periodt. πŸ’–


πŸ¦‹ SYNOPSIS πŸ¦‹

🌟 Functions/Subroutines 🌟

  • subroutine ctrt01 (uplo, diag, n, a, lda, ainv, ldainv, rcond, rwork, resid) β€” CTRT01
       subroutine ctrt01 (uplo, diag, n, a, lda, ainv, ldainv, rcond, rwork,
           resid)
           CTRT01

πŸ’– Function/Subroutine Documentation πŸ’–

   subroutine ctrt01 (character uplo, character diag, integer n, complex,
       dimension( lda, * ) a, integer lda, complex, dimension( ldainv, * )
       ainv, integer ldainv, real rcond, real, dimension( * ) rwork, real
       resid)
       CTRT01

πŸŽ€ Purpose πŸŽ€

           !>
           !> CTRT01 computes the residual for a triangular matrix A times its
           !> inverse:
           !>    RESID = norm( A*AINV - I ) / ( N * norm(A) * norm(AINV) * EPS ),
           !> where EPS is the machine epsilon.
           !>

So basically it's computing the residual for a triangular matrix A times its inverse, with that exact formula. No cap, that's the whole vibe. ✨

🌈 Parameters 🌈

πŸ’œ UPLO

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

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

πŸ’œ DIAG

DIAG is CHARACTER*1. It specifies whether or not the matrix A is unit triangular:

  • = 'N': Non-unit triangular
  • = 'U': Unit triangular

πŸ’œ N

N is INTEGER. It's the order of the matrix A, and N >= 0.

πŸ’œ A

A is COMPLEX array, dimension (LDA,N). It's the triangular matrix A.

If UPLO = 'U', the leading n by n upper triangular part of the array A contains the upper triangular matrix, and the strictly lower triangular part of A is not referenced.

If UPLO = 'L', the leading n by n lower triangular part of the array A contains the lower triangular matrix, and the strictly upper triangular part of A is not referenced.

If DIAG = 'U', the diagonal elements of A are also not referenced and are assumed to be 1. 🫢

πŸ’œ LDA

LDA is INTEGER. It's the leading dimension of the array A, and LDA >= max(1,N).

πŸ’œ AINV

AINV is COMPLEX array, dimension (LDAINV,N).

On entry, it's the (triangular) inverse of the matrix A, in the same storage format as A.

⚠️ On exit, the contents of AINV are destroyed. So yeah, she's not coming back the same, bestie. πŸ’€

πŸ’œ LDAINV

LDAINV is INTEGER. It's the leading dimension of the array AINV, and LDAINV >= max(1,N).

πŸ’œ RCOND

RCOND is REAL. It's the reciprocal condition number of A, computed as 1/(norm(A) * norm(AINV)).

πŸ’œ RWORK

RWORK is REAL array, dimension (N).

πŸ’œ RESID

RESID is REAL, and it's exactly:

norm(A*AINV - I) / ( N * norm(A) * norm(AINV) * EPS )

πŸ‘‘ Author πŸ‘‘

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

Definition at line 123 of file ctrt01.f.


🌈 Author 🌈

Generated automatically by Doxygen for LAPACK from the source code.


And that's the whole page, bestie! πŸ’– The footer energy is LAPACK Version 3.12.0 on TESTING/LIN/ctrt01.f(3) β€” no date is listed in the footer, so don't come for me about a calendar date, periodt. 🫢✨

πŸ“¦ where this page comes from