TESTING/LIN/cchksy.f(3)
π TESTING/LIN/cchksy.f β like, the whole entire vibe
okay so bestie, buckle up π this is the manual page for TESTING/LIN/cchksy.f, from the LAPACK library functions manual. it's a Fortran file, it tests things, and it's genuinely iconic. let's get into it β¨
β¨ SYNOPSIS β Functions/Subroutines β¨
there's exactly one function here, and she's the main character π:
subroutine cchksy (dotype, nn, nval, nnb, nbval, nns, nsval, thresh,
tsterr, nmax, a, afac, ainv, b, x, xact, work, rwork, iwork, nout)
and yeah β CCHKSY. that's her name. that's the whole listing. π
π¦ Function/Subroutine Documentation π¦
the full signature, in all her glory πΈ
subroutine cchksy (logical, dimension( * ) dotype, integer nn, integer,
dimension( * ) nval, integer nnb, integer, dimension( * ) nbval, integer
nns, integer, dimension( * ) nsval, real thresh, logical tsterr, integer
nmax, complex, dimension( * ) a, complex, dimension( * ) afac, complex,
dimension( * ) ainv, complex, dimension( * ) b, complex, dimension( * )
x, complex, dimension( * ) xact, complex, dimension( * ) work, real,
dimension( * ) rwork, integer, dimension( * ) iwork, integer nout)
CCHKSY
π― Purpose
CCHKSYtestsCSYTRF,-TRI2,-TRS,-TRS2,-RFS, and-CON.
that's it. that's the mission statement. she runs the whole gauntlet on those routines, no cap π₯
π Parameters π
lowkey the longest part but literally every single one matters, so here we go, one by one, no skipping π«Ά
DOTYPEβDOTYPEisLOGICALarray, dimension(NTYPES). it's the matrix types to be used for testing, fr fr. matrices of type j (for1 <= j <= NTYPES) get used for testing ifDOTYPE(j) = .TRUE.; ifDOTYPE(j) = .FALSE., then type j is just not used. that's the whole system πNNβNNisINTEGER. it's the number of values ofNcontained in the vectorNVAL. so like, how many sizes we're testing β¨NVALβNVALisINTEGERarray, dimension(NN). these are the values of the matrix dimensionN. the actual sizes, bestie πNNBβNNBisINTEGER. the number of values ofNBcontained in the vectorNBVAL.NBVALβNBVALisINTEGERarray, dimension(NNB). the values of the blocksizeNB. block sizes matter, iykyk π§±NNSβNNSisINTEGER. the number of values ofNRHScontained in the vectorNSVAL.NSVALβNSVALisINTEGERarray, dimension(NNS). the values of the number of right hand sidesNRHS. it's giving "how many RHS are we throwing at this" energy πTHRESHβTHRESHisREAL. the threshold value for the test ratios. here's the tea: a result is included in the output file ifRESULT >= THRESH. and if you want every single test ratio printed? useTHRESH = 0. periodt πTSTERRβTSTERRisLOGICAL. flag that indicates whether error exits are to be tested. yeet the errors at it or don't, your call π©NMAXβNMAXisINTEGER. the maximum value permitted forN, used in dimensioning the work arrays. she's the ceiling, the limit, the whole vibe check for array sizing πAβAisCOMPLEXarray, dimension(NMAX*NMAX). the matrix herself πAFACβAFACisCOMPLEXarray, dimension(NMAX*NMAX). the factored version, obsessed π₯AINVβAINVisCOMPLEXarray, dimension(NMAX*NMAX). the inverse. iconic behavior πBβBisCOMPLEXarray, dimension(NMAX*NSMAX), whereNSMAXis the largest entry inNSVAL. right hand side bestie π«ΆXβXisCOMPLEXarray, dimension(NMAX*NSMAX). the solution zone β¨XACTβXACTisCOMPLEXarray, dimension(NMAX*NSMAX). the exact solution, for comparison purposes, natch πWORKβWORKisCOMPLEXarray, dimension(NMAX*max(2,NSMAX)). scratch space, she works hard so the others don't have to π§RWORKβRWORKisREALarray, dimension(NMAX+2*NSMAX). real-valued scratch space, keeping it grounded πΈIWORKβIWORKisINTEGERarray, dimension(NMAX). integer scratch space, tiny but mighty πNOUTβNOUTisINTEGER. the unit number for output. that's where all the results go, so like, the printer but make it Fortran π¨οΈ
π Author π
the legends behind this:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
absolute icons, every one of them π«‘π
quick note bestie: Definition at line 168 of file cchksy.f. β that's where she lives in the source. π
π Author (yes, again, but different) π
this bit says: generated automatically by Doxygen for LAPACK from the source code. so like, nobody hand-wrote this page, the machine did it. still slay though π€β¨
π cute lil sign-off π
and that's the whole page! this beauty is LAPACK, Version 3.12.0, and she's chillin' at TESTING/LIN/cchksy.f(3). go forth and test those complex symmetric matrices, bestie β you got this π¦ππ
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms