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(4);
9c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
10c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  mat << 1, 2, 6, 9,
11c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath         3, 1, 7, 2;
12c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
13c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  v << 0,1,2,3;
14c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
15c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  //add v to each row of m
16c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  mat.rowwise() += v.transpose();
17c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath
18c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  std::cout << "Broadcasting result: " << std::endl;
19c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath  std::cout << mat << std::endl;
20c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath}
21