邓辉

个人站

欢迎来到我的个人站~


Eigen - The Array class

介绍Array 类和其相关的系数运算方式

什么是Array类?

Array类跟前面介绍的Matrix相似,不过在形式和运算方式上略有区别。Array主要用于线性代数的运算中。 Array类的形式如下: Array<typename Scalar, int RowsAtCompileTime, int ColsAtCompileTime>

以ArrayNt 为例,其表示的是一维的数组,N和t分别表示数组大小和数值类型。对于二维的数组,通常采用ArrayNNt的形式。

Array数组赋值

Array数组的赋值方式可以参见上图,具体形式与Matrix相同。这里就不再赘述。

Array数组的数学运算

Array数组的加减运算与MAtrix相同,不过,如果两个Array,a,b之间的运算就要求数组a和数组b的形式相同。 需要特殊注意的是,Array的乘法运算是相应元素之间的运算。这是与Matrix最大的区别。

相应的Array提供了一系列相关的函数运算:

  • .abs() :对数组中的元素求绝对值
  • .sqrt() :对数组的元素开根号
  • .min() :这个函数是比较两个Array数组,相应位置上取二者较小值

Array数组与Matrix数组之间的转化

Matrix 和 Array 数组之间的转换可以通过函数:.array() 、.matrix()实现。而且,Matrix也可以调用函数.cwiseProduct()实现Array的数值运算方式。 而且,Matrix 和Array在数组形式相同的情况下支持相互赋值。


转载请注明原地址,邓辉的博客:https://github.com/my-lord/mylord.github.io 谢谢!

Don’t Panic.

请各位大佬多多打赏


打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦