1 #include <unsupported/Eigen/MatrixFunctions>
2 #include <iostream>
3
4 using namespace Eigen;
5
expfn(std::complex<double> x,int)6 std::complex<double> expfn(std::complex<double> x, int)
7 {
8 return std::exp(x);
9 }
10
main()11 int main()
12 {
13 const double pi = std::acos(-1.0);
14
15 MatrixXd A(3,3);
16 A << 0, -pi/4, 0,
17 pi/4, 0, 0,
18 0, 0, 0;
19
20 std::cout << "The matrix A is:\n" << A << "\n\n";
21 std::cout << "The matrix exponential of A is:\n"
22 << A.matrixFunction(expfn) << "\n\n";
23 }
24