>>818
イテレータで…という質問の答えにはならないけどこうかな

// boost-ublas
auto u = triangular_adaptor<decltype(v), upper>(v);
auto su = triangular_adaptor<decltype(trans(v)), strict_upper>(trans(v));
auto value = u + su;

確かにイテレータは行列や四元数なんかのアクセスには適当じゃない
行列は行列で別の抽象化の技法があるのでそっちを使えばいいんじゃないかな