用coffe等号解同步方程

Solving simulataneous equations with Coffeequate

本文关键字:同步 方程 coffe      更新时间:2023-09-26

我正在寻找一个可以在浏览器中运行的计算机代数系统,对寻找方程系统的根特别感兴趣。

我正在评估coffeequite .

我想到的最简单的非平凡系统是一个由两个联立线性方程组成的系统,它没有出现在演示页面上:

var exp1 = CQ('x = 2 * y + 6');
var exp2 = CQ('x - y = 10');
exp2.sub({x: exp1.solve('x')})
    .solve('y');

不幸的是,这在sub调用时挂起。

我想要得到的是所有已知的未知数(即xy)的值-在这种情况下保证有一个解。

我在这里做错了什么?

CQ().solve返回解决方案的数组(如果有多个解决方案)。但是,您想要使用CQ().sub替换的东西必须是整数或CQ()对象本身。下面的代码可以工作:

var exp1 = CQ('x = 2 * y + 6');
var exp2 = CQ('x - y = 10');
exp2.sub({x: exp1.solve('x')[0]}).solve('y'); // 4

当你传入一个数组时,它实际上是挂起而不是出错,这是一个bug;我来补一下。

(免责声明:我写的是coffeequite)