SymPy设置实数变量得复数解及相关求解问题咨询
SymPy求解方程的问题及代码示例
遇到的问题
- 已将
pop等变量设置为real=True,但求解结果中pop却是复数,不符合实际物理意义(pop不应为复数) - 求解目标变量
sig(定义为sig1+sp.I*sig2)时,解中仍包含sig1和sig2,sig应作为独立的左侧变量出现在解中 - 求解过程中有时会得到平凡解,不知道如何排除
代码示例
import sympy as sp chi, alpha = sp.symbols('chi alpha') pop, delta,T1, T2, sig1, sig2, E1, E2, dip1, dip2, hbar, pop_eq, omega, c, N = sp.symbols('pop delta T1 T2 sig1 sig2 E1 E2 dip1 dip2 hbar pop_eq omega c N', real='True') dip = dip1+sp.I*dip2 dipc = sp.conjugate(dip) E = E1+sp.I*E2 Ec = sp.conjugate(E) sig = sig1+sp.I*sig2 sigc = sp.conjugate(sig) eq1=sp.Eq(((sp.I*delta-1/T2) * sigc) - (sp.I/hbar) * (dip*E*pop),0) eq2=sp.Eq(-(pop+1)/T1 + (2*sp.I/hbar) * (dipc*Ec*sig-dip*E*sigc),0) result = sp.solve([eq1, eq2],(pop, sig))
内容的提问来源于stack exchange,提问作者Purple Monkey
相关产品推荐
相关产品推荐

