mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-27 07:29:52 +08:00
9a4a08da46
* convenient functions: - Horner and stabilized Horner evaluation - polynomial coefficients from a set of given roots - Cauchy bounds * a QR based polynomial solver
21 lines
635 B
C++
21 lines
635 B
C++
#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();
|
|
}
|