There are two prototypes of ggev
available, please see below.
ggev( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b, VectorALPHAR& alphar, VectorALPHAI& alphai, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr );
ggev( const char jobvl, const char jobvr, MatrixA& a, MatrixB& b, VectorALPHA& alpha, VectorBETA& beta, MatrixVL& vl, MatrixVR& vr );
ggev
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SGGEV, DGGEV, CGGEV, and
ZGGEV. ggev
computes
for a pair of N-by-N complex nonsymmetric matrices (A,B), the generalized
eigenvalues, and optionally, the left and/or right generalized eigenvectors.
A generalized eigenvalue for a pair of matrices (A,B) is a scalar lambda or a ratio alpha/beta = lambda, such that A - lambda*B is singular. It is usually represented as the pair (alpha,beta), as there is a reasonable interpretation for beta=0, and even for both being zero.
The right generalized eigenvector v(j) corresponding to the generalized eigenvalue lambda(j) of (A,B) satisfies
A * v(j) = lambda(j) * B * v(j).
The left generalized eigenvector u(j) corresponding to the generalized eigenvalues lambda(j) of (A,B) satisfies
u(j)*H * A = lambda(j) * u(j)*H * B
where u(j)**H is the conjugate-transpose of u(j).
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.104. Dispatching of ggev
Value type of MatrixA |
LAPACK routine |
---|---|
|
SGGEV |
|
DGGEV |
|
CGGEV |
|
ZGGEV |
Defined in header boost/numeric/bindings/lapack/driver/ggev.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/driver/ggev.hpp> using namespace boost::numeric::bindings; lapack::ggev( x, y, z );
this will output
[5] 0 1 2 3 4 5