Architectural Changes in Math.js v2
josdejong.com
josdejong.com
Say I had "abx + c = y", I'd like to substitute values into a,b and c and get something like "5x - 1 = y" back. But Math.js won't allow you to have these kinds of "symbolic" variables in their expressions - trying to eval statements such as the ones above will just return an error saying x and y are undefined. Huge bummer in my view.
Anyone know about easy solutions to this problem? I may end up doing it server-side before I render the equations I need, but I'd really like to use someone else's open source project rather than try to figure this stuff out myself...
var exp = new Expression("a");
exp = exp.multiply("b");
exp = exp.multiply("x");
exp = exp.add("c");
console.log(exp.toString());
exp = exp.evaluateAt({a:5, b:1, c:-1})
console.log(exp.toString());
var eq = new Equation(exp, new Expression("y"));
console.log(eq.toString());
var x = eq.solveFor("x");
console.log("x = " + x.toString());
Yields: abx + c
5x - 1
5x - 1 = y
x = 1/5y + 1/5
You can play with it here: http://algebra.js.org/