在Java中使用SymPy(或其他计算机代数系统)

2 投票
1 回答
2264 浏览
提问于 2025-04-18 11:14

我现在正在开发一个JavaFX项目,这个项目可以接受数学表达式并进行计算。我已经实现了基本的运算和一些代数功能,还能用梯形法则进行定积分。

我现在面临的主要问题是如何进行不定积分。我在网上查了很多符号计算的库,比如JCalculus、JavaCalculus、JScience、SymJa等等,但没有一个能像SymPy那样功能强大。我想知道有没有办法从Java发送指令给SymPy,并把结果返回到Java中。

我在考虑为我的JavaFX应用提供一个安装程序,如果解决方案需要的话,可以安装Python和SymPy。我也试着了解Jython,以为它可能和这个问题有关,但我没能搞懂它的用途和用法。

请帮帮我。我对Java和JavaFX还算不错,但对Python的了解非常有限。能给我一些一步一步的指导和示例代码就太好了。

提前谢谢你们。

1 个回答

2

如果你能把从Java输入的代码转换成相当于sympy的Python代码,并把它写到一个文件里,那么你就可以很轻松地得到那段代码的输出结果。

Process p = Runtime.getRuntime().exec("python yourfile.py");

可以看看 这个链接

撰写回答