|
| void | EvaluatePolynomialWithDerivatives (const double *theCoeffs, int theDegree, std::complex< double > theX, std::complex< double > &theP, std::complex< double > &theDP, std::complex< double > &theD2P) |
| | Evaluate polynomial and its first two derivatives at x (complex version). Polynomial: c[n]*x^n + c[n-1]*x^(n-1) + ... + c[1]*x + c[0].
|
| |
| std::complex< double > | LaguerreIteration (const double *theCoeffs, int theDegree, std::complex< double > theX0, double theTol, int theMaxIter) |
| | Laguerre iteration to find one root of polynomial.
|
| |
| void | DeflateReal (double *theCoeffs, int &theDegree, double theRoot) |
| | Deflate polynomial by removing a real root. Divides p(x) by (x - root) to get q(x).
|
| |
| void | DeflateComplex (double *theCoeffs, int &theDegree, std::complex< double > theRoot) |
| | Deflate polynomial by removing a complex conjugate pair. Divides p(x) by (x^2 + b*x + c) where b = -2*Re(root), c = |root|^2.
|
| |
| double | RefineRealRoot (const double *theOrigCoeffs, int theOrigDegree, double theRoot) |
| | Refine a real root using Newton-Raphson.
|
| |