// SPDX-FileCopyrightText: The Eigen Authors // SPDX-License-Identifier: MPL-2.0 #include #include #include struct GreaterAbs { double operator()(double a, double b) const { using std::abs; return abs(a) < abs(b) ? b : a; } }; int main() { Eigen::MatrixXd m(2, 3); m << -2, 1, 4, 3, -5, 2; std::cout << "matrix:\n" << m << "\n\n"; std::cout << "largest absolute value: " << m.redux(GreaterAbs()) << "\n"; std::cout << "column-wise:\n" << m.colwise().redux(GreaterAbs()) << "\n"; }