特征矩阵库系数明智操作
Eigen Matrix library coefficient wise manipulation
我可以就矩阵库"Eigen"的计算问题寻求帮助吗?
假设我有一个函子:
struct my_F
{
double a_,b_;
my_F(double a,double b):a_(a),b_(b){};
double operator()(double x){return (x+a)*(x+b);}
}
现在我想用这个函子在 Eigen::MatrixXd 上进行操作
Eigen::MatrixXd a(10,12);
a.setConstant(2.);
我如何(以紧凑而漂亮的方式(编写一些东西,以便获取"a"的每个元素并对其应用函子操作。
我总是可以循环进行,但这是唯一的出路吗?
提前谢谢。
您可以将unaryExpr
应用于矩阵:
Eigen::MatrixXd M(10,12);
//fill matrix M
auto f = my_F{1.0,2.0};
auto M_new = M.unaryExpr(f);
请注意,转换M_new
的结果不会存储,而是动态计算(如往常在表达式模板库中一样(。如果要存储结果,请将"auto M_new
"替换为"Eigen::MatrixXd M_new
"。
相关文章:
- 为什么在popback()操作之后,它仍然打印完整的矢量
- 重载操作程序时出错>>用于类中的字符串 memebr
- 如何声明特征矩阵,然后通过嵌套循环初始化它
- 特征 3.3.x:如何在所有行中操作 lamba?
- 确保特征将 AVX 矢量化用于特定操作
- 标量类型的特征模板无法编译固定大小的子矩阵操作
- 特征库,简单的线性代数操作,具有稀疏的矩阵,增加了其分配的尺寸
- 如果矩阵密集且不对称,特征库矩阵/矢量操作是否比 .net 矩阵/向量操作更快?
- 从MATLAB到C 特征矩阵操作 - 矢量归一化
- 采用 DenseBase 的模板化函数中的 c++ 特征块操作
- 具有未签名类型的特征操作
- 在特征阵列上执行布尔操作
- C++ 特征 - 如何将广播和元素操作结合起来
- 特征矩阵库系数明智操作
- 稀疏矩阵上的块操作 - 特征工具箱 - C++
- 特征多线程操作
- 无循环的特征元素操作
- 特征矩阵库的一个块操作的补充
- 特征C++:稀疏矩阵操作的性能
- 特征矩阵库索引操作