1*bf2c3715SXin Li #include <unsupported/Eigen/MatrixFunctions> 2*bf2c3715SXin Li #include <iostream> 3*bf2c3715SXin Li 4*bf2c3715SXin Li using namespace Eigen; 5*bf2c3715SXin Li main()6*bf2c3715SXin Liint main() 7*bf2c3715SXin Li { 8*bf2c3715SXin Li MatrixXd A = MatrixXd::Random(3,3); 9*bf2c3715SXin Li std::cout << "A = \n" << A << "\n\n"; 10*bf2c3715SXin Li 11*bf2c3715SXin Li MatrixXd sinA = A.sin(); 12*bf2c3715SXin Li std::cout << "sin(A) = \n" << sinA << "\n\n"; 13*bf2c3715SXin Li 14*bf2c3715SXin Li MatrixXd cosA = A.cos(); 15*bf2c3715SXin Li std::cout << "cos(A) = \n" << cosA << "\n\n"; 16*bf2c3715SXin Li 17*bf2c3715SXin Li // The matrix functions satisfy sin^2(A) + cos^2(A) = I, 18*bf2c3715SXin Li // like the scalar functions. 19*bf2c3715SXin Li std::cout << "sin^2(A) + cos^2(A) = \n" << sinA*sinA + cosA*cosA << "\n\n"; 20*bf2c3715SXin Li } 21