eigen

    -1热度

    1回答

    在本征,我们可以初始化与其他一些矩阵或矢量这样的矩阵或向量: MatrixXf matA(2, 2); matA << 1, 2, 3, 4; MatrixXf matB(4, 4); matB << matA, matA/10, matA/10, matA; std::cout << matB << std::endl; 什么我想要实现: SparseMatrix<double> m

    0热度

    1回答

    我试图在mac中使用eigen。 我安装它后,我从它的主要PAGE电泳代码运行演示如下: #include <iostream> #include <eigen3/Eigen/Dense> using Eigen::MatrixXd; int main() { MatrixXd m(2,2); m(0,0) = 3; m(1,0) = 2.5; m(0,1) = -1; m(1,

    0热度

    1回答

    在特征库中是否有可能为行主稀疏矩阵逐行保留空间(每行不同)? 我想优化内存填充​​一个相当大的稀疏矩阵(〜70mio x 70mio与〜20亿nnz是我可以达到的最大,但我希望更进一步)。为了消除我去的方式: 首先我使用的是推荐的setFromTriplets,它可能是填充矩阵的最快方式,但检查内存消耗时,我发现一个峰值约为我用这个点时平均内存的两倍函数,这是有道理的,因为我 - 在某些时候 -

    6热度

    1回答

    我们正在努力优化我们的C++代码和我们有以下的矩阵运算(使用本征库) #include<Eigen/Dense> int main(){ MatrixXd P = MatrixXd::Random(30,30); // a random double 30 x 30 matrix P MatrixXd M = MatrixXd::Random(30,30); // a r

    1热度

    1回答

    我对Eigen相对较新,在特征中使用稀疏矩阵时遇到以下问题。 当我使用下面的代码时,变量C的分配大小在加法后增加到20。我失去了为什么会发生这种情况。 Eigen::SparseMatrix<double> A(10, 1); A.reserve(Eigen::VectorXi::Constant(1,3)); A.coeffRef(2, 0) = 2; A.coeffRef(3, 0)

    0热度

    1回答

    我有一个本征矢量。我想要递归地捕捉它。例如 Eigen::Vector3d vec; vec << 5, 6, 7; Eigen::VectorXd vecCat; for(int i=0;i<3;i++) vecCat << vec(i),0,0; cout<<vecCat<<endl; ,使得最终输出将是 vecCat = 5 0 0 6 0 0 7 0 0 如果我做上

    0热度

    1回答

    在本征,与 ArrayXXf a; a = ArrayXXf::Random(1000, 10000); 做 a = a.pow(4); 大约需要在我的电脑500毫秒,而做 a = a.square().square(); 需要只有约5ms。我正在编译最近发布的GCC。 这是预期的行为还是我做错了什么?我认为,至少对于小整数来说(例如,如果不使用成本函数,则为< 20),那么应该存在

    2热度

    1回答

    如何在定制Tensorflow操作中使用Eigen的内部函数如Eigen :: internal :: scalar_product_op?通过Tensorflow代码库去后,像cwise_ops_common.h和cwise_ops.h,我想出了以下(准系统)实现: #include "tensorflow/core/framework/op.h" #include "tensorflow/c

    0热度

    1回答

    我使用Eigen做密集线性代数计算,但是与向量作为对角线右手边,代码不编译(抱怨步幅)? EigenMatrix A, B, X; EigenVector C; X= A.lu.solve(B); // ok X= A.lu.solve(C.asDiagonal()); // not ok !

    1热度

    1回答

    强调文本我有一个错误,关于在我的cuda函数中调用JacobiSVD。 这是导致错误的代码的一部分。 Eigen::JacobiSVD<Eigen::Matrix3d> svd(cov_e, Eigen::ComputeThinU | Eigen::ComputeThinV); 并且这是错误消息。 CUDA_voxel_building.cu(43): error: calling a __h