aboutsummaryrefslogtreecommitdiffhomepage
path: root/unsupported/doc/examples/MatrixFunction.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'unsupported/doc/examples/MatrixFunction.cpp')
-rw-r--r--unsupported/doc/examples/MatrixFunction.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/unsupported/doc/examples/MatrixFunction.cpp b/unsupported/doc/examples/MatrixFunction.cpp
new file mode 100644
index 000000000..c11cb821b
--- /dev/null
+++ b/unsupported/doc/examples/MatrixFunction.cpp
@@ -0,0 +1,23 @@
+#include <unsupported/Eigen/MatrixFunctions>
+
+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";
+
+ MatrixXd B;
+ ei_matrix_function(A, expfn, &B);
+ std::cout << "The matrix exponential of A is:\n" << B << "\n\n";
+}