2

MATLABでは、次のことができます

A = [1 2 3; 4 5 6];
A(:)

取得するため:

ans =
1
4
2
5
3
6

Eigen3 マトリックスでこれを行うにはどうすればよいですか?

4

1 に答える 1

2

最良の方法は、Map を使用することです。

Map<VectorXd> v(A.data(),A.size());

この場合、Eigen はコンパイル時に 1D ベクトルを持っていることを認識しているためです。

もちろん、結果は A の格納順序、つまり列優先行列 (既定) によって異なります。

[1 4 2 5 3 6]^T

行優先の場合:

[1 2 3 4 5 6]^T
于 2014-01-30T07:26:12.947 に答える