how to concatenate Vectors in Eigen?

user3178756 picture user3178756 · Sep 5, 2014 · Viewed 15.1k times · Source

I have two vectorXd in my program and I like to concatenate them into one vector, so that the second one's values goes after the first one, I found this for matrix but it doesn't seem to work on Vectors:

Eigen how to concatenate matrix along a specific dimension?

Answer

cdhowie picture cdhowie · Sep 5, 2014

Like so, assuming you have vec1 and vec2 already:

VectorXd vec_joined(vec1.size() + vec2.size());
vec_joined << vec1, vec2;

(Note that the vector types are simply typedefs of matrix types constrained to have only one column.)

Further reading: Advanced initialization