Re: [eigen] Eigen2 to Eigen3 Migration Path

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


2011/1/19 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
> 2011/1/14 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
>> Great to see a solution on the horizon. Now we need to implement it. I
>> filed a bug:
>>
>> http://eigen.tuxfamily.org/bz/show_bug.cgi?id=153
>>
>> I marked it as blocking 3.0, as it doesn't really need to be tested in
>> a beta. Could even not block 3.0 actually, but I have a feeling that
>> that can be implemented quickly.
>
> I have started implementing this. EIGEN2_SUPPORT is already expanded
> as of today, the Eigen2 test suite has been imported into Eigen3, and
> can be enabled with the CMake option EIGEN_TEST_EIGEN2, after which
> you can do:
>  make buildtests_eigen2
> and
>  make check_eigen2
> (I'm going to make standard targets depend on them too, when
> EIGEN_TEST_EIGEN2 is defined).
>
> Currently, only some core functionality tests compile.

Lots more tests compile and fully succeed now; more work needed.

I can already say what's going to be the most tricky issue in porting
apps from eigen2 to eigen3:

in eigen2, dot product was conjugating the right-hand side (linear in
the first variable) while in eigen3 it's conjugating the left-hand
side (linear in the second variable).

This is going to play tricks on users who did dot products over complex numbers.

in Eigen2 support mode, since the goal is full API compatibility with
Eigen2, I'm switching this to eigen2 behavior.

Of course we need to document this on the Eigen2To3 porting doc page,
but I'm afraid this might not be enough.

Should I put a static assert on dot products with complex numbers in
EIGEN2_SUPPORT mode, forcing people to #define
I_HAVE_READ_DOCS_ON_THIS_ISSUE or some such ?

Benoit

>
> Benoit
>



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/