1#include <Eigen/Core>
2#include <iostream>
3using namespace Eigen;
4using namespace std;
5
6// define function to be applied coefficient-wise
7double ramp(double x)
8{
9  if (x > 0)
10    return x;
11  else
12    return 0;
13}
14
15int main(int, char**)
16{
17  Matrix4d m1 = Matrix4d::Random();
18  cout << m1 << endl << "becomes: " << endl << m1.unaryExpr(ptr_fun(ramp)) << endl;
19  return 0;
20}
21