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