小编sp8*_*rks的帖子

是否有可能在Python中求解带有单位的符号?

我想用求解器求解方程,但方程有带单位的数字。我尝试使用 pint 作为单位,使用 sympy 作为求解器

import sympy as sy
import pint
import scipy.constants as cnst

u = pint.UnitRegistry()
Q = u.Quantity

k=cnst.k*u.joule/u.K
T=1100*u.K

x = sy.Symbol('x')

D0 = 0.214*u.cm**2/u.sec
D1=D0*(sy.exp((-3.65*u.eV)/(k*T)))
print(sy.erf(((40e-9*u.m).to('cm')/(2*(D1*60*u.sec)**(1/2))).magnitude))
answer = sy.solve(1-sy.erf(((40e-9*u.m).to('cm')/(2*(D1*x*u.sec)**(1/2))).magnitude - 0.00001),x)
print(answer)
Run Code Online (Sandbox Code Playgroud)

但什么也没有返回。知道我可以尝试什么吗?

python solver units-of-measurement sympy

5
推荐指数
1
解决办法
638
查看次数

标签 统计

python ×1

solver ×1

sympy ×1

units-of-measurement ×1