There is one prototype of ggrqf
available, please see below.
ggrqf( MatrixA& a, VectorTAUA& taua, MatrixB& b, VectorTAUB& taub );
ggrqf
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SGGRQF, DGGRQF, CGGRQF, and
ZGGRQF. ggrqf
computes
a generalized RQ factorization of an M-by-N matrix A and a P-by-N matrix
B:
A = R*Q, B = Z*T*Q,
where Q is an N-by-N unitary matrix, Z is a P-by-P unitary matrix, and R and T assume one of the forms:
if M <= N, R = ( 0 R12 ) M, or if M > N, R = ( R11 ) M-N, N-M M ( R21 ) N N
where R12 or R21 is upper triangular, and
if P >= N, T = ( T11 ) N , or if P < N, T = ( T11 T12 ) P, ( 0 ) P-N P N-P N
where T11 is upper triangular.
In particular, if B is square and nonsingular, the GRQ factorization of A and B implicitly gives the RQ factorization of A*inv(B):
A*inv(B) = (R*inv(T))*Z'
where inv(B) denotes the inverse of the matrix B, and Z' denotes the conjugate transpose of the matrix Z.
The selection of the LAPACK routine is done during compile-time, and
is determined by the type of values contained in type MatrixA
.
The type of values is obtained through the value_type
meta-function typename value_type<MatrixA>::type
. The dispatching table below illustrates
to which specific routine the code path will be generated.
Table 1.191. Dispatching of ggrqf
Value type of MatrixA |
LAPACK routine |
---|---|
|
SGGRQF |
|
DGGRQF |
|
CGGRQF |
|
ZGGRQF |
Defined in header boost/numeric/bindings/lapack/computational/ggrqf.hpp
.
Parameters
The definition of term 1
The definition of term 2
The definition of term 3.
Definitions may contain paragraphs.
#include <boost/numeric/bindings/lapack/computational/ggrqf.hpp> using namespace boost::numeric::bindings; lapack::ggrqf( x, y, z );
this will output
[5] 0 1 2 3 4 5