【发布时间】:2017-07-12 23:46:28
【问题描述】:
大家好,我正在运行一个解决一些方程的小型 python 程序,当我获得第一个结果时,问题就出现了,为 D 求解第一个方程,我有 D 取决于 A 和 C,然后我使用 subs on下一个方程与前一个结果,但 sympy 不允许我这样做,所以我怎样才能操纵这个结果并使 subs 成为可能。
提前致谢。
import sympy as sp
g, a, A, C, D, K, x = sp.symbols("g a A C D K x")
X=(A*sp.cos(g*x/a))+(sp.sin(g*x/a))+(C*sp.exp(-g*x/a))+(D*sp.exp(-g*(a-x)/a))
dx1=sp.diff(X,x,1)
dx2=sp.diff(X,x,2)
eq1= sp.Eq(X.subs(x,0),0)
eq2= sp.Eq(dx2.subs(x,0)/dx1.subs(x,0),K)
eq3= sp.Eq(X.subs(x,a),0)
eq4= sp.Eq(dx2.subs(x,a)/dx1.subs(x,a),-K)
D1=sp.solve(eq1,D)
eq33=D1.subs(D,D1)
C33=sp.solve(eq33,C)
Df=D1.subs(C,C33)
eq22=sp.subs(eq2,[C,D],[C33,D11]);
A22=solve(eq22,A)
pretty(A22)
【问题讨论】:
-
哦,对不起,这是一个错误,它的 D1
-
有一个编辑功能,用它来清理你的代码。
D11是什么?你想用;完成什么?习惯c编程? ;-)