gpt4 book ai didi

python - 方程根 : parameter doesn't get simplified

转载 作者:行者123 更新时间:2023-12-01 05:09:44 25 4
gpt4 key购买 nike

我正在使用 Python 和 Sympy。

我需要解下面的方程,找到 4 个根(omega 是我的未知数):

deter= 0.6*omega**4*cos(omega*t)**2 - 229.0*omega**2*cos(omega*t)**2 + 5880.0*cos(omega*t)**2

我尝试使用解决:

eqcarr=solve(deter,omega,exclude=[t])

我得到这个输出:

[-18.8143990830350, -5.26165884593044, 5.26165884593044, 18.8143990830350, 1.5707963267949/t, 4.71238898038469/t]

我只需要前 4 个值,而不需要带有 t 系数的值。我希望 cos(omega*t)**2 在求解中得到简化,但这并没有发生。

最佳答案

根据文档solve将不会解析exclude中传递的任何自由符号。

'exclude=[] (default)' don't try to solve for any of the free symbols in exclude; if expressions are given, the free symbols in them will be extracted automatically.

它不是为了过滤溶液。

您可以通过这样做来解决您的问题:

In [10]: from sympy import *
In [11]: from sympy.abc import omega, t
In [12]: deter= 0.6*omega**4*cos(omega*t)**2 - 229.0*omega**2*cos(omega*t)**2 + 5880.0*cos(omega*t)**2

In [13]: eqcarr=solve(deter,omega,exclude=[t])

In [14]: filtered = [i for i in eqcarr if not i.has(t)]
In [15]: filtered
Out[15]: [-18.8143990830350, -5.26165884593044, 5.26165884593044, 18.8143990830350]

关于python - 方程根 : parameter doesn't get simplified,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24424909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com