1c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath#include <iostream>
2c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath#include <Eigen/Dense>
3c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
4c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathusing namespace std;
5c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathint main()
6c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{
7c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  Eigen::MatrixXf mat(2,4);
8c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  Eigen::VectorXf v(2);
9c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
10c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  mat << 1, 2, 6, 9,
11c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath         3, 1, 7, 2;
12c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
13c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  v << 0,
14c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath       1;
15c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
16c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  //add v to each column of m
17c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  mat.colwise() += v;
18c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
19c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  std::cout << "Broadcasting result: " << std::endl;
20c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  std::cout << mat << std::endl;
21c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath}
22