Generalized RQ factorization¶
The generalized RQ factorization of a pair of matrices \((A,B)\) is analogous to an RQ factorization of \(A B^{-1}\) but does not require that \(B\) is square or invertible: unitary matrices \(Q\) and \(Z\), and (right) upper-triangular matrices \(R\) and \(T\), are computed such that
and
Thus, is \(B\) was square and invertible, then the RQ factorization of \(A B^{-1}\) would be given by \((R T^{-1}) Z^H\).
C++ API¶
-
void
GRQ
(Matrix<F> &A, Matrix<F> &tA, Matrix<Base<F>> &dA, Matrix<F> &B, Matrix<F> &tB, Matrix<Base<F>> &dB)¶
-
void
GRQ
(AbstractDistMatrix<F> &A, AbstractDistMatrix<F> &tA, AbstractDistMatrix<Base<F>> &dA, AbstractDistMatrix<F> &B, AbstractDistMatrix<F> &tB, AbstractDistMatrix<Base<F>> &dB)¶ Overwrite A with both R and the (scaled) Householder vectors which, along with the scalings tA and sign changes dA, define Q. Likewise, B is overwritten with both T and the (scaled) Householder vectors which define Z.
-
void
grq
::
ExplicitTriang
(AbstractDistMatrix<F> &A, AbstractDistMatrix<F> &B)¶ Overwrite A with R and B with T.
C API¶
-
ElError
ElGRQ_s
(ElMatrix_s A, ElMatrix_s tA, ElMatrix_s dA, ElMatrix_s B, ElMatrix_s tB, ElMatrix_s dB)¶
-
ElError
ElGRQ_d
(ElMatrix_d A, ElMatrix_d tA, ElMatrix_d dA, ElMatrix_d B, ElMatrix_d tB, ElMatrix_d dB)¶
-
ElError
ElGRQ_c
(ElMatrix_c A, ElMatrix_c tA, ElMatrix_s dA, ElMatrix_c B, ElMatrix_c tB, ElMatrix_s dB)¶
-
ElError
ElGRQ_z
(ElMatrix_z A, ElMatrix_z tA, ElMatrix_d dA, ElMatrix_z B, ElMatrix_z tB, ElMatrix_d dB)¶
-
ElError
ElGRQDist_s
(ElDistMatrix_s A, ElDistMatrix_s tA, ElDistMatrix_s dA, ElDistMatrix_s B, ElDistMatrix_s tB, ElDistMatrix_s dB)¶
-
ElError
ElGRQDist_d
(ElDistMatrix_d A, ElDistMatrix_d tA, ElDistMatrix_d dA, ElDistMatrix_d B, ElDistMatrix_d tB, ElDistMatrix_d dB)¶
-
ElError
ElGRQDist_c
(ElDistMatrix_c A, ElDistMatrix_c tA, ElDistMatrix_s dA, ElDistMatrix_c B, ElDistMatrix_c tB, ElDistMatrix_s dB)¶
-
ElError
ElGRQDist_z
(ElDistMatrix_z A, ElDistMatrix_z tA, ElDistMatrix_d dA, ElDistMatrix_z B, ElDistMatrix_z tB, ElDistMatrix_d dB)¶ Overwrite A with both R and the (scaled) Householder vectors which, along with the scalings tA and sign changes dA, define Q. Likewise, B is overwritten with both T and the (scaled) Householder vectors which define Z.