参考
切片和索引
Eigen 3.4中引入索引切片操作,slicing和indexing 操作可以实现 block API 的所有功能;
通过通用 DenseBase::operator()(const RowIndices&, const ColIndices&)方法处理。每个参数可以是:
- 索引单个行或列的整数,包括符号索引。
- 符号Eigen::all以递增的顺序表示整个行或列的集合。
- 由Eigen::seq、Eigen::seqN或Eigen::lastN函数构造的ArithmeticSequence。
- 任何一维向量/整数数组,包括 Eigen 的向量/数组、表达式、std::vector、std::array 以及普通的 C 数组:int[N]。
基本切片
- 通过Eigen::seq或igen::seqN函数获取矩阵或向量内均匀间隔的一组行、列或元素,其中“seq”代表算术序列。
function | description | example |
---|---|---|
seq(firstIdx,lastIdx) | 从 firstIdx 到 lastIdx 的整数队列,默认依次递增1 | seq(2,5) <=> {2,3,4,5} |
seq(firstIdx,lastIdx,incr) | 从 firstIdx 到 lastI |