9
我有一個do_magic
方法,它需要一個雙精度值並將其加42。我想將這種方法應用於Eigen::Matrix
或Eigen::Array
的每個係數(也就是說,如果只有兩種類型中的一種,我纔會介意)。Eigen中係數自定義函數
這可能嗎?
像這樣:
Eigen::MatrixXd m(2, 2);
m << 1,2,1,2;
m.applyCoefficientWise(do_magic);
// m is now 43, 44, 43, 44
我會補充,如果你需要做的效率,不相交併以這些元素的地方修改,你總是可以用醜陋的標準: :for_each在m.data()上。然而,上面的成本可能完全可以接受,這取決於你之後做什麼(因爲它實現了懶惰評估)。 –
答案和評論都是我尋找的內容!謝謝。 –