用的 sympy 中的 solve,这个库是不是只能解有解的方程?
p1 = 0.8
p2 = 1
r1 = 500
r2 = 3500
x = symbols('x')
print('in')
s=solve(p1*exp(-x*r2)-p2*exp(-x*r1)+p2-p1, x)
print(s)
一直输出不了 s。。。 像这种方程用 python 怎么解?
1
est 2018-04-23 10:12:13 +08:00
又来一个廖学峰课后作业系列?
|
3
l1093178 2018-04-23 10:31:50 +08:00
WolframAlpha 了解一下?
|
5
princelai 2018-04-23 12:14:08 +08:00 via Android
前两天不是刚问完,sympy
|
7
asdf123101 2018-04-23 12:23:43 +08:00 via Android
自己写个二分法?知道导数可以用牛顿。这种方程自己写一个很快的。
|
8
sciooga 2018-04-23 12:47:07 +08:00
这样行不行?
import random while True: x = random.random() 然后将 x 带入方程两边如果相等就 break |
11
pandachow 2018-04-23 14:05:28 +08:00
sympy 啊。。。
|
13
idlerlestat 2018-04-23 14:22:01 +08:00 via iPhone
sympy 是给解析解,你这个方程没有解析解啊。
|
14
flyzy2005 OP @idlerlestat 嗯。。所以我来问应该用什么
|
15
idlerlestat 2018-04-23 16:58:59 +08:00
@flyzy2005 numpy 和 scipy.optimize.fsolve 就行
|
16
inflationaaron 2018-04-23 20:11:15 +08:00 via iPhone
这种需求用 Mathematica 啊
|
17
20150517 2018-04-24 06:00:27 +08:00 via Android
不是我说,这种最好用 tensorflow,做个 variable 然后用模型能帮你算出系数
|