I'm glad to announce that MRPT has just finished moving from our "home-made" Linear Algebra classes to the great Eigen library. The changes are now only in SVN HEAD, and the feature will appear in the next stable release 0.9.3 (see changelog).
There is a tutorial explaining all MRPT vector and matrix classes and their relationship to Eigen's. I've taken care of maintaining backward compatibility with all previous existing code of MRPT users, but there are a few isolated features that have been unavoidably lost in the port (like iterators for matrices). In any case this fundamental change in MRPT is really worthy for two good reasons:
1) Efficiency: Eigen extensively uses vectorization (SSE2,SSE3). I did some tests and in the worst case, Eigen performs just like our old code, but in general, there are large improvements (e.g. 2d-slam with EKF is 7 to 10 times faster!).
2) Compatibility with other software: IMHO, Eigen is probably the best Linear Algebra C++ library out there, and it's already being used by Google, Willow Garage, and an increasingly large community. By porting MRPT to Eigen, we gain immediate ease of use to all those users who already know Eigen APIs. Also, it's my tiny contribution to the spread of Eigen. I think those guys deserve it for the good work.
This tutorial explains some typical problems found with Eigen programs, but if anyone finds more issues or any regression, please, feel free to report it in the forums.