3.5在量子力学中的蒙特卡洛方法 量子力学中的波函数是直接与几率密度相关的量, 与波函数 相关的分布密度函数具有关系式 xdtxcxdtxp GGGG 2 ),(),( Ψ= . 波函数),( tx G Ψ也被称为几率幅度。因此人们很自然地想到可以利 用蒙特卡洛方法来求解量子力学问题。 3.5.1量子力学回顾 量子力学的基本方程是薛定格方程 t itxH ? ?Ψ =Ψ = G ),( ? . 其哈密顿量算符  H可以写为 V m H ? 2 ? 2 2 +??= = . 从费曼的观点来看,一个粒子在某个时刻t,某空间位置 G x的波 函数应当是来自所有的初始态位置“传播”到该时空点的幅度。 即 () ( )( ) 00000 ,,;,, xdtxtxtxDtx F GGGGG Ψ=Ψ ∫ +∞ ∞? . 上式中的称为“传播子”。该传播子可以表示为 (Dxtxt F GG ,; , 00 ) ()Dxtxt x i Ht t x F (,; , ) exp  G G G = G 00 0 0 =?? ? ? ? ? ? ? . 如果 ()x n G ψ 为与时间无关的哈密顿量  H的本征态波函数,则它满足 的薛定格方程为 () ( )xExH nnn GG ψψ = ? , 波函数也可以用展开式表示为 ( ) ( )xtctx n n n GG ψ ∑ =Ψ )(, . 其中c。由这些表达式,我们得到传播子的一 个精确表示为 ()( )txxxdt nn ,)( * GGG Ψ= ∫ +∞ ∞? ψ () ( ) ( ) == GGGGGG / 0 * 0 / 00 ||0,;, tiE n n n n n tiE nF nn exxxextxtxD ?? ∑∑ === ψψψψ . 假定该等式在延拓到t为虚值时仍成立,令ti= ? τ,则有 ()( ) ( ) = GGGG / 0 * 00 0,;, τ ψψ n E n n nF exxtxtxD ? ∑ == . 1 当τ足够大时,特别是在( ) τ >> ?= / EE 10 时(是基态能量,为 第一激发态的能量),(3.5.8)式的右边主要是来自能量最小的 基态能量的贡献。如果我们取 0 E 1 E 0 E G G xx= 0 并忽略其它的贡献项,则 有 () = GGG / 2 00 0 )(0,;, τ ψτ E F extxixD ? ≈=? . 即 ( )0,;,)( / 2 0 0 xixDex F E GGG = τψ τ ?= . 利用归一化的要求: 1)( 2 0 =xdx ∫ GG ψ ,基态波函数绝对值的平方可用传 播子表示为 ()() ? ? ? ? ? ? ? ? ? ? ? ? ??= ? ∞+ ∞? ∞→ ∫ 1 2 0 0,;,0,;,)( lim xdxixDxixDx FF GGGGGG ττψ τ . 我们现在必须计算传播子。将tt? 0 时间间隔分为N+1个等时间间 隔ε的小区间,则此间隔为 1 0 + ? = N tt ε ,并且ttk k = + 0 ε, ( , 。根据坐标表象的完备性恒等式 )1,...,1,0 += Nk 1+ =t N t dx x x′′ ′ ?∞ +∞ ∫ GGG =1. 则 0 / ? 11 / ? / ? 12100 ......),;,( xexxexxexxdxdxdtxtxD Hi N Hi NN Hi NNF GGGGGGGGGGG === εεε ? ? ?? + +∞ ∞? ∫ = = . () ∏ ∫ = + +∞ ∞? + N k kkkkFN txtxDxdxdxd 0 121 ,;,... GGGGG ε 当时, N →∞ () GGG = GG = xe x x i p m Vx x n iH nn n ? ?? =?+ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ε ε / exp  1 2 1 2 ( ) 111 2 ? /)](/ ? 1[ +?? ??=+?= nnnnnn xHxixxxOHix GG = GGG = G εδεε . 引入完备的动量态矢,则 () ? ? ? ? ? ? ? ? ???= ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? +∞ ∞? ? ∫ = G GGG G G = G m p ixxpi pd x m pi x nnnn 2 expexp 22 ? exp 2 11 2 ε π ε = ()? ? ? ? ? ? ? ? 2 1 2 exp nn xx m i i mh GG= εε . 取连续极限得到 2/ 00 lim ),;,( N N F i mh txtxD ? ? ? ? ? ? = ∞→ ε GG () () ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ∑ ∫ ∏ = ? ∞+ ∞? = N n n nn N j j xV xx m i xd 1 2 1 1 2 exp G GG = G ε ε [][]= GGG /,exp 0 1 xxiSxdA j N j N ∫ = ∏= . 其中常数为A A mh i = ε , 为沿路径的经典作用量。 S 2 ()() 00 2 1 2 tt tt dx S Ldt m V x t dt dt ?? ?? == ??? ?? ?? ∫∫ G G . 公式表示传播子是由连接初态),( 0 0 tx t G 和末态( ),tx t G 的所有路径,通 过相因子ex所做的贡献。其中是系统的拉氏量。是 所有各种可能的分段直线段构成的路径( [ p /iS = ] L [] Sx x GG 0 , Ntt xx + = 0 εεt x + →→.... t x→ 00 GGGG ) 之和的总作用量。同样,如果我们假定将时间t延拓到虚数范围 时,上述等式仍然成立。令t i= ? τ,作用量 [ ] x kk Sx G G , +1 可以推出为 [] ()τ τ dxV d xdm idtt dt xd xLxxS k k k k t t t t kk ∫∫ ++ ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ??=? ? ? ? ? ? = + 11 2 1 2 ,,, G GG GGG . ()ττ τ τ dxEi k k ∫ + = 1 , G 利用上式,可以得到 1 0 1 2 0 1 exp)( lim ? = ∞→ ? ? ? ? ? ? ? ? ? ? ? ? ?∏= ∫∫ ZEdxdx j N j τ τ τψ = GG . 其中 ? ? ? ? ? ? ? ? ?∏= ∫∫∫ = τ τ 0 1 1 exp EdxdxdZ j N j = GG . 上式中指数中有一个路径积分,它的积分是沿路径 xxxxxxx Ntttt GGGGGGG ==→→→== +++ εε )1(0 000 .... 0 x G G x N+1 x G ,即我们把路径积分的空间起始点 和分别放在上,则该积分为 () () N N k k kk xxxExV xxm Ed GGG = G GG == ....,, 2 1 1 0 2 1 0 ε ε ε τ τ = ? ? ? ? ? ? ? ? +? ? ? ? ? ? ? = ∑ ∫ = + . 因而对应每一条路径,就有一个能量。 () ? ? ? ? ? ? ? ? ? ? ? ? ?∏= ∫ = ? Nj N j xxxExdZx GGG = GG ....,,exp)( 1 1 1 2 0 ε ψ . 由于取,并对进行积分,此时须加进一个 GG xx= 0 0 x G δ() G G xx? 0 函数在被 积函数中,则上式可以等价写为: () () ? ? ? ? ? ? ? ? ? ? ? ? ??∏= ∫∫ ? = Nj N j xxxEZxxxdxdx GGG = GGGGG ....,,exp)( 10 1 0 1 0 2 0 ε δψ . 其中Z为配分函数 () ? ? ? ? ? ? ? ? ? ? ? ? ?∏= ∫ = Nj N j xxxExdZ GGG = G ....,,exp 10 1 ε . 上面的公式给出量子力学中的费曼路径积分在欧氏时空的表 示,揭示出量子理论与统计力学之间的深刻联系。这时的路径 积分与配分函数两者在数学上是相同的,因而我们可以用计算 经典统计力学配分函数的做法来计算路径积分问题。 3.5.2路径积分量子蒙特卡洛方法 3 下面我们就用路径积分蒙特卡洛方法求解薛定格方程的基态 能量和基态波函数的数值。 从上面两个公式可以使我们联想到玻尔兹曼分布,其中变量 {} i x G 的位形分布密度函数正好是将玻尔兹曼分布中的 k 换成 T B ε=。 () 2 ) 0 xψ 可以被视为函数δ( G G xx? 0 在位形 { },...,, 10 N xxx GGG (每个位形对应一条 路径)在此分布下的平均值。其分布的数学表示为 () j N j Nj N j N xdZxxxExdxxxp GGGG = GGGG 1 1 10 1 10 ,....,,exp),....,,( = ? = ∏ ? ? ? ? ? ? ?=∏ ε . 这里存在的一个关键问题是:上面公式中给出的px x x N ( , ,...., ) G G G 01 具体 形式计算起来并不方便。在计算归一化常数Z ?1 时,包含了一个 由(3.5.24)式所示的积分。这个计算实际上是一个高维的多重 积分的计算。 如果我们采用马尔科夫随机游走的重要抽样方法— Metropolis方法,将是十分有效的。利用Metropolis方法,按 照类似玻尔兹曼分布的分布函数来抽取若干位形{ , ...., } G GG xx x N01 ,便 可以计算出基态波函数 () 2 0 xψ 的估计值,然后对该估计值求平均 便得到() 2 0 xψ的值。 0t 1 x x 2 x 1j x ? j x j x ε 2ε jε Nε (和)0,x ),( τx的相邻的两条路径。 作为采用Metropolis方法来计算基态波函数的例子,下面 我们将计算一维简谐振子的基态能级。假定系统中有一个质量 4 为m的粒子,其一维简单简谐势为 Vx . () m x= ω 22 2/ 我们取= / mω为单位长度,1/ω为时间ti= ? τ中的τ的单位。 () () () N N k k N N k k kk xxxExxxExV xxm Ed ....,, 22 1 10 2 0 0 2 1 ε εε ε ε τ τ +? ? ? ?= ? ? ? ? ? ? ? ? +? ? ? ? ? ? ? = ∑ ∫ ∑ == + === k 2 = ? ? ? ? k xx 0 1 ε ? ? ? ? ? ? ? ? + x ....,, 10 . (1) 选择任意的、连接N+1个时间间隔、且x N+ x= 10 的一条路径, 计算式中的能量; (2) 再接着选一系列路径,每条路径与前一条路径最多只有在 一个时刻(例如 j τ),有不相同的空间点。采用Metropolis 方法来确定满足上面要求的新径迹。其中将随机定下的坐 标改变到的过渡几率为 j x j x′ ( )[ ]w E jj ??= ′ εexp,1min ,E?为两条分别 包括在 j τ时刻坐标为 j x′和的两条径迹的能量差。这样的随 机游走抽样得到的径迹也许会与前一个径迹相同。 j x (3) 每当新径迹选出后,就计算被积函数( )δ xx? 0 的估计值,并 累加到求和之中。最终该求和所得的值与抽样路径的总数 相除所得到平均值,就得到 ( ) 2 0 xψ 的数值结果。按上述方法, 游走足够多的步数后,我们就可以得到x点上的 () 2 0 xψ 的值。 在离散化时,τ选多大的数值才可以保证(3.5.11)公式有 效?这个问题只有靠试验和结果的收敛性来决定。如采用上面 所述的时间单位,τ值一般选在10—16的范围比较合适。 确定波函数值时变量x合适的取值范围必须由经验来确定。 建议:如采用前面所述的长度单位,x取值范围在区间内。 初始路径应该选择连接 [,]?33 xx 0N 1 0= = + 的路径。最终得到的结果应当 与初始位形的选择无关。 波函数决定下来后,基态能量可以用哈密顿算符作用于波函 数来得到,即 dxx x E 0 2 2 2 * 0 0 2 1 ψ ? ? ψ ω ? ? ? ? ? ? ? ? +?= ∫ = . 由于基态波函数没有结点,因而 () () 2 00 xx ψψ = . 利用二阶偏微分的差分公式 ()()()? ? 2 2 2 f x fx h fx fx h h = ?? + + . 和公式(3.5.28),我们就可以通过各个离散点上的波函数值 x i 5 得到基态能量。 3.5.3变分量子蒙特卡洛方法 我们需要求解基态本征能量和基态本征态波函数 0 E ()x G 0 ψ 。 选择一个试探波函数ψ,然后用蒙特卡洛方法计算在此试探 波函数下的变分能量,从而寻找基态波函数和基态能量。这里 选择试探波函数ψ要求物理上要合理,它也可以用一个或几个调 节参数来改变其值。假定试探函数为实函数,则变分原理要求 在此试探波函数下的能量平均值应当大于或等于基态能量值, 即 [ ] 0 2 12 )( )( ? )()( | ? E xdx xdxHxxH HE try ≥= >< >< >==< ∫ ∫ ? GG GGGG ψ ψψψ ψψ ψψ . 其中 1 ? () ()x Hxψ ψ ? GG 可以看成为“局域能量”ε 。如果试探波函数ψ就 是基态波函数,则上式中的等号成立。一般情况下选择的试探 函数只能是一个近似的估计函数。由哈密顿量的表示可以得到 该局域能量的公式 V m H zy xi i +??=≡ ∑ = ?? , 21 2 1 2 ? ψψψψε = . 采用Metropolis方法,按)( 2 x G ψ的分布产生个位形 {}, 则从公式(3.5.29)可以得到试探波函数对应的能量平均值 N N xxx GGG ,...,, 21 try E 为 ∑ = >≈=< N i itry x N HE 1 )( 1 G ε . 不断改变试探波函数的值,并计算试探能量的平均值< >H,直到 取得>< H的最小值。这时得到的试探波函数和能量平均值>< H下 限就是基态波函数和基态能量本征值。 0 E 下面我们以一个一维的量子体系的变分法蒙特卡洛模拟步 骤: (1)选择一个物理上合理的近似基态波函数 )(x i ψ 作为试探波函 数。 (2)采用Metropolis 方法,按照分布密度函数 )( 2 x i ψ 随机抽取 个位形 { ,计算能量平均值。 N } N xxx ,...,, 21 )(i try E (3) 改变试探波函数中的变分参数值,使得 )(x i ψ 的值在区间 [ ],δδ? 内随机变化一个小量,即 )()( 1 xx ii + →ψψ ,重复(2)中能量平均值 的计算得到 E 。 )1( +i try 6 (4)计算能量平均值的改变值,如果 )()1( 1 i try i tryi EEE ?=? + + 0 1 ≤? +i E,则接 受这一个 ψψ →)(x i )( 1 x i+ 的变化;否则,便拒绝这个改变回到第(3) 步,重新选择试探波函数的变分参数值,改变试探波函数的值。 (5)返回到第二步,反复循环直到能量平均值不再有明显的改 变为止。 如果经过M次被接受的能量改变后,能量平均值不再有明显的 改变,则)(x M ψ和分别是基态波函数和基态的能量本征值。 变分蒙特卡洛方法与随机游走方法的结合可以得到很好的试探 函数,进而求出很准确的基态能量。 )(M try E 7