Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

This package has been deprecated

Author message:

Not functional, use Durand-Kerner.

companion-roots

0.0.1 • Public • Published

companion-roots

Finds all roots of a polynomial by computing the eigenvalues of its companion matrix. In other words, it factorizes the polynomial over the complex numbers.

Use

Install using npm:

npm install companion-roots
var findRoots = require("companion-roots")
 
var roots = findRoots([1, 1, -1])  // Finds roots for 1 + 1*x - 1*x^2
 
// Now:
//      roots[0] = real part of roots
//      roots[1] = imaginary part of roots
 
for(var i=0; i<roots.length; ++i) {
  console.log(roots[0][i] + "+" + roots[1][i] + "i")
}
 
// Prints:
//  1.618033988749895+0i
//  -0.6180339887498949+0i

require("companion-roots")(real_coeffs[, imag_coeffs])

Computes the roots of a polynomial

  • real_coeffs the real coefficients of the polynomial arranged in order of increasing degree
  • imag_coeffs (optional) the imaginary coefficients of the polynomial. If not specified, assumed to be zero

Returns: A pair of vectors representing the real and imaginary parts of the roots of the polynomial

Time Complexity: O(real_coeffs.length^3)

Credits

(c) 2013 Mikola Lysenko. MIT License

Install

npm i companion-roots

DownloadsWeekly Downloads

53

Version

0.0.1

License

MIT

Last publish

Collaborators

  • avatar
  • avatar
  • avatar
  • avatar
  • avatar
  • avatar