Eigen 3.3 Support

Issue #270 resolved
Petri Tanskanen created an issue

It seems that the new expression handling in Eigen 3.3 breaks SymmetricBlockMatrixExpr. This would not be a too big issue for now but it seems that they decided to use Eigen 3.3 in Ubuntu 16.04 LTS. Are there plans to look into that?

Comments (11)

  1. Chris Beall

    As far as I know nobody has looked into Eigen 3.3 yet. Does it look like the errors are simple to fix? We'd certainly welcome a PR if you want to give it a try. We need to continue to support Eigen 3.2 for a while, so any API changes would have to be wrapped in #ifdef blocks.

  2. Petri Tanskanen reporter

    Thanks for the feedback. I looked into the issue but I have way not enough practice in Eigen extensions to quickly fix that one, it might be a no-brainer for someone who has experience, I can't really tell. I will work with 3.2 for now.

  3. Frank Dellaert

    I'm very motivated to fix it. I'm not an expert in extending Eigen, either. If you know of someone on your side that is, pls let me know.

  4. Frank Dellaert

    Working on this at Skydio. Eigen 3.3 has some nasty behavior, BTW. A = B + A*C seems to do the incorrect thing now, because Eigen no longer detects aliasing on A.

  5. Frank Dellaert

    Hmmm, I don't remember whether a fix was pushed from Skydio before I left (about 4 months after comments above). Unfortunately at this point in time I have no spare cycles to look into it myself. I think my comment on aliasing might be a clue, might have to use .noalias(). @kyelok feel free to create a PR :-) :-)

  6. Chris Beall

    Someone has tried the latest Eigen (3.3.4) at Fyusion, and from what I understand it worked. The issues noted above might have been resolved, but I haven't had a chance to try it myself. I might be able to try this coming weekend.

  7. Kyel Ok

    Thanks Frank and Chris :D I don't think the issue's fixed for Eigen 3.2.92 (3.3-beta1) shipped with 16.04 LTS since SymmetricBlockMatrixExpr is breaking on my 16.04 machine. Anyway, I'll poke around a little more.

  8. Log in to comment