问题标签 [sympy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5166 浏览

python - 将 MATLAB 函数移植到 Scilab。如何使用符号?

我正在将一些MATLAB函数移植到Scilab。很酷的是,有一个转换工具箱可以让事情变得非常简单。

问题是我没有找到syms功能的对应物,以及一般的符号工具箱。(我也想要控制系统工具箱的一个端口,而且我仍在寻找一些我可能需要的功能)。

我发现的关于符号工具箱的唯一一件事就是这个,但它有点棘手而且不太容易(实际上我无法在 30 分钟内正确设置它,我现在放弃了。我要去稍后再试),它需要安装 Maxima。有人知道吗?

Scilab 并不是必须的。该项目旨在为 MATLAB提供更免费开源的替代方案。我看到有用于Python的SymPy,我可以将它与SciPy一起使用,但我丢失了转换工具箱的东西:\

也就是说,什么应该更好?让 SciLab 和 Maxima 一起工作还是转移到 Python & co.?这是项目的开始,所以我越早选择这个越好。

0 投票
4 回答
11907 浏览

python - Python中的单位转换

SymPy是在 Python 中进行单位转换的好工具:

您可以轻松滚动自己的:

但是,我无法在我的应用程序中实现这一点,除非我可以将 C(绝对)度转换为 K 度到 F 度到 R 度,或者它们的任何组合。

我想也许这样的事情会起作用:

但显然,这是错误的下坡路。关于在 SymPy 中干净地实现“偏移”型单位转换的任何建议?

注意:我愿意尝试其他单位转换模块,但不知道除了Unum之外的任何模块,发现它很麻烦。

编辑:好的,现在很清楚我想要做的是首先确定要比较的两个量是否在同一个坐标系中。(如时间单位参考不同的时期或时区或dB到直线幅度),进行适当的转换,然后进行转换。有没有通用的坐标系管理工具?那太好了。

我会假设°F 和°C 在表达式中始终指代Δ°F Δ°C,但在单独站立时指的是绝对值。我只是想知道是否有一种方法可以创建units.degF一个函数并在其上添加一个装饰器property()来处理这两个条件。

但是现在,我将设置units.C == units.K并尝试在文档中非常清楚地使用函数convertCtoK(...)以及convertFtoR(...)在处理绝对单位时。(开个玩笑。不,我不会。)

0 投票
4 回答
568 浏览

python - 计算机代数软,以最小化一组多项式中的运算次数

我有多项式系统,相当简单的多项式表达式,但需要很长时间才能优化我的手。表达式被分组在集合中,并且在给定的集合中,在几个变量中有共同的术语。

我想知道是否有一个计算机代数系统,例如 Mathematica、Matlab 或 sympy,它可以用常用项优化多个多项式,以最大限度地减少运算次数。如果这样的系统能够最大限度地减少中间项的数量以减少寄存器的数量,那也是很好的。

如果这样的系统不存在,我将自己做,使用 Python 符号代数 Sympy。如果您正在开发此类软件包或有兴趣开发或使用其中一个,请告诉我。

这是一个虚构的例子

所以你显然可以考虑 (t - qA) 项。现在,如果您使用常用术语的各种组合使术语数量非常大,则很难手动完成。我的方程最多涉及 40 个项,集合的大小约为 20。希望对您有所帮助

谢谢

0 投票
2 回答
1470 浏览

python - SymPy 基础知识

我刚开始玩SymPy,我对它的一些行为感到有点惊讶,例如这不是我期望的结果:

为什么这些返回 False 有没有办法让它从一种写复数的方式转换为另一种?

0 投票
3 回答
2334 浏览

python - SymPy:如何根据其他表达式返回一个表达式?

我对SymPy相当陌生,并且有一个可能是基本问题。或者我可能只是误解了应该如何使用 SymPy。

有没有办法创建一个不是由原子表示,而是由其他表达式组合的表达式?

例子:

附带说明:我可以找到完整 SymPy 文档的“官方”PDF(或其他可打印)版本吗?(我在工作中受到严格的互联网使用限制,并且厌倦了周末在家工作。)

更新:

这就是我最终遵循 Prelude 的建议的结果,但是它不太可能像这样被广泛使用,因为它感觉很脏。欢迎评论和WTF。

用法:

0 投票
6 回答
36870 浏览

python - 是否可以使用 Matplotlib 绘制隐式方程?

我想在 Matplotlib 中绘制隐式方程(形式为 f(x, y)=g(x, y) 例如 X^y=y^x)。这可能吗?

0 投票
1 回答
8134 浏览

python - 如何从 Matplotlib 格式化轮廓线

我正在使用 Matplotlib 生成隐式方程图(例如 y^x=x^y)。非常感谢我已经收到的帮助,我已经走了很远。我已经使用等高线来制作情节。我剩下的问题是格式化轮廓线,例如宽度、颜色,尤其是 zorder,轮廓出现在我的网格线后面。当然,这些在绘制标准函数时可以正常工作。

0 投票
4 回答
11972 浏览

python - 如何使用 Matplotlib 处理渐近线/不连续性

在绘制具有不连续性/渐近线/奇点/其他的图形时,是否有任何自动方法可以防止 Matplotlib 在“中断”处“加入点”?(请参阅下面的代码/图片)。
我读到 Sage 有一个看起来不错的 [detect_poles] 工具,但我真的希望它可以与 Matplotlib 一起使用。

不连续性

0 投票
5 回答
2165 浏览

python - SymPy 中的非顺序替换

我正在尝试使用 [SymPy][1] 同时替换表达式中的多个术语。我尝试使用字典作为参数的 [subs function][2],但发现它是按顺序替换的。

问题是第一个替换导致了一个可以被第二个替换替换的术语,但它不应该(出于我的原因)。

关于如何同时执行替换而不相互干扰的任何想法?

编辑: 这是一个真实的例子

只有适当的替换应该发生,在这种情况下只有第一个。所以预期的输出应该如下:

0 投票
4 回答
2187 浏览

python - 同情如何工作?它如何与交互式 Python shell 交互,交互式 Python shell 如何工作?

当我按下 时,内部会发生什么Enter

我问的动机,除了单纯的好奇,是想弄清楚当你

并输入一个表达式。它是如何从Enter调用

在 sympy.core.decorators 中?(当我尝试检查评估时,这是winpdb带我去的第一个地方。)我猜想有一些内置的 eval 函数可以正常调用,并且在导入 sympy 时会被覆盖?