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 MatrixXf A = MatrixXf::Random(3,3); 9*bf2c3715SXin Li std::cout << "A = \n" << A << "\n\n"; 10*bf2c3715SXin Li 11*bf2c3715SXin Li MatrixXf sinhA = A.sinh(); 12*bf2c3715SXin Li std::cout << "sinh(A) = \n" << sinhA << "\n\n"; 13*bf2c3715SXin Li 14*bf2c3715SXin Li MatrixXf coshA = A.cosh(); 15*bf2c3715SXin Li std::cout << "cosh(A) = \n" << coshA << "\n\n"; 16*bf2c3715SXin Li 17*bf2c3715SXin Li // The matrix functions satisfy cosh^2(A) - sinh^2(A) = I, 18*bf2c3715SXin Li // like the scalar functions. 19*bf2c3715SXin Li std::cout << "cosh^2(A) - sinh^2(A) = \n" << coshA*coshA - sinhA*sinhA << "\n\n"; 20*bf2c3715SXin Li } 21