Registered Member
|
Thanks for you convenient library. I just found an amazing thing: Eigen performs very well in multiplying complex matrices.
This is my *.cpp
And it output:
I think it indicates that Eigen's complex multiplication takes ONLY 3 REAL MULTS!!! (instead of 4) However, when it comes to matrix chain multiplication, it seems that Eigen just multiplies from left to right. Doesn't a MatrixBase stores a "matrix expression?" Is it possible to optimize matrix chain multiplication without any function other than "binary operator* ?" |
Moderator
|
Note that Eigen vectorizes operations on complexes, including matrix products involving real and complex objects.
Regarding A*B*C we currently follow the standard C++ rules to order the operations, so you can still use parentheses if you know in advance what's the best order. In the near future we will be able to perform such optimization automatically. |
Registered Member
|
Thanks for you reply.
I'm going to settle for my ugly function expression for now. (Methods provided by Eigen is far more elegant!!!) |
Registered users: bartoloni, Bing [Bot], Google [Bot], Yahoo [Bot]