Re: [eigen] problem computing kernel in eigen

[ Thread Index | Date Index | More Archives ]


it seems you are using a quite old version of Eigen. In the 3.1
branch, adding internal:: sounds reasonable. I'll apply such a change.

In the devel branch, this should work just fine. Since we are going to
release soon 3.2-beta1, it would be very helpful for us if you could
give it a try. This is also a good way to make sure the next versions
will work fine for you! You just have to download the latest version



On Tue, Feb 26, 2013 at 4:09 PM, Vissarion Fisikopoulos
<vfisikop@xxxxxxxxx> wrote:
>  Hello,
> I have a problem with a simple call to the kernel (function call
> fullPivLu().kernel() ) of an Eigen::Matrix<NT,Eigen::Dynamic,Eigen::Dynamic>
> . This works for many different instantiations of NT, like mpq_class. The
> problem is when I try to use a rational number type from the CGAL library,
> CGAL::Gmpq. I get the following error from the compiler:
> /usr/include/eigen3/Eigen/src/LU/FullPivLU.h:595:7: error: call of
> overloaded ‘abs(const Scalar&)’ is ambiguous
> The  error is fixed by replacing
>  if(abs(dec().matrixLU().coeff(i,i)) > premultiplied_threshold)
> with
>  if(internal::abs(dec().matrixLU().coeff(i,i)) > premultiplied_threshold)
> in line 595 of /usr/include/eigen3/Eigen/src/LU/FullPivLU.h
> Do you think this is a bug?
> Best,
> Vissarion Fisikopoulos.

Mail converted by MHonArc 2.6.19+