aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/examples/Tutorial_ArrayClass_interop.cpp
blob: 72ac5d3078b36d2fc618a74a1ccea92332d71524 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <Eigen/Dense>
#include <iostream>

using namespace Eigen;
using namespace std;

int main()
{
  MatrixXf m(2,2);
  MatrixXf n(2,2);
  
  MatrixXf result(2,2);

  //initialize matrices
  m << 1,2,
       3,4;

  n << 5,6,
       7,8;
  
  // mix of array and matrix operations
  //   first coefficient-wise addition
  //   then the result is used with matrix multiplication
  result = (m.array() + 4).matrix() * m;

  cout << "-- Combination 1: --" << endl
    << result << endl << endl;


  // mix of array and matrix operations
  //   first coefficient-wise multiplication
  //   then the result is used with matrix multiplication
  result = (m.array() * n.array()).matrix() * m;

  cout << "-- Combination 2: --" << endl
    << result << endl << endl;

}