我使用C ++进行编码,并使用Fenics进行有限元离散化。现在我想将dolfin :: Matrix转换为Eigen :: Matrix。我怎么能这样做?
我为矢量做了类似的事情: 我给了c_vec,其类型为:
std::shared_ptr<dolfin::Vector>
然后我用了
std::vector<double> c_vec_new;
c_vec->gather_on_zero(c_vec_new);
(我正在计算并行)。然后我可以通过
创建一个Eigen :: VectorEigen::Map<Eigen::VectorXd> c_vec_eigen(c_vec_new.data(),c_vec_new.size());
有更简单的方法吗? 如何将dolfin :: Matrix转换为Eigen :: Matrix?
我将非常感谢您的帮助! Moerni