5 Matrix3d m = Matrix3d::Zero();
6 m.part<Eigen::StrictlyUpperTriangular>().setOnes();
7 cout << "Here is the matrix m:" << endl << m << endl;
8 cout << "And let us now compute m*m.adjoint() in a very optimized way" << endl
9 << "taking advantage of the symmetry." << endl;
11 n.part<Eigen::SelfAdjoint>() = (m*m.adjoint()).lazy();
12 cout << "The result is:" << endl << n << endl;