私は固有C++疎行列(<Eigen/Sparse>
からSparseMatrix<double>
など)を持つメソッドに固有C++密行列クラス(<Eigen/Dense>
からMatrixXd
)に実装され、いくつかのメソッドを変換しようとしています分けます。固有C++疎行列は、製品を要素ごとと
多くの方法は、単にチャンスMatrixXd
からSparseMatrix<double>
によって直接変換することができます。しかし、いくつかの方法はできません。私が会った
一つの問題は、スパースマトリックス法に次の要素ごとの配当を変換することです:もともと
(beta.array()/beta.cwiseAbs().array()).sum()
、beta
はMatrixXd beta
として宣言されています。今、私がbeta
をSparseMatrix<double> beta
と宣言した場合、上記のことを可能にする対応するarray()
メソッドはありません。
スパース行列で要素単位の操作を実行するにはどうすればよいですか。
密行列を疎行列に変換する効率的な方法はありますか?
はバック密行列にスパース行列を回す方法はあります行列が圧縮モードである場合は、コール確かに、回避することができます? –
マトリックスコンストラクタを使用する:MatrixXd dense(beta); – ggael