用的 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 xxm459259 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 然后用模型能帮你算出系数 |