There is one prototype of hbgvx
available, please see below.
hbgvx( const char jobz, const char range, MatrixAB& ab, MatrixBB& bb, MatrixQ& q, const Scalar >, const Scalar >, const int_t il, const int_t iu, const Scalar >, int_t& m, VectorW& w, MatrixZ& z, VectorIFAIL& ifail );
hbgvx
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SSBGVX, DSBGVX, CHBGVX, and
ZHBGVX. hbgvx
computes
all the eigenvalues, and optionally, the eigenvectors of a complex generalized
Hermitian-definite banded eigenproblem, of the form A*x=(lambda)*B*x.
Here A and B are assumed to be Hermitian and banded, and B is also positive
definite. Eigenvalues and eigenvectors can be selected by specifying
either all eigenvalues, a range of values or a range of indices for the
desired eigenvalues.
The selection of the LAPACK routine is done during compile-time, and
is determined by the type of values contained in type MatrixAB
.
The type of values is obtained through the value_type
meta-function typename value_type<MatrixAB>::type
. The dispatching table below illustrates
to which specific routine the code path will be generated.
Table 1.108. Dispatching of hbgvx
Value type of MatrixAB |
LAPACK routine |
---|---|
|
SSBGVX |
|
DSBGVX |
|
CHBGVX |
|
ZHBGVX |
Defined in header boost/numeric/bindings/lapack/driver/hbgvx.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/hbgvx.hpp> using namespace boost::numeric::bindings; lapack::hbgvx( x, y, z );
this will output
[5] 0 1 2 3 4 5