eigen相关内容

Eigen和Matlab中的不同特征向量和特征值可能产生误差?

喜欢解释这里和这里特征值的(或相对特征向量和它们的符号)是库依赖和(根据第一个链接的问题)它不应该是一个问题。此外,相对于几乎为零的特征值的特征向量可以被认为是垃圾。到目前为止这么好。 现在,考虑下面的MATLAB代码,我想在C ++中使用 Eigen : %假设K是3x3矩阵 [V_K,D_K] = eig d_k = diag(D_K); ind_k = find(d_k ..
发布时间:2016-11-01 10:08:22 C/C++开发

返回所有行,或只返回最后一行

我正在写一堆(约十几个)算法,按照以下模式迭代处理一个向量: ArrayXd prev; ArrayXd curr; prev = some_initial_vector(); for(i = 0; i //做很多东西,很多行计算curr //使用大量的算法特定变量初始化 ... prev = curr; } return curr; 我 ..
发布时间:2016-11-01 09:41:53 C/C++开发

如何更改Eigen中的块?

我无法重新分配封锁。在下面的代码中,我以两种不同的方式存储矩阵 A : 3 ArrayXd s,每行一个 作为 ArrayXXd li> 。 // data ArrayXXd A(3,3); A A_rows = {A.row(0),A.row(1),A.row(2) ..
发布时间:2016-11-01 09:41:42 C/C++开发

如何在C ++中快速对矩阵进行对角?

我不知道要选择哪个库(对于Windows):LAPACK ++,Armadillo,IT ++,Eigen或者其他什么? 是检查大(约10,000×10,000)矩阵是否可对角化,如果是,则获得对角线和可逆矩阵,使得D =(P ^( - 1))* A * P。这必须尽可能快地完成。我不知道要使用哪个库。 另外,我很高兴知道这些库的优点和缺点。 解决方案 这可能是一个比较模糊的答 ..
发布时间:2016-10-30 19:40:36 C/C++开发

eigen :: vectorXf到MatriXf映射

在eigen c ++中,你如何 将一个vectorXf映射到一个matrixXf (适当的维度) href =“http://eigen.tuxfamily.org/dox/TutorialMapClass.html”rel =“nofollow”> docs 在 如何做到外部对象 所以我知道我们可以: MatrixXf x_cen = Map(* x, ..
发布时间:2016-10-30 04:11:19 C/C++开发

特征:具有t 1s的随机二进制向量

我想计算 K * es 其中 K 是 Eigen 矩阵(维度 pxp )和 es 是 px1 随机二进制向量与1s。 例如,如果 p = 5 和 t = 2 a es 是 [1,0,1,0,0]'或 [0,0,1,1,0]'等等... 如何轻松生成 解决方案 我想出了一个更好的解决方案,它是 std :: vector , Egien :: Map std :: shuffle ..
发布时间:2016-10-30 02:47:27 C/C++开发

使用Cmake进行编译并使用仅标头库

问题是对上一个问题的继续/重复,这没有解决我遇到的问题。 使用Eigen Cmake 使用make file编译Eigen是一项任务。但是在Cmake中,如何添加一个头文件库(基本上我只使用Eigen文件夹从Eigen网站提取的归档文件夹,并忽略其余的。) 注意:Eigen文件夹有自己的CMakeLists。 txt 解决方案 您可以使用FindEigen3.cmake。将它 ..
发布时间:2016-10-30 02:47:17 C/C++开发

如何读取CSV文件并分配给Eigen Matrix?

我试图读一个大的cvs文件到Eigen Matrix,下面的代码发现有问题,它不能检测\\\ 在cvs文件中的每一行,以在矩阵中创建多行。 (它用单行读取整个文件)。不知道代码有什么问题。任何人都可以在这里建议? 我也在寻找一个有效的方式来读取csv文件与10k的行和1k的cols。不那么确定下面的代码将是最好的有效方法?非常感谢您的评论。 #include # ..
发布时间:2016-10-28 03:13:36 C/C++开发

32位应用的特征最大矩阵大小

所以,我发现 Eigen 包崩溃,当我尝试声明大于10000x10000的矩阵。我需要声明一个矩阵像这样..约13000x13000元素可靠。我做了一个测试,如: for(int tortureEigen = 1; tortureEigen { printf(“Torturing Eigen with%dx%d..\\\ ”,tortureEigen,tortureEigen); ..
发布时间:2016-10-28 01:12:26 C/C++开发

c ++:Eigen Library新手排序

我不能为我的生活找出为什么这不工作正常。它似乎没有返回第k个元素。 typedef Eigen :: Matrix矩阵; double test(matrix& D,int k) { auto d = D.row(1); std :: nth_element(d.data(),d.data( ..
发布时间:2016-10-27 04:09:49 C/C++开发

在Eigen中移动语义

我有几个关于Eigen的问题: 有没有人知道是否有任何计划支持移动语义任何时候很快?在Eigen3网页的TODO列表上找不到任何内容。现在我使用 swap 技巧来摆脱临时性,例如 MatrixXd foo() { MatrixXd huge_matrix(N,N); // size N x N其中N相当大 //使用huge_matrix执行某些操作 return huge_m ..
发布时间:2016-10-27 04:05:05 C/C++开发

在Eigen中乘以变换和矩阵类型

对我来说,这应该只是工作,所以事实上它不,几乎肯定意味着我是一个错了。即使原则上,双,3,Affine>与Matrix,它们不能一起合理地使用: Affine3d rotMat(AngleAxisd(45.0, ; Matrix4d m; m ..
发布时间:2016-10-27 03:33:23 C/C++开发

线性阿尔法方程Ax = By的最小二乘解

我有一组矩阵形式的线性代数方程, Ax = By 。 A 是 36x20 和 x 的矩阵是大小 20 , B 为 36x13 和 y 为 13x1 。 Rank(A)= 20 。因为系统是超定的(有比变量更多的方程),所以最小二乘解是可能的,i,e; x =(A ^ TA)^ - 1A ^ TBy 。我想要解决方案,以便剩余误差e = Ax-By应该最小化。 使用 Eigen / Dense ..
发布时间:2016-10-25 16:05:22 C/C++开发

Rcpp等效于rowsum

我正在寻找一个快速替代的R函数 rowsum 在C ++ / Rcpp / Eigen或Armadillo。 目的是根据分组向量 a c> b 。例如: > a [1] 2 2 2 2 2 2 2 2 2 2 > b [1] 1 1 1 1 1 2 2 2 2 2 > rowsum(a,b) [,1] 1 10 2 10 在 Rcpp 中编写一个 ..
发布时间:2016-10-25 15:41:27 C/C++开发