Boost logo

Ublas :

Subject: Re: [ublas] LAPACK using GEEV
From: Marco Guazzone (marco.guazzone_at_[hidden])
Date: 2010-07-05 15:27:06


On Mon, Jul 5, 2010 at 8:35 PM, Kraus Philipp
<philipp.kraus_at_[hidden]> wrote:
> Hi,
> thanks for the answers to my last posting, but I had a mistake. I don't need
> the eigenvalues of a symmetric real matrix, otherwise I need the values of a
> squared real matrix.
> I have found the DGEEV in the LAPACk and try to translate it to the Boost
> bindings with:
> T is set to double.
> ublas::matrix<T, ublas::column_major> l_matrix( size, size);
> // filling
> ublas::vector<T> l_eigval(l_matrix.size1());
>
>
>
> ublas::vector<T> x(l_matrix.size1());
> ublas::matrix<T, ublas::column_major> y(l_matrix.size1(),l_matrix.size1());
> ublas::matrix<T, ublas::column_major> z(l_matrix.size1(),l_matrix.size1());
>
>
>
> lapack::geev( 'U', 'L', l_matrix, l_eigval,  x,y,z,
> lapack::optimal_workspace() );
>

The values of the first and second arguments are wrong.
Only 'V' or 'N' are admissible values:

See: http://www.netlib.org/lapack/double/dgeev.f

Cheers,

-- Marco