一维定态薛定谔方程求解的两种方法(matlab)
量子力学中,薛定谔方程是核心。薛定谔的猫描述了态的概念,但实际研究中,要想细致地研究一个原子,分子,甚至一块物质,都需要从薛定谔方程的求解开始。下面将会以我的一次作业的题目为例,向大家展示整个求解过程。
薛定谔方程的完整形式为:
以上方程有对时间的微分,还有对空间的微分。而对于定态的薛定谔方程,我们只需考虑某一时刻的波函数,所以直接可将能量算符替代为E(一个常数)。
(1)分段势能法
对于空间的梯度,如果只是一维情况的话,可以直接将梯度算符改为微分。所以一维定态薛定谔方程就显得很简单:
就是一个简单的二阶微分方程。此方程的解想必一眼就可以看出来。就是
这个解是假设U(x)与x无关,是一个常数才得出这个自由波的解。类似与微积分中的方法,对于一个任意势场函数,我们可以假设在某一个极小的dt范围内,势函数是不变的,因此可以将任意一个势函数用有限个一定宽度的恒定势场来代替。如下图所示:
其中的各个小段的波函数就可以表示为
这样就会有2N个方程,然后利用内部的n-1个边界条件(界面处波函数连续,波函数的倒数连续),和两端的衔接(假设入射为1,则A1=1, B1=r; 且最终透射端没有反射波,AN=t, BN=0. ),就可以写出2N个线性无关的方程,从而可以将系数都求解出来。
注意,这种情况下,我们无从得知基态的能量值,以及能量的分立的特性。但是从这种角度出发,我们可以很容易计算出波在这样的势函数中传输特性,可以计算出入射端的反射系数R,以及不同能量所对应的入射波的透射系数T。
下面将以一个例子应用上述关系。
根据上图中所示的势函数求解薛定谔方程,得到透射系数和反射系数随温度的变化关系为
详细过程,参见https://github.com/elike-ypq/elike/tree/master/physics
(2)差分法
现在我们从另外一个角度出发,一维定态薛定谔方程如下
在这里,我们要求的是,可以将分为N份,采用数值计算方法,将微分方程变成差分方程。参考相应书籍可知
可以化为
对于上述波函数也可以转化为类似的形式,
所以可以由矩阵T的特征值对应能量,特征向量对应于波函数在每一个节点的解。
大家可以从下面的例子中详细分析求解的过程
基态和第一激发态的波函数画图如下:
可以看出随着这两个势阱远离,基态和第一激发态的能量差值逐步减小,逐步趋近于只有一个势阱时所对应基态与第一激发态的差值,所以当两个原子靠得越近的时候,能量量子化的现象也就越明显,可以理解为能级之间的排斥作用。
所有代码参见https://github.com/elike-ypq/elike/tree/master/physics