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

时间:2014-10-10 12:45:14

标签: scipy ode odeint

我正在学习如何在odeint中使用Scipy来解决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&lt; 0区域(给定f(x0),f'(x0),x0<0)中设置了一个起点,但我获得的解决方案总是在x> 0区域中的exp(x)。但exp(-x)在物理学中更有意义。如何使用odeint

获得此解决方案

1 个答案:

答案 0 :(得分:1)

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