SCHKRQ(3)
π SCHKRQ(3) β the girlies' guide to testing them RQ routines β¨
okay so bestie, you know SCHKRQ(3) from the LAPACK library? yeah, that one. it's the whole vibe check for a few of our fave factorization routines, and i'm here to walk you through it. no cap, this is a whole function/subroutine documentation situation. let's get into it. π
πΈ SYNOPSIS
like, here's the whole squad of arguments, fr fr:
subroutine SCHKRQ (dotype, nm, mval, nn, nval, nnb, nbval, nxval, nrhs,
thresh, tsterr, nmax, a, af, aq, ar, ac, b, x, xact, tau, work,
rwork, iwork, nout)
π₯ Function/Subroutine Documentation
so the subroutine is literally this:
subroutine SCHKRQ (logical, dimension( * ) dotype, integer nm, integer,
dimension( * ) mval, integer nn, integer, dimension( * ) nval, integer
nnb, integer, dimension( * ) nbval, integer, dimension( * ) nxval,
integer nrhs, real thresh, logical tsterr, integer nmax, real,
dimension( * ) a, real, dimension( * ) af, real, dimension( * ) aq,
real, dimension( * ) ar, real, dimension( * ) ac, real, dimension( * )
b, real, dimension( * ) x, real, dimension( * ) xact, real, dimension( *
) tau, real, dimension( * ) work, real, dimension( * ) rwork, integer,
dimension( * ) iwork, integer nout)
SCHKRQ
β¨ PURPOSE β¨
the whole point, the main character energy of this subroutine: it tests SGERQF, SORGRQ and SORMRQ. periodt. it's the quality control bestie for those three. π§
π¦ PARAMETERS π¦
okay, buckle up, we got a LOT of them. but every single one is important, i promise. π«Ά
DOTYPEβ this is aLOGICALarray, dimension(NTYPES). it's the matrix types to be used for testing. matrices of type j (for1 <= j <= NTYPES) are used for testing ifDOTYPE(j) = .TRUE.; ifDOTYPE(j) = .FALSE., then type j is not used. simple as that. πNMβ isINTEGER. it's the number of values ofMcontained in the vectorMVAL. lowkey just a count. β¨MVALβ isINTEGERarray, dimension(NM). these are the values of the matrix row dimensionM. iconic. πNNβ isINTEGER. the number of values ofNcontained in the vectorNVAL. another count, we love to see it. πNVALβ isINTEGERarray, dimension(NN). the values of the matrix column dimensionN. slay. πΈNNBβ isINTEGER. the number of values ofNBandNXcontained in the vectorsNBVALandNXVAL. the blocking parameters are used in pairs(NB,NX). so they're like a duo, a package deal, iykyk. πNBVALβ isINTEGERarray, dimension(NNB). the values of the blocksizeNB. giving us the block energy. π₯NXVALβ isINTEGERarray, dimension(NNB). the values of the crossover pointNX. the other half of the pair. π¦NRHSβ isINTEGER. the number of right hand side vectors to be generated for each linear system. so many right hand sides, so little time. πTHRESHβ isREAL. the threshold value for the test ratios. a result is included in the output file ifRESULT >= THRESH. to have every test ratio printed, useTHRESH = 0. literally, if you want all the tea, set it to zero. πTSTERRβ isLOGICAL. flag that indicates whether error exits are to be tested. like, do we test the messy exits? yes or no. πNMAXβ isINTEGER. the maximum value permitted forMorN, used in dimensioning the work arrays. it's the big boss number for sizing everything. πͺAβ isREALarray, dimension(NMAX*NMAX). one of our main character arrays. β¨AFβ isREALarray, dimension(NMAX*NMAX). another one. πAQβ isREALarray, dimension(NMAX*NMAX). and another. πARβ isREALarray, dimension(NMAX*NMAX). keep 'em coming. πΈACβ isREALarray, dimension(NMAX*NMAX). last of the bigNMAX*NMAXones. π¦Bβ isREALarray, dimension(NMAX*NRHS). the B array, right hand side kinda vibes. πXβ isREALarray, dimension(NMAX*NRHS). the X array, solution energy. π₯XACTβ isREALarray, dimension(NMAX*NRHS). the exact solution, for comparison. we love a reference. πTAUβ isREALarray, dimension(NMAX). the TAU array, iconic. πWORKβ isREALarray, dimension(NMAX*NMAX). workspace, getting things done. βRWORKβ isREALarray, dimension(NMAX). more workspace, but real this time. πIWORKβ isINTEGERarray, dimension(NMAX). integer workspace, for the counts and indexes. π§NOUTβ isINTEGER. the unit number for output. where all the results go to be seen. π
π AUTHOR π
the authors, the masterminds behind this whole thing:
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
also, definition at line 198 of file schkrq.f. so you know exactly where to find it in the source. π―
π SIGN-OFF π
and that's the whole page, bestie! it was generated automatically by Doxygen for LAPACK from the source code, and it's for LAPACK Version 3.12.0. this specific file is at /home/abui...IN/schkrq.f(3). now go out there and test those RQ routines with confidence. mwah! πβ¨
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms