モンテカルロ積分を用いたヘリウム原子の摂動計算
JuliaLang Advent Calendar 2023 12日目です🎄
はじめに
ここではヘリウム原子の電子状態計算を題材として摂動法を学びます. 解析的な計算を避けて気軽に計算できるよう波動関数にはAntique.jlを使用し, 積分にはMonteCarloIntegration.jlを使用します. なお, 摂動論のちゃんとした説明は東京工業大学の武藤先生の講義ノートを参照してください.
パッケージの使い方
ヘリウム原子
using Pkg; Pkg.add("Antique")
Z=2
を指定します.
using Antique
He⁺ = antique(:HydrogenAtom, Z=2, Eₕ=1.0, a₀=1.0, mₑ=1.0, ℏ=1.0)
核の質量が十分に大きいときの水素様原子では, 主量子数
で与えられるので,
となります. これは先ほど定義したモジュールHe⁺
の関数E()
にn=1
を指定して次のように計算できます.
He⁺.E(n=1)
-2.0
エネルギーの単位について, 2018年CODATA推奨値の換算係数を用いると次のような値に換算できます.
Eₕ2eV = 27.211386245988 # eV # https://physics.nist.gov/cgi-bin/cuu/Value?hrev
println("E = ", He⁺.E(n=1), " Eₕ")
println(" = ", He⁺.E(n=1) * Eₕ2eV, " eV")
E = -2.0 Eₕ
= -54.422772491976 eV
次に, 波動関数の規格化条件を確認しましょう. 積分にはMonteCarloIntegration.jlを使用するので次のコマンドを実行してインストールします.
using Pkg; Pkg.add("MonteCarloIntegration")
このパッケージで次の積分を計算する例です.
using MonteCarloIntegration
res = vegas(r -> abs(He⁺.ψ(r...))^2 * r[1]^2 * sin(r[2]), [0,0,0], [100,π,2π], atol=1e-5)
println("<ψ|ψ> = ", res.integral_estimate, " ± ", res.standard_deviation)
<ψ|ψ> = 0.9983502045775035 ± 0.0007877199112562297
おおよそ1が得られましたので, 正しく計算できると考えられます.
プログラムの説明
プログラムについて補足します. まずr[1]
はr[2]
はr[3]
はHe⁺.ψ(r...)
はsplat記法を用いたHe⁺.ψ(r[1],r[2],r[3])
の略記です.
ハミルトニアン
ハミルトニアンの導出
ヘリウム原子を2つの電子と1つの原子核(アルファ粒子=中性子2つと陽子2つ)からできた3体系として扱います. 電子と核はいずれも質点と考え, 相互作用はクーロン力のみとすれば, 非相対論的なハミルトニアンは次式で書き表されます.
これを原子単位(詳細はIUPAC Greenbook 3.2.9を参照)で無次元化すると
となります. ここで, ハミルトニアンはハートリーエネルギー
このノートでは, これを非摂動ハミルトニアン
と摂動項
に分けて考えていきます.
非摂動のエネルギーと波動関数
摂動論では非摂動の問題は既に解けているという前提から始まりますので, まずは非摂動(電子間反発を無視した)ハミルトニアン
の和になっています. これらの固有値をそれぞれ
の2式を用いれば
となり, 非摂動ハミルトニアン
波動関数についての注意
しかし, Schrödinger方程式を満足するだけではダメです. 電子(フェルミ粒子)が2つ以上含まれる系では, それらの空間座標およびスピン座標の置換に対して波動関数は反対称にならなければいけません. これはSchrödinger方程式とは独立した公理であり, Schrödinger方程式を満足するだけは自動的に満足されないため, あらかじめ対称性を満足するような基底関数のみを用いるなどして計算を行わなければいけません. この辺りの話はA.ザボ, N.S.オストランド著, 大野公男, 阪井健男, 望月祐志訳『新しい量子化学 上 電子構造の理論入門』(東京大学出版会, 1987)の2.1.3に書いてあります. とはいえ, 今回は
さて, 具体的なエネルギーを求めましょう. 単純な和ですので, 下記のように計算できます.
Eₕ2eV = 27.211386245988 # eV # https://physics.nist.gov/cgi-bin/cuu/Value?hrev
println("E = ", (He⁺.E(n=1) + He⁺.E(n=1)), " Eₕ")
println(" = ", (He⁺.E(n=1) + He⁺.E(n=1)) * Eₕ2eV, " eV")
E = -4.0 Eₕ
= -108.845544983952 eV
次に波動関数の規格化条件を確認しましょう. 波動関数は6変数関数として次のように定義します.
Ψ(r₁,θ₁,φ₁,r₂,θ₂,φ₂) = He⁺.ψ(r₁,θ₁,φ₁) * He⁺.ψ(r₂,θ₂,φ₂)
先ほどと同様にモンテカルロ積分を用いて規格化条件を確認しましょう.
res = vegas(x ->
x[1]^2 * sin(x[2]) *
x[4]^2 * sin(x[5]) *
abs(Ψ(x...))^2 ,
[0,0,0,0,0,0],
[50,π,2π,50,π,2π],
atol=1e-5
)
println("<ψ|ψ> = ", res.integral_estimate, " ± ", res.standard_deviation)
<ψ|ψ> = 1.0004144350516748 ± 0.0017535335574600287
おおよそ1となることが確かめられました.
第一近似のエネルギー
先ほど用意した非摂動波動関数
波動関数が球面座標で定義されているのでデカルト座標に変換してから電子間距離を計算します.(球面座標から直接計算する方法もあるかもしれません.)
x(r,θ,φ) = r*sin(θ)*cos(φ)
y(r,θ,φ) = r*sin(θ)*sin(φ)
z(r,θ,φ) = r*cos(θ)
function r₁₂(r₁,θ₁,φ₁,r₂,θ₂,φ₂)
return sqrt(
(x(r₁,θ₁,φ₁) - x(r₂,θ₂,φ₂)) ^ 2 +
(y(r₁,θ₁,φ₁) - y(r₂,θ₂,φ₂)) ^ 2 +
(z(r₁,θ₁,φ₁) - z(r₂,θ₂,φ₂)) ^ 2
)
end
これを先ほどの規格化条件の確認をした積分のコードに挟み込むと, 摂動項(電子間反発)の期待値が計算できます.
res = vegas(x ->
x[1]^2 * sin(x[2]) *
x[4]^2 * sin(x[5]) *
conj(Ψ(x...)) *
1 / r₁₂(x...) *
Ψ(x...) ,
[0,0,0,0,0,0],
[50,π,2π,50,π,2π],
rtol = 1e-6,
atol = 1e-6
)
∫ψψV₁₂ψψdr₁dr₂ = res.integral_estimate
println("<V₁₂> = ", ∫ψψV₁₂ψψdr₁dr₂, " Eₕ")
println(" = ", ∫ψψV₁₂ψψdr₁dr₂ * Eₕ2eV, " eV")
<V₁₂> = 1.2495678829756485 Eₕ
= 34.0024743042319 eV
これを先ほどの
E = He⁺.E(n=1) + He⁺.E(n=1) + ∫ψψV₁₂ψψdr₁dr₂
println("<H> = ", E, " Eₕ")
println(" = ", E * Eₕ2eV, " eV")
<H> = -2.7504321170243515 Eₕ
= -74.8430706797201 eV
これは現在知られている最も正確なエネルギー
変分原理からの考察
変分原理の観点から言えば, 摂動項も含めたハミルトニアンにとって非摂動波動関数は的外れではないものの, あまり正確な波動関数にはなっていないであろうということです. なお, 変分原理の意味するところは「エネルギーが低くければ低くいほどエネルギーが正確である」という意味です. 他の期待値も正確になるとは限りませんので, 波動関数の良し悪しを判断する絶対的な基準ではないということに注意してください. 詳しくはこちらの解説をご覧ください.
おわりに
摂動論は第一近似だけ考えて終わりではなく, より高次の補正を加えていくアプローチです. ここでは, 非摂動波動関数を用いて摂動項の期待値を計算すること(最低次の摂動計算)の正当性が確認できたということで満足するものとします.
参考文献
- 東京工業大学の武藤先生の講義ノート
- Antique.jl
- MonteCarloIntegration.jl
- IUPAC Greenbook 3.2.9
- 2018年CODATA推奨値
- A.ザボ, N.S.オストランド著, 大野公男, 阪井健男, 望月祐志訳『新しい量子化学 上 電子構造の理論入門』(東京大学出版会, 1987)
- H. Nakashima, H. Nakatsuji, Phys. Rev. Lett. 101, 240406 (2008)
- J. F. Pérez-Torres, J. Chem. Educ. 96, 4, 704–707 (2019)
Discussion