特征:矩阵中的散射元素
Eigen: Acessing scattered element in a matrix
在MATLAB中,我能够选择一个分散的子矩阵,例如:
A = [1 ,2 ,3;4,5,6;7,8,9]
A([1,3],[1,3]) = [1,3;7,9]
有没有一种聪明的方法可以做到这一点?
不是以通用的方式,但如果您的访问模式是规则的,则可以使用具有适当步骤的 Eigen::Map:
#include <Eigen/Core>
#include <iostream>
int main(int argc, char *argv[])
{
Eigen::Matrix3d A;
A << 1, 2, 3, 4, 5, 6, 7, 8, 9;
std::cout << Eigen::Map<Eigen::Matrix2d, 0, Eigen::Stride<6, 2> >(A.data());
return 0;
}
看http://eigen.tuxfamily.org/dox/classEigen_1_1Stride.html
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- 将数组作为参数传递给函数安全吗?作为第三方职能部门,可以探索他们想要的之外的其他元素
- 设置负元素特征稀疏向量C++
- 将元素从opencv矩阵复制到特征矩阵
- Lambda 函数在特征中按元素方向
- 将函数应用于特征矩阵中的所有元素,而无需循环
- 特征:类似 numpy 的元素索引
- 特征稀疏矩阵的 CoeffRef 中的错误,元素类型为向量
- 使用特征C++库将每个矩阵列乘以每个向量元素
- 射影几何形状 - 使用特征元素在3D中找到平面
- C 特征库:具有从行矢量的元素的mutliplying向量
- 是否可以将std ::函数应用于特征矩阵的每个元素
- 使用特征元素修改零表达的值
- C++ 特征 - 如何将广播和元素操作结合起来
- 特征C++稀疏矩阵的元素乘积和除法
- 特征:矩阵中的散射元素
- 无法访问特征线性系统解的元素
- 将函数应用于所有特征矩阵元素
- 无循环的特征元素操作
- 根据向量元素的特征对向量进行排序