我用syy来象征性地解决一个非常简单的方程,但我得到的变量解是一个空矩阵!这是代码:
from sympy import *
x = Symbol('x')
l_x = Symbol('l_x')
x_min = -6
x_max = 6
precision_x = 10**8
solve(((x_max-x_min)/((2**l_x)-1))/precision_x, l_x)
print(l_x)
Run Code Online (Sandbox Code Playgroud)
我尝试了一些其他简单的方程式,例如:
solve(x**2 = 4, x)
Run Code Online (Sandbox Code Playgroud)
后者完美地运作; 我只是不明白为什么前一个不起作用!
给出求解的表达式具有假定的rhs,0其中没有值l_x可以满足.尝试这样的事情:
from sympy import *
q, r, s, t = symbols("q r s t")
eq = (q-r)/(2**s-1)/t
solve(eq-1,s)
Run Code Online (Sandbox Code Playgroud)
输出是:
[log((q - r + t)/t)/log(2)]
Run Code Online (Sandbox Code Playgroud)
要显式创建一个非零rhs的方程对象,您可以执行以下操作:
solve(Eq(eq,1),s)
Run Code Online (Sandbox Code Playgroud)
这很简单:你的等式没有结果.
等式是12/((2**l_x)-1))/1e8 = 0没有解决方案的.
看看是什么y = 12/((2**x)-1))/1e8样的(从wolframalpha复制):
要进行比较,请尝试解决,例如12/((2**l_x)-1))/1e8 = 1:
>>> solve(((x_max-x_min)/((2**l_x)-1))/precision_x - 1, l_x)
[(-log(25000000) + log(25000003))/log(2)]
Run Code Online (Sandbox Code Playgroud)
奇迹般有效!
| 归档时间: |
|
| 查看次数: |
266 次 |
| 最近记录: |