There is one prototype of ggbal
available, please see below.
ggbal( const char job, MatrixA& a, MatrixB& b, int_t& ilo, int_t& ihi, VectorLSCALE& lscale, VectorRSCALE& rscale );
ggbal
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SGGBAL, DGGBAL, CGGBAL, and
ZGGBAL. ggbal
balances
a pair of general complex matrices (A,B). This involves, first, permuting
A and B by similarity transformations to isolate eigenvalues in the first
1 to ILO$-$1 and last IHI+1 to N elements on the diagonal; and second,
applying a diagonal similarity transformation to rows and columns ILO
to IHI to make the rows and columns as close in norm as possible. Both
steps are optional.
Balancing may reduce the 1-norm of the matrices, and improve the accuracy of the computed eigenvalues and/or eigenvectors in the generalized eigenvalue problem A*x = lambda*B*x.
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.331. Dispatching of ggbal
Value type of MatrixA |
LAPACK routine |
---|---|
|
SGGBAL |
|
DGGBAL |
|
CGGBAL |
|
ZGGBAL |
Defined in header boost/numeric/bindings/lapack/computational/ggbal.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/ggbal.hpp> using namespace boost::numeric::bindings; lapack::ggbal( x, y, z );
this will output
[5] 0 1 2 3 4 5