我正在尝试计算
...
Eigen::Map<MatrixXd> eMat(matPointer,m_nRow,m_nCol);
Eigen::BDCSVD<MatrixXd> svdVal(eMat, Eigen::ComputeThinU | Eigen::ComputeThinV);
....
但是如果我想向 Eigen :: Map 添加 Stride ,则此代码会出现细分错误
...
typedef Eigen::Stride<Eigen::Dynamic, Eigen::Dynamic> DynStride;
Eigen::Map<MatrixXd,0, DynStride> eMat(matPointer,m_nRow,m_nCol, DynStride(jumpX,jumpY));
Eigen::BDCSVD<MatrixXd> svdVal(eMat, Eigen::ComputeThinU | Eigen::ComputeThinV);
...
我验证了 m_nRow,m_nCol,jumpX,jumpY 之间的兼容性,并且没有问题。我是否需要将 Eigen :: BDCSVD 中的 MatrixXd 更改为其他内容才能获得第二个代码段的工作?