#include <unsupported/Eigen/MatrixFunctions>
#include <iostream>

using namespace Eigen;

std::complex<double> expfn(std::complex<double> x, int) { return std::exp(x); }

int main() {
  const double pi = std::acos(-1.0);

  MatrixXd A(3, 3);
  A << 0, -pi / 4, 0, pi / 4, 0, 0, 0, 0, 0;

  std::cout << "The matrix A is:\n" << A << "\n\n";
  std::cout << "The matrix exponential of A is:\n" << A.matrixFunction(expfn) << "\n\n";
}
