There are two prototypes of hsein
available, please see below.
hsein( const Side side, const char eigsrc, const char initv, VectorSELECT& select, const MatrixH& h, VectorWR& wr, const VectorWI& wi, MatrixVL& vl, MatrixVR& vr, const int_t mm, int_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr );
hsein( const Side side, const char eigsrc, const char initv, const VectorSELECT& select, const MatrixH& h, VectorW& w, MatrixVL& vl, MatrixVR& vr, const int_t mm, int_t& m, VectorIFAILL& ifaill, VectorIFAILR& ifailr );
hsein
(short for $FRIENDLY_NAME)
provides a C++ interface to LAPACK routines SHSEIN, DHSEIN, CHSEIN, and
ZHSEIN. hsein
uses inverse
iteration to find specified right and/or left eigenvectors of a complex
upper Hessenberg matrix H.
The right eigenvector x and the left eigenvector y of the matrix H corresponding to an eigenvalue w are defined by:
H * x = w * x, y*h * H = w * y*h
where y**h denotes the conjugate transpose of the vector y.
The selection of the LAPACK routine is done during compile-time, and
is determined by the type of values contained in type VectorSELECT
.
The type of values is obtained through the value_type
meta-function typename value_type<VectorSELECT>::type
. The dispatching table below illustrates
to which specific routine the code path will be generated.
Table 1.227. Dispatching of hsein
Value type of VectorSELECT |
LAPACK routine |
---|---|
|
SHSEIN |
|
DHSEIN |
|
CHSEIN |
|
ZHSEIN |
Defined in header boost/numeric/bindings/lapack/computational/hsein.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/hsein.hpp> using namespace boost::numeric::bindings; lapack::hsein( x, y, z );
this will output
[5] 0 1 2 3 4 5