We should be moving from operator()
and operator[]
(just vectors) to .coeff
. It doesn’t check ranges, but we do that everywhere ourselves, so the checks are (largely? totally?)
Cool! Presumably it’s not the same code with Matrix
and MatrixBase
if you pass it an expression template; I’d have thought Matrix
would .eval()
and the base not.
It can be problematic as they note in the Eigen doc if you wind up saving something unevaluated rather than copied as it can imply a lot more eval downstream.
add
can be a bit more general in that T1
or T2
can be scalars.