1c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath#include <iostream> 2c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath#include <Eigen/Dense> 3c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 4c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathusing namespace Eigen; 5c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathusing namespace std; 6c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamathint main() 7c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath{ 8c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath Vector3d v(1,2,3); 9c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath Vector3d w(0,1,2); 10c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath 11c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath cout << "Dot product: " << v.dot(w) << endl; 12c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath double dp = v.adjoint()*w; // automatic conversion of the inner product to a scalar 13c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath cout << "Dot product via a matrix product: " << dp << endl; 14c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath cout << "Cross product:\n" << v.cross(w) << endl; 15c981c48f5bc9aefeffc0bcb0cc3934c2fae179ddNarayan Kamath} 16