【发布时间】:2021-04-01 21:43:46
【问题描述】:
你能告诉我吗,我需要在 python 中使用 sympy 符号求解一个线性方程组。我已经对线性方程组的自动创建进行了编程,方程的数量由数字 n(预定义)确定。我也设置了变量。 结果如下:
########## system of linear equations ##########
[-mui0*exp(Ea0**2/(T0*k)) - mui0*exp(Ea1**2/(T0*k)) - mui0*exp(Ea2**2/(T0*k)) - mui0*exp(Ea3**2/(T0*k)) + (Eb0**2/(T0*k) - 2*Ec0)*exp(Ea0**2/(T0*k)) + (Eb1**2/(T0*k) - 2*Ec1)*exp(Ea1**2/(T0*k)) + (Eb2**2/(T0*k) - 2*Ec2)*exp(Ea2**2/(T0*k)) + (Eb3**2/(T0*k) - 2*Ec3)*exp(Ea3**2/(T0*k)), -mui1*exp(Ea0**2/(T1*k)) - mui1*exp(Ea1**2/(T1*k)) - mui1*exp(Ea2**2/(T1*k)) - mui1*exp(Ea3**2/(T1*k)) + (Eb0**2/(T1*k) - 2*Ec0)*exp(Ea0**2/(T1*k)) + (Eb1**2/(T1*k) - 2*Ec1)*exp(Ea1**2/(T1*k)) + (Eb2**2/(T1*k) - 2*Ec2)*exp(Ea2**2/(T1*k)) + (Eb3**2/(T1*k) - 2*Ec3)*exp(Ea3**2/(T1*k)), -mui2*exp(Ea0**2/(T2*k)) - mui2*exp(Ea1**2/(T2*k)) - mui2*exp(Ea2**2/(T2*k)) - mui2*exp(Ea3**2/(T2*k)) + (Eb0**2/(T2*k) - 2*Ec0)*exp(Ea0**2/(T2*k)) + (Eb1**2/(T2*k) - 2*Ec1)*exp(Ea1**2/(T2*k)) + (Eb2**2/(T2*k) - 2*Ec2)*exp(Ea2**2/(T2*k)) + (Eb3**2/(T2*k) - 2*Ec3)*exp(Ea3**2/(T2*k)), -mui3*exp(Ea0**2/(T3*k)) - mui3*exp(Ea1**2/(T3*k)) - mui3*exp(Ea2**2/(T3*k)) - mui3*exp(Ea3**2/(T3*k)) + (Eb0**2/(T3*k) - 2*Ec0)*exp(Ea0**2/(T3*k)) + (Eb1**2/(T3*k) - 2*Ec1)*exp(Ea1**2/(T3*k)) + (Eb2**2/(T3*k) - 2*Ec2)*exp(Ea2**2/(T3*k)) + (Eb3**2/(T3*k) - 2*Ec3)*exp(Ea3**2/(T3*k))]
###### vars ######
[Ea0, Ea1, Ea2, Ea3, Ea4, Eb0, Eb1, Eb2, Eb3, Eb4, Ec0, Ec1, Ec2, Ec3, Ec4]
###### ###### ###### ###### ###### ###### ###### ######
现在当我写:a = linsolve(list_eq,list_var)
the error gets out : SympifyError: Sympify of expression 'could not parse '['' failed, because of exception being raised:
TokenError: ('EOF in multi-line statement', (2, 0))
如何为 sympy 找到线性方程组的解
【问题讨论】:
-
你应该展示完整的代码来演示这个例子。我不知道如何查看您看到的错误消息。在任何情况下,您显示的方程式在
vars中给出的符号中都不是线性的。