-1

対角線上の要素が短い VectorXd の N 複製である Eigen ライブラリを使用して、C++ で対角線 MatrixXd を作成する必要があります。

VectorXd R; // サイズ n のベクトル

VectorXd V; // R の N 個の連結複製に対応するサイズ n*N のベクトル、作成方法がわかりません

MatrixXd D=MatrixXd(V.asDiagonal()); //サイズ n N xn Nの私の対角行列

ありがとう。

4

1 に答える 1

0

の線に沿った何か

VectorXd V(N * R.innerSize()); // construct vector of size N * n
for(size_t i = 0; i < n; ++i)
    for(size_t j = 0; j < R.innerSize(); ++j)
        V[i * R.innerSize() + j] = R[j];
于 2014-10-02T17:14:57.283 に答える