In MATLAB, the line below converts a Matrix to a Vector.It flattens the matrix column by column into a vector.
myvar(:)
Ho
Eigen matrices are stored in column major order by default, so you can use simply use Eigen Maps to store the data column by column in an array:
MatrixXd A(3,2);
A << 1,2,3,4,5,6;
VectorXd B(Map(A.data(), A.cols()*A.rows()));
If you want the data ordered row by row, you need to transpose the matrix first:
MatrixXd A(3,2);
A << 1,2,3,4,5,6;
A.transposeInPlace();
VectorXd B(Map(A.data(), A.cols()*A.rows()));