|  | #include <unsupported/Eigen/Polynomials> | 
|  | #include <iostream> | 
|  |  | 
|  | using namespace Eigen; | 
|  | using namespace std; | 
|  |  | 
|  | int main() { | 
|  | Vector4d roots = Vector4d::Random(); | 
|  | cout << "Roots: " << roots.transpose() << endl; | 
|  | Eigen::Matrix<double, 5, 1> polynomial; | 
|  | roots_to_monicPolynomial(roots, polynomial); | 
|  | cout << "Polynomial: "; | 
|  | for (int i = 0; i < 4; ++i) { | 
|  | cout << polynomial[i] << ".x^" << i << "+ "; | 
|  | } | 
|  | cout << polynomial[4] << ".x^4" << endl; | 
|  | Vector4d evaluation; | 
|  | for (int i = 0; i < 4; ++i) { | 
|  | evaluation[i] = poly_eval(polynomial, roots[i]); | 
|  | } | 
|  | cout << "Evaluation of the polynomial at the roots: " << evaluation.transpose(); | 
|  | } |