josdejong/mathjs
Voir sur GitHubmath.rationalize silently ignores imaginary numbers
Open
#2 375 ouverte le 6 janv. 2022
bughelp wanted
Métriques du dépôt
- Stars
- (13 832 stars)
- Métriques de merge PR
- (Aucune PR mergée en 30 j)
Description
Currently, math.rationalize seems to ignore imaginary numbers:
// math.js version 9.5.1
// complex coefficient a = (2 + complex(3, 4))
let a = new math.OperatorNode("+", "add", [new math.ConstantNode(2), new math.ConstantNode(math.complex(3, 4))]);
console.log(a.evaluate()); // {re: 5, im: 4}
// polynomial a * x
let poly = new math.OperatorNode("*", "multiply", [a, new math.SymbolNode("x")]);
let coefficients = math.rationalize(poly, true).coefficients;
console.log(coefficients); // [0, 5]
I would expect coefficients to be [0, 5+4i] or for rationalize to throw an error.