首页 文章

如何使用scipy odeint获取多种解决方案?

提问于
浏览
-1

我正在学习如何在 Scipy 中使用 odeint 来解决ODE . 现在我试图解决具有半无限势阱的薛定谔方程:

V(x) = -v (x<0)
V(x) = 0 (x>0)
v > 0
-f''(x)/2 +V(x)f(x) = energy*f(x)
-v < energy < 0

所以确切的解决方案应该是

C1*sin(x)+C2*cos(x) (x<0)
C3*exp(x)+C4*exp(-x) (x>0)

我在x <0区域(给定 f(x0),f'(x0),x0<0 )中设置了一个起始点,但我获得的解决方案始终是x> 0区域中的exp(x) . 但exp(-x)在物理学中更有意义 . 如何使用 odeint 获得此解决方案?

1 回答

  • 1

    正如你所说,SciPy的odeint解决了ODE,但Schroedinger方程是PDE(偏微分方程) . 您可以将空间坐标离散化并将其视为耦合ODE系统,但通常的方法是通过求解相应的特征值问题来找到解的特征基 .

相关问题