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