CGETSQRHRT(3)

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

okay bestie, welcome to CGETSQRHRT(3) from the Library Functions Manual πŸ’…βœ¨ this one is a LAPACK QR situation and it's lowkey iconic.

🌸 NAME

the NAME is literally just this file path, no cap:

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/cgetsqrhrt.f


✨ SYNOPSIS

🧚 Functions/Subroutines

subroutine CGETSQRHRT (m, n, mb1, nb1, nb2, a, lda, t, ldt, work, lwork,
    info)

and the routine is CGETSQRHRT, obviously. πŸ’–


🌈 Function/Subroutine Documentation

subroutine CGETSQRHRT (integer m, integer n, integer mb1, integer nb1,
    integer nb2, complex, dimension( lda, * ) a, integer lda, complex,
    dimension( ldt, * ) t, integer ldt, complex, dimension( * ) work,
    integer lwork, integer info)

CGETSQRHRT β€” the full-length version. 🫢

πŸ’– Purpose:

CGETSQRHRT computes a NB2-sized column blocked QR-factorization of a complex M-by-N matrix A with M >= N, and the whole mood is:

A = Q * R.

Internally it uses a NB1-sized column blocked and MB1-sized row blocked TSQR-factorization, and it performs the reconstruction of the Householder vectors from the TSQR output. It also converts the R_tsqr factor from the TSQR-factorization output into the R factor that corresponds to the Householder QR-factorization:

A = Q_tsqr * R_tsqr = Q * R.

The output Q and R factors are stored in the same format as in CGEQRT (with Q in blocked compact WY-representation). See the documentation of CGEQRT for more details on the format. πŸ’–

πŸŽ€ Parameters

M

INTEGER. The number of rows of the matrix A. M >= 0.

N

INTEGER. The number of columns of the matrix A. M >= N >= 0.

MB1

INTEGER. The row block size to be used in the blocked TSQR. MB1 > N.

NB1

INTEGER. The column block size to be used in the blocked TSQR. N >= NB1 >= 1.

NB2

INTEGER. The block size to be used in the blocked QR that is output. NB2 >= 1.

A

COMPLEX*16 array, dimension (LDA,N).

On entry: an M-by-N matrix A.

On exit:

  • a) the elements on and above the diagonal of the array contain the N-by-N upper-triangular matrix R corresponding to the Householder QR;
  • b) the elements below the diagonal represent Q by the columns of blocked V (compact WY-representation).

LDA

INTEGER. The leading dimension of the array A. LDA >= max(1,M).

T

COMPLEX array, dimension (LDT,N)). The upper triangular block reflectors stored in compact form as a sequence of upper triangular blocks.

LDT

INTEGER. The leading dimension of the array T. LDT >= NB2.

WORK

(workspace) COMPLEX array, dimension (MAX(1,LWORK)). On exit, if INFO = 0, WORK(1) returns the optimal LWORK.

LWORK

INTEGER. The dimension of the array WORK.

LWORK >= MAX( LWT + LW1, MAX( LWT+N*N+LW2, LWT+N*N+N ) ),
where
   NUM_ALL_ROW_BLOCKS = CEIL((M-N)/(MB1-N)),
   NB1LOCAL = MIN(NB1,N).
   LWT = NUM_ALL_ROW_BLOCKS * N * NB1LOCAL,
   LW1 = NB1LOCAL * N,
   LW2 = NB1LOCAL * MAX( NB1LOCAL, ( N - NB1LOCAL ) ),

If LWORK = -1, then a workspace query is assumed. The routine only calculates the optimal size of the WORK array, returns this value as the first entry of the WORK array, and no error message related to LWORK is issued by XERBLA.

INFO

INTEGER.

  • = 0: successful exit
  • < 0: if INFO = -i, the i-th argument had an illegal value

πŸ’œ Author

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

πŸ¦‹ Contributors:

November 2020, Igor Kozachenko, Computer Science Division, University of California, Berkeley

πŸŽ€ Definition at line

Definition at line 177 of file cgetsqrhrt.f.


πŸ’œ Author

Generated automatically by Doxygen for LAPACK from the source code.


mwah πŸ’‹ final footer energy: LAPACK Version 3.12.0 and the footer path is /home/abui...getsqrhrt.f(3). The contributor date up in the page is November 2020. That's the whole page, bestie β€” periodt. 🫢

πŸ“¦ where this page comes from