1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#include <iostream> #include <Eigen/Dense> using namespace Eigen; VectorXd func() { // Оголошення матриці M MatrixXd M(4, 2); M << 10, 20, 20, 30, 30, 40, 40, 50; // Оголошення вектора x std::vector<double> x_numbers = {2, 3}; Map<VectorXd> x(x_numbers.data(), x_numbers.size()); // Піднесення кожного рядка матриці M до ступеня кожного елемента вектора x MatrixXd retval = M.rowwise().array().pow(x.transpose().array()); return retval; } int main() { // Виклик функції і вивід результату VectorXd result = func(); std::cout << "Результат: \n" << result << std::endl; return 0; } |