Home
1668 words
8 minutes
GTO 1s軌道間重なり積分の数理的導出と実装

last_modified: 2026-01-23

注記:本稿では、スレーター型軌道(STO)の代わりに、現代の量子化学計算で標準的に用いられる「ガウス型軌道(Gaussian-Type Orbital, GTO)」を対象とする。GTOはSTOと比較して、多中心積分の計算が解析的に容易であるという決定的な利点を持つ。 注記2: 生成AIへの指示で自動生成し、検算をしておりますが、内容が誤っている可能性があります。ご了承ください。Gemini 3.0 Pro及びGPT-5.2の性能を確かめる目的も兼ねています。

1. 序論#

ガウス型軌道(GTO)は、物理的な電子の振る舞い(特に原子核近傍のカプス条件と遠方の減衰)の記述においてはSTOに劣るものの、ガウス積定理(Gaussian Product Theorem) の適用により、多中心積分を単中心積分に帰着できるという数学的な利点を持つ。本稿では、異なる軌道指数 α,β\alpha, \beta を持つ2つの正規化されたs型プリミティブGTO間の重なり積分について、その数理的導出と数値計算コードを示す。

2. 数理的定式化#

2.1 波動関数の定義(正規化プリミティブGTO)#

中心Aに位置するs型GTO ϕA\phi_A は以下のように定義される。ϕA(r)=NAeαrRA2(1)\phi_A(\mathbf{r}) = N_A e^{-\alpha |\mathbf{r} - \mathbf{R}_A|^2} \quad (1)ここで、NAN_A は正規化定数であり、全空間積分 ϕA2dr=1\int |\phi_A|^2 d\mathbf{r} = 1 より求められる。NA=(2απ)3/4(2)N_A = \left( \frac{2\alpha}{\pi} \right)^{3/4} \quad (2)同様に、中心Bにある軌道指数 β\beta の軌道 ϕB\phi_BNB=(2β/π)3/4N_B = (2\beta/\pi)^{3/4} を持つ。

2.2 ガウス積定理の適用#

重なり積分 SS は以下の定義に従う。S=ϕA(r)ϕB(r)dr=NANBeαrRA2eβrRB2dr(3)S = \int \phi_A(\mathbf{r}) \phi_B(\mathbf{r}) \, d\mathbf{r} = N_A N_B \int e^{-\alpha |\mathbf{r} - \mathbf{R}_A|^2} e^{-\beta |\mathbf{r} - \mathbf{R}_B|^2} \, d\mathbf{r} \quad (3)ガウス積定理により、異なる中心を持つ2つのガウス関数の積は、新しい中心 RP\mathbf{R}_P を持つ1つのガウス関数で表現できる。eαrRA2eβrRB2=KABeprRP2(4)e^{-\alpha |\mathbf{r} - \mathbf{R}_A|^2} e^{-\beta |\mathbf{r} - \mathbf{R}_B|^2} = K_{AB} e^{-p |\mathbf{r} - \mathbf{R}_P|^2} \quad (4)ここで、各パラメータは以下の通りである。

合成指数: p=α+βp = \alpha + \beta

重心座標: RP=αRA+βRBα+β\mathbf{R}_P = \frac{\alpha \mathbf{R}_A + \beta \mathbf{R}_B}{\alpha + \beta}

指数プレファクター: KAB=exp(αβα+βRARB2)K_{AB} = \exp\left( - \frac{\alpha \beta}{\alpha + \beta} |\mathbf{R}_A - \mathbf{R}_B|^2 \right)

2.3 重なり積分の解析#

解式(4)を式(3)に代入すると、積分部分は単純なガウス積分となる。S=NANBKABeprRP2dr(5)S = N_A N_B K_{AB} \int_{-\infty}^{\infty} e^{-p |\mathbf{r} - \mathbf{R}_P|^2} \, d\mathbf{r} \quad (5)3次元ガウス積分の公式 epr2dr=(πp)3/2\int e^{-p r^2} d\mathbf{r} = (\frac{\pi}{p})^{3/2} を適用する。S=NANBKAB(πα+β)3/2(6)S = N_A N_B K_{AB} \left( \frac{\pi}{\alpha + \beta} \right)^{3/2} \quad (6)これに正規化定数(2)と KABK_{AB} を代入し、核間距離 R=RARBR = |\mathbf{R}_A - \mathbf{R}_B| を用いて整理すると、最終的な解析解が得られる。S(α,β,R)=(πα+β)3/2(2απ)3/4(2βπ)3/4exp(αβα+βR2)(7)S(\alpha, \beta, R) = \left( \frac{\pi}{\alpha + \beta} \right)^{3/2} \left( \frac{2\alpha}{\pi} \right)^{3/4} \left( \frac{2\beta}{\pi} \right)^{3/4} \exp\left( - \frac{\alpha \beta}{\alpha + \beta} R^2 \right) \quad (7)さらに簡約化すると、以下の美しい形式となる。S=(2αβα+β)3/2exp(αβα+βR2)(8)S = \left( \frac{2\sqrt{\alpha \beta}}{\alpha + \beta} \right)^{3/2} \exp\left( - \frac{\alpha \beta}{\alpha + \beta} R^2 \right) \quad (8)特徴: STOの場合と異なり、α=β\alpha = \beta の場合でも特異点は発生せず、数式は連続的に振る舞う。また、補助関数のような複雑な計算も不要である。

3. Pythonによる実装#

以下に、式(8)に基づいたPython関数を示す。

import numpy as np

def calculate_overlap_gto_s_s(alpha: float, beta: float, R: float | np.ndarray) -> float | np.ndarray:
    """
    異なる軌道指数を持つ正規化されたs型プリミティブGTO間の重なり積分を計算する。
    
    数式:
        S = ( (2 * sqrt(alpha * beta)) / (alpha + beta) )^1.5 * exp( - (alpha * beta / (alpha + beta)) * R^2 )
    
    Args:
        alpha (float): 原子AのGTO軌道指数 (Exponent)
        beta (float): 原子BのGTO軌道指数 (Exponent)
        R (float | np.ndarray): 核間距離 (Atomic Units / Bohr)
        
    Returns:
        float | np.ndarray: 重なり積分 S (0.0 < S <= 1.0)
    """
    R = np.asarray(R)
    
    # 共通項の計算: gamma = alpha * beta / (alpha + beta)
    sum_exp = alpha + beta
    prod_exp = alpha * beta
    gamma = prod_exp / sum_exp
    
    # プレファクター項 (幾何平均的な寄与)
    # term = 2 * sqrt(alpha * beta) / (alpha + beta)
    prefactor_term = 2.0 * np.sqrt(prod_exp) / sum_exp
    
    # 全体のプレファクター (3/2乗)
    prefactor = prefactor_term ** 1.5
    
    # 指数部分の計算: exp(-gamma * R^2)
    exponential_part = np.exp(-gamma * (R**2))
    
    # 最終的な重なり積分
    S = prefactor * exponential_part
    
    return S

# --- 使用例 ---
if __name__ == "__main__":
    # パラメータ設定 (STO-3Gなどの基底関数系を想定した値)
    alpha_val = 0.5  # 中心Aの指数
    beta_val = 1.2   # 中心Bの指数 (異なる値)
    R_dist = 2.0     # 核間距離 (Bohr)

    # 計算実行
    s_val = calculate_overlap_gto_s_s(alpha_val, beta_val, R_dist)

    print(f"--- GTO Overlap Integral Calculation ---")
    print(f"Exponent A (alpha): {alpha_val}")
    print(f"Exponent B (beta):  {beta_val}")
    print(f"Distance (R):       {R_dist} Bohr")
    print(f"Overlap Integral (S): {s_val:.6f}")

    # 距離依存性の確認
    r_array = np.linspace(0.0, 5.0, 6)
    s_array = calculate_overlap_gto_s_s(alpha_val, beta_val, r_array)
    
    print("\n--- Distance Dependence ---")
    print(f"R (Bohr): {r_array}")
    print(f"S values: {s_array}")
    
    # 等しい指数(alpha = beta)のケース検証
    # 式(8)より、alpha=betaなら prefactor=1.0 となり、S = exp(-alpha * R^2 / 2) となるはずである。
    s_equal = calculate_overlap_gto_s_s(1.0, 1.0, 0.0)
    print(f"\nCheck R=0, alpha=beta: {s_equal} (Should be 1.0)")

3.1 コードの解説#

入力の柔軟性: numpy のブロードキャスト機能により、距離 R を配列として渡すだけで、ポテンシャル曲面スキャンのような計算を一括で行うことができる。計算効率: GTOの重なり積分は、STOにおける exp(-R) の多項式形式とは異なり、exp(-R^2) というガウス関数の減衰に従う。これは計算機上で非常に高速に評価可能である。数値安定性: 分母に alpha + beta が現れるが、軌道指数は物理的に常に正の値(α,β>0\alpha, \beta > 0)をとるため、ゼロ除算のリスクはない。

4. 結論#

GTOを用いたs軌道間の重なり積分は、STOの場合と比較して数理的に極めて単純な閉形式(Closed Form)で記述される。STO: 距離 RR の多項式 ×\times 指数関数、異核の場合は特異点処理や補助関数が必要。GTO: ガウス積定理により、指数部分のパラメータ変換のみで表現可能。αβ\alpha \neq \beta であっても形式は不変であり、条件分岐が不要。この特性こそが、現代の量子化学計算においてGTOが標準基底関数として採用されている主たる理由の一つである。実際の分子軌道計算においては、これらのプリミティブGTOを線形結合させた「短縮GTO(Contracted GTO)」を用いるが、その重なり積分は本稿で示したプリミティブ間積分の線形和として容易に計算される。

GTO 1s軌道間重なり積分の数理的導出と実装
https://ss0832.github.io/posts/20260123_gto_s_s_overlapint/
Author
ss0832
Published at
2026-01-23
License
CC BY-NC-SA 4.0

Related Posts

p軌道-p軌道間重なり積分の数理的導出と実装
2026-01-23
Cartesian GTOを用いたp軌道同士(計9成分)の重なり積分について、ガウス積定理に基づく統一的な数式表現と、厳密な正規化処理を含むPython実装を解説する。
s軌道-d軌道間重なり積分の数理的導出と実装
2026-01-23
Cartesian GTOを用いたs軌道とd軌道(6成分:xx, yy, zz, xy, xz, yz)間の重なり積分について、統一的な数式表現とPython実装を解説する。
s軌道-p軌道間重なり積分の数理的導出と実装
2026-01-23
Cartesian GTOを用いたs軌道とp軌道(px, py, pz)間の重なり積分について、ガウス積定理の微分形を用いた導出と、3成分を一度に計算するPython実装を解説する。
短縮GTO(Contracted GTO)間重なり積分の数理と実装"
2026-01-23
原子軌道計算の実用標準である短縮ガウス型軌道(CGTO)について、その定義、プリミティブGTOへの展開による重なり積分の導出、およびSTO-3G基底系を例としたPython実装を記述する。
基底関数の数学的選択:STOの物理的正確性とGTOの積分容易性
2026-01-21
水素様原子の厳密解に近いスレーター型軌道 (STO) が、なぜ現代の計算化学ではガウス型軌道 (GTO) に置き換えられたのか。原子核近傍のカスプ条件と遠方の減衰挙動における物理的差異、および多中心積分を解析的に解くための「ガウス関数の積の定理」による計算コストの革命的削減について記述する。
NCIplot (Non-Covalent Interaction plot) の数理的基盤とアルゴリズム:密度汎関数理論からの導出と応用
2026-01-04
非共有結合性相互作用(Non-Covalent Interactions; NCI)を可視化する手法であるNCIplotについて、その理論的背景となるReduced Density Gradient(RDG)の数学的導出、QTAIMとの関係性、およびアルゴリズムの実装詳細を学術的な視点から包括的に解説する。密度汎関数理論における均一電子ガスモデルからの展開と、ヘシアン行列の固有値解析に基づく相互作用の分類について詳述する。