问题标签 [evalf]

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 回答
268 浏览

python - 评估尽可能多的参数(SymPy)

我在 SymPy 中有这段代码:

输出很明显6

当我只能访问一个参数时,就会出现问题,如下所示:

而不是预期的2 * f我得到Delta_U * f.

我究竟做错了什么?有没有办法评估一个表达式,而不是所有参数都可用?

编辑:

是的,我追求的是混合数字/符号输出。想象一下有很多参数(自动生成,所以你甚至不确定有多少)的情况,并且有一个函数提供所有subs值。如果您只错过一个替换值,您基本上不会从evalf.

0 投票
1 回答
279 浏览

python - 如何在多元函数中替换一个变量的值?

假设,我有一个函数 f(x,y)=x 2 +y 2。现在,我想替换x=2,保持y象征性。我试过了

但它并没有替换x的值,只是给了我原来的表达方式。

0 投票
1 回答
88 浏览

sympy - 在 sympy 中评估系数而不是指数

我正在使用 sympy 对一组幂律进行非线性求解,最终得到了一堆解决方案,例如

我想折叠数值系数,同时暴露指数的理性性质,即我希望我的代码输出

但是,当我使用 evalf() 时,我得到

有没有办法让 sympy 不评估指数,甚至只是提取答案的非符号部分,这样我就可以创建自己的打印函数,以我想要的方式格式化输出?

0 投票
1 回答
92 浏览

python - 在 Python 上评估导数时出错(使用 .subs、.evalf 和 .lambdify)

我试图单独计算泰勒展开的元素,但没有得到我应该得到的结果。逼近的函数是 x**321,围绕 x=1 的泰勒展开式的前三个元素应该是: 1 + 321(x-1) + 51360(x-1)**2 出于某种原因,代码与第二个术语相关联的不起作用。请参阅下面的代码。

我获得运行此代码的打印是

我也使用了 .evalf 和 .lambdify 但结果是一样的。我不明白错误来自哪里。

我显然只是从语言开始,所以谢谢你的帮助。

0 投票
0 回答
42 浏览

python - evalf 没有为代数表达式生成数值结果

我有这种同情的表情。

我不确定为什么 evalf 函数不能正确评估这个表达式,但我仍然没有从中得到实际的数值?

运行以下代码后:

对于 ansx,我得到以下信息:

在此处输入图像描述

其中 root[i][0] 是:

在此处输入图像描述

我创建了一个显示 evalf 应该适用于 sympy 的最小表达式:

0 投票
0 回答
47 浏览

python - SymPy 中 evalf 的错误结果,但仅适用于某些精度值

我想我遇到了一个evalf()通过替换传递的 Sympy 方法的错误。

偶然地,如果我将变量替换为x整数而不是Float. 有趣的是,这只发生在某些精度值上。

该表达式看起来有些随意,但如果我尝试进一步简化它,错误就会消失。这是一个最小的工作示例

预期的结果是返回的元组应该包含相似的数字1,并且almost1非常接近。但是,对于通过替换toprec获得的结果的某些值是。(虽然替换得到的那个接近正确的那个。)1expralmost1

您可能会问:“表达式错误的值prec是什么? ”。通过运行代码

我得到了这个看似完全随机的列表

我把它贴在这里看看我是否在我的代码中犯了一些错误,否则我打算在 Sympy 的 github 上发布一个错误问题。

0 投票
1 回答
44 浏览

python - 如何替换python数学方程中的数据框列?

我对 sympy 有疑问,我有一个必须用公式计算的数据框列,并且公式是字符串格式我使用的是 sympy,它只取一个值,而不是我的代码

当我使用这个得到一个错误说这个系列必须属性。有func什么建议吗?

0 投票
0 回答
31 浏览

determinants - 符号行列式或 evalf 中的错误?

在评估矩阵的符号行列式时,我在 evalf 函数中发现了一个严重但无法解释的错误,请参见下面的 MWE

产生以下答案:

det1:3.05615930451006e-7

det2:-439498375.118201

det3: 0

显示 sympy.det() 的符号输出上的 evalf() 有一个严重的错误——所有三个答案都应该接近于零(在数字误差的 ~1E-7 范围内)。方法 1 和 2 工作正常,但显然 det2 方法有一个巨大的错误。对 evalf 使用更高的精度并没有帮助。

感谢任何人的帮助:有人知道我是否在这里犯了错误,或者 sympy 这里有一个大错误吗?

0 投票
1 回答
40 浏览

python - Sympy 演算:在评估 sympy 表达式时,python 输出 log(2) 和 e^0.3 作为符号,而不是计算它们的值

所以我必须编写一个 python 脚本来使用牛顿法查找函数的根,并且我的代码在计算某个点的导数时不计算浮点数,它只计算 sin(x) 部分,留下 e^x和 log(2) 原样。我被卡住了,请帮忙。到目前为止,这是我的代码:

PS: evalf 也不起作用, subs(x, 0.4) 也不起作用