gpt4 book ai didi

c++ - 特征:访问矩阵中的分散元素

转载 作者:行者123 更新时间:2023-11-30 02:33:06 25 4
gpt4 key购买 nike

在 MATLAB 中,我可以选择一个分散的子矩阵,例如:

A = [1 ,2 ,3;4,5,6;7,8,9]
A([1,3],[1,3]) = [1,3;7,9]

有没有用 Eigen 做到这一点的聪明方法?

最佳答案

不是以通用方式,但如果您的访问模式是常规的,您可以使用具有适当步幅的 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

关于c++ - 特征:访问矩阵中的分散元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35820736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com