switch to Eigen for vector data