Browse Source

Polynomial: rename to Roots() and EigenvalueMatrix()

ridge-regression
Christoph Ruegg 8 years ago
parent
commit
c756e796ed
  1. 6
      src/Numerics.Tests/PolynomialTests.cs
  2. 3
      src/Numerics/FindRoots.cs
  3. 8
      src/Numerics/Polynomial.cs

6
src/Numerics.Tests/PolynomialTests.cs

@ -296,14 +296,14 @@ namespace MathNet.Numerics.UnitTests
{
var tol = 1e-14;
var p1 = new Polynomial(1.0);
var r = p1.GetRoots();
var r = p1.Roots();
Assert.AreEqual(1, r.Length, "length mismatch");
Assert.AreEqual(1.0, r.FirstOrDefault().Real);
var p2 = new Polynomial(new double[] { 1, 2 });
var r2 = p2.GetRoots();
var r2 = p2.Roots();
Assert.AreEqual(1, r2.Length, "length mismatch");
Assert.AreEqual(-0.5, r2.FirstOrDefault().Real, tol);
@ -333,7 +333,7 @@ namespace MathNet.Numerics.UnitTests
static void TestEqual(double[] x, List<Complex> eIn)
{
var tol = 1e-10;
var r0 = new Polynomial(x).GetRoots().ToList();
var r0 = new Polynomial(x).Roots().ToList();
var e = eIn.OrderBy(v => v.Real).ToArray();
var r = r0.OrderBy(v => v.Real).ToArray();

3
src/Numerics/FindRoots.cs

@ -110,6 +110,7 @@ namespace MathNet.Numerics
{
return RootFinding.Cubic.Roots(d, c, b, a);
}
/// <summary>
/// Find all roots of a polynomial by calculating the characteristic polynomial of the companion matrix
/// </summary>
@ -117,7 +118,7 @@ namespace MathNet.Numerics
/// <returns>the roots of the polynomial</returns>
public static Complex[] Polynomial(double[] poly)
{
return new Polynomial(poly).GetRoots();
return new Polynomial(poly).Roots();
}
/// <summary>

8
src/Numerics/Polynomial.cs

@ -294,7 +294,7 @@ namespace MathNet.Numerics
}
/// <summary>
/// substraction of two Polynomials (piecewise)
/// Subtraction of two Polynomials (piecewise)
/// </summary>
/// <param name="a">left Polynomial</param>
/// <param name="b">right Polynomial</param>
@ -308,9 +308,9 @@ namespace MathNet.Numerics
/// Calculates the complex roots of the Polynomial by eigenvalue decomposition
/// </summary>
/// <returns>a vector of complex numbers with the roots</returns>
public Complex[] GetRoots()
public Complex[] Roots()
{
DenseMatrix A = GetEigValMatrix();
DenseMatrix A = EigenvalueMatrix();
Complex[] roots;
if (A == null)
@ -337,7 +337,7 @@ namespace MathNet.Numerics
/// </summary>
/// <returns>Eigenvalue matrix A</returns>
/// <note>this matrix is similar to the companion matrix of this polynomial, in such a way, that it's transpose is the columnflip of the companion matrix</note>
public DenseMatrix GetEigValMatrix()
public DenseMatrix EigenvalueMatrix()
{
Polynomial pLoc = new Polynomial(Coefficients);
pLoc.Trim();

Loading…
Cancel
Save