Chapter 3: 結晶場理論と配位化学

第2章では、原子軌道の線形結合(LCAO法)を出発点として、分子軌道理論からタイトバインディング近似、そしてバンド理論へと電子状態の記述を拡張しました。しかし、これまでの議論はs軌道やp軌道を中心とした比較的単純な系を想定しており、遷移金属(Transition Metal)に特有のd軌道の性質には触れていません。

本章では、遷移金属イオンが配位子(Ligand)(金属に電子対を供与する分子やイオン)に取り囲まれた錯体(Complex)を対象に、d軌道のエネルギーがどのように分裂するかを学びます。出発点となるのは、配位子を単純な点電荷とみなし、静電相互作用のみでd軌道の分裂を説明する結晶場理論(Crystal Field Theory, CFT)です。CFTは物理的描像が明快で、八面体(Octahedral)や正四面体(Tetrahedral)といった配位構造ごとのd軌道分裂パターンを直感的に理解する強力な出発点となります。

続いて、第2章で学んだLCAO法・分子軌道理論の考え方を金属-配位子間の共有結合性まで取り入れた、より精密な配位子場理論(Ligand Field Theory, LFT)を紹介します。さらに、d軌道が不均等に占有された錯体で構造が歪むJahn-Teller効果(Jahn-Teller Effect)を学び、最後にd軌道分裂が引き起こす錯体の磁性と光吸収スペクトル(色)をPythonで定量的に計算します。

本章を通じて、d軌道という一見複雑な電子状態が、対称性という一本の軸に沿って驚くほど体系的に整理できることを実感していただければと思います。

読了時間: 30-35分 | 難易度: 中級 | コード例: 12本

この章の学習目標

← 第2章 | シリーズ目次 | 第4章 →

3.1 結晶場理論(CFT)の基礎

遷移金属イオンは、周囲に配位子が集まった錯体を形成します。錯体中で金属イオンに直接結合している配位子の数を配位数(Coordination Number)と呼び、6配位の八面体錯体(Octahedral Complex)が最も一般的です。

結晶場理論(CFT)は、配位子を金属イオンの周囲に配置された負の点電荷(またはイオン双極子)とみなし、d軌道の電子と配位子の電子との静電反発(クーロン相互作用)だけでd軌道のエネルギー分裂を説明する近似モデルです。1929年にHans Betheが結晶中のイオンのエネルギー準位分裂を扱った研究に端を発し、1930年代にJohn Van Vleckらによって錯体化学に応用されました。

孤立した気体状の金属イオンでは、5つのd軌道($d_{z^2}, d_{x^2-y^2}, d_{xy}, d_{xz}, d_{yz}$)はすべて同じエネルギーを持ちます(5重縮退, Five-fold Degeneracy)。しかし、配位子が特定の対称性で金属イオンに近づくと、d軌道の空間的な広がり方(ローブの向き)に応じて、配位子の負電荷との反発の大きさが軌道ごとに異なります。この結果、縮退していた5つのd軌道は、配位構造の対称性に応じて複数のエネルギー準位に分裂します。

$$V(\mathbf{r}) = \sum_{i=1}^{N} \frac{q_i e}{4\pi\epsilon_0 |\mathbf{r} - \mathbf{R}_i|}$$

$N$個の点電荷配位子(電荷 $q_i$、位置 $\mathbf{R}_i$)がd電子(位置 $\mathbf{r}$)に及ぼす静電ポテンシャル。この式を球面調和関数(Spherical Harmonics)で展開すると、配位構造の対称性に応じた角度依存項が現れ、それがd軌道間のエネルギー差(結晶場分裂)を生む。

d軌道のローブがどの方向を向いているかを具体的にイメージするために、5つのd軌道の角度部分(Angular Part)を3次元的に可視化します。

Python実装: d軌道の角度部分の3次元可視化

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

theta = np.linspace(0, np.pi, 60)
phi = np.linspace(0, 2 * np.pi, 60)
theta, phi = np.meshgrid(theta, phi)

def dz2(theta, phi):
    """dz2軌道の角度部分(規格化前)"""
    return 3 * np.cos(theta)**2 - 1

def dxz(theta, phi):
    return np.sin(theta) * np.cos(theta) * np.cos(phi)

def dyz(theta, phi):
    return np.sin(theta) * np.cos(theta) * np.sin(phi)

def dxy(theta, phi):
    return np.sin(theta)**2 * np.sin(2 * phi)

def dx2y2(theta, phi):
    return np.sin(theta)**2 * np.cos(2 * phi)

orbitals = {
    'd_z^2': dz2, 'd_xz': dxz, 'd_yz': dyz,
    'd_xy': dxy, 'd_x^2-y^2': dx2y2,
}

fig = plt.figure(figsize=(16, 4))
for i, (name, func) in enumerate(orbitals.items()):
    f = func(theta, phi)
    r = np.abs(f)  # ローブの形状を表す動径成分
    x = r * np.sin(theta) * np.cos(phi)
    y = r * np.sin(theta) * np.sin(phi)
    z = r * np.cos(theta)

    ax = fig.add_subplot(1, 5, i + 1, projection='3d')
    colors = np.where(f >= 0, 'crimson', 'royalblue')  # 波動関数の符号で色分け
    ax.plot_surface(x, y, z, facecolors=colors, linewidth=0, antialiased=True)
    ax.set_title(name)
    ax.set_box_aspect([1, 1, 1])
    ax.set_axis_off()

plt.tight_layout()
plt.savefig('d_orbitals_3d.png', dpi=200)
plt.show()

print("5つのd軌道の角度部分を3次元プロットとして生成しました。")
print("d_z^2, d_x^2-y^2 (eg軌道): ローブが座標軸(配位子方向)を直接向く")
print("d_xy, d_xz, d_yz (t2g軌道): ローブが座標軸の間(対角方向)を向く")

実行結果: $d_{z^2}$軌道はz軸方向に伸びる主ローブと赤道面のドーナツ状の副ローブを持ち、$d_{x^2-y^2}$軌道はx軸・y軸方向に4つのローブを持つ。これら$e_g$軌道群のローブは座標軸(配位子の方向)を直接向いている。一方、$d_{xy}, d_{xz}, d_{yz}$軌道($t_{2g}$軌道群)のローブは座標軸の間(対角方向)を向いており、配位子の方向を避けるように分布している。この幾何学的な違いが、次節で見る八面体場でのエネルギー分裂の起源となる。

3.2 八面体場・正四面体場でのd軌道分裂

6つの配位子が金属イオンを中心にx, y, z軸の正負方向(±x, ±y, ±z)に位置する八面体場(Octahedral Field, $O_h$対称性)を考えます。3.1節で見たように、$d_{z^2}$と$d_{x^2-y^2}$軌道(あわせて$e_g$軌道と呼ばれる)は配位子の方向を直接向いているため、配位子の負電荷から強い静電反発を受けエネルギーが上昇します。一方、$d_{xy}, d_{xz}, d_{yz}$軌道(あわせて$t_{2g}$軌道と呼ばれる)は配位子の方向を避けているため、反発が弱くエネルギーが低下します。

ここで$e_g$、$t_{2g}$という記号は、分子の対称性(点群 $O_h$)における既約表現(Irreducible Representation)のラベルであり、それぞれの軌道の組が対称操作に対してどのように変換されるかを表しています。

結晶場分裂の全体の大きさを結晶場分裂エネルギー(Crystal Field Splitting Energy)$\Delta_o$(オクタヘドラルのo)または$10Dq$と呼びます。$e_g$軌道と$t_{2g}$軌道のエネルギーは、d軌道全体の平均エネルギー(重心)を保存するように分裂します。

$$E(t_{2g}) = -0.4\,\Delta_o, \qquad E(e_g) = +0.6\,\Delta_o$$

重心保存則(Barycenter Rule): $3 \times (-0.4\Delta_o) + 2 \times (+0.6\Delta_o) = 0$。分裂によって系全体のエネルギーが変化しないという要請から、この係数($-0.4$と$+0.6$、あるいは$-4Dq$と$+6Dq$)が導かれる。

配位子が4つ、正四面体の頂点方向に位置する正四面体場(Tetrahedral Field, $T_d$対称性)では、状況が入れ替わります。$T_d$対称性では$d_{xy}, d_{xz}, d_{yz}$軌道($t_2$軌道)の方が配位子の方向に近く、$d_{z^2}, d_{x^2-y^2}$軌道($e$軌道)の方が配位子を避けます。したがって八面体場とは逆に、$e$軌道が安定化し$t_2$軌道が不安定化します。

$$E(e) = -0.6\,\Delta_t, \qquad E(t_2) = +0.4\,\Delta_t$$ $$\Delta_t = \frac{4}{9}\,\Delta_o$$

同じ金属イオン・配位子・金属-配位子間距離で比較した場合、正四面体場の分裂エネルギー$\Delta_t$は八面体場の$\Delta_o$のおよそ4/9倍になる。配位子数が6から4に減ることと、配位子が軌道ローブから外れた位置にあることの両方が寄与する。

Python実装: 八面体場・正四面体場のd軌道分裂とバリセンター則の検証

import numpy as np
import matplotlib.pyplot as plt

delta_o = 1.0  # 八面体場の分裂エネルギー(規格化単位)

# 八面体場(Oh)でのエネルギー
E_t2g = -0.4 * delta_o
E_eg = 0.6 * delta_o
barycenter_Oh = (3 * E_t2g + 2 * E_eg) / 5
print(f"[Oh] t2g: {E_t2g:.2f} Δo, eg: {E_eg:.2f} Δo, 重心: {barycenter_Oh:.6f} Δo")

# 正四面体場(Td)でのエネルギー: Δt = (4/9) Δo
delta_t = (4 / 9) * delta_o
E_e_Td = -0.6 * delta_t
E_t2_Td = 0.4 * delta_t
barycenter_Td = (2 * E_e_Td + 3 * E_t2_Td) / 5
print(f"[Td] Δt = {delta_t:.4f} Δo")
print(f"[Td] e: {E_e_Td:.4f} Δo, t2: {E_t2_Td:.4f} Δo, 重心: {barycenter_Td:.6f} Δo")

# エネルギー準位図
fig, axes = plt.subplots(1, 2, figsize=(10, 6), sharey=True)

axes[0].hlines(0, -0.5, 2.5, colors='gray', linestyles='dashed', label='自由イオン')
axes[0].hlines(E_t2g, 0.2, 1.0, colors='#f5576c', linewidth=4, label='t2g')
axes[0].hlines(E_eg, 1.2, 2.0, colors='#f093fb', linewidth=4, label='eg')
axes[0].set_title('八面体場 (Oh)')
axes[0].set_ylabel('エネルギー (Δo単位)')
axes[0].legend(loc='upper left', fontsize=9)
axes[0].set_xticks([])

axes[1].hlines(0, -0.5, 2.5, colors='gray', linestyles='dashed', label='自由イオン')
axes[1].hlines(E_e_Td, 0.2, 1.0, colors='#f093fb', linewidth=4, label='e')
axes[1].hlines(E_t2_Td, 1.2, 2.0, colors='#f5576c', linewidth=4, label='t2')
axes[1].set_title('正四面体場 (Td)')
axes[1].legend(loc='upper left', fontsize=9)
axes[1].set_xticks([])

plt.tight_layout()
plt.savefig('cft_splitting_diagram.png', dpi=200)
plt.show()

実行結果: 八面体場・正四面体場のいずれでも重心は0.000000(規格化された数値誤差の範囲内)となり、重心保存則が数値的に確認できる。また$\Delta_t = 0.4444\,\Delta_o$(= 4/9 $\Delta_o$)が得られ、正四面体錯体は同条件の八面体錯体よりも分裂幅が小さいことがわかる。この理由から、正四面体錯体は八面体錯体に比べて高スピン配置をとりやすい。

3.3 配位子場理論(LFT)

結晶場理論は配位子を点電荷として扱う単純化されたモデルであり、金属と配位子の間の化学結合が持つ共有結合性(軌道の重なりによる電子の非局在化)を無視しています。第2章で学んだLCAO法・分子軌道理論の考え方を、金属のd軌道と配位子の軌道の間の相互作用に適用したモデルが配位子場理論(Ligand Field Theory, LFT)です。

LFTでは、金属のd軌道と配位子の軌道($\sigma$供与軌道や$\pi$供与・受容軌道)が線形結合して分子軌道を形成すると考えます。$e_g$軌道は配位子の$\sigma$軌道と直接重なり、強い反結合性相互作用によりエネルギーが押し上げられます。$t_{2g}$軌道は、配位子が$\pi$供与体($\pi$-donor、例: F⁻, O²⁻)であれば非結合性軌道から弱く不安定化し、$\pi$受容体($\pi$-acceptor、例: CO, CN⁻)であれば強く安定化します。これが、CFTの単純な静電モデルでは説明できない$\Delta_o$の配位子依存性、すなわち分光化学系列(Spectrochemical Series)の起源です。

分光化学系列は、実測される$\Delta_o$の大きさに基づいて配位子を強い場($\Delta_o$大)から弱い場($\Delta_o$小)へ並べたもので、おおよそ次の順序になります($\pi$受容性の高い配位子ほど強い場)。

$$\text{I}^- \lt \text{Br}^- \lt \text{Cl}^- \lt \text{F}^- \lt \text{H}_2\text{O} \lt \text{NH}_3 \lt \text{en} \lt \text{CN}^- \lt \text{CO}$$

$\Delta_o$の大きさは、d電子がどのように$t_{2g}$・$e_g$軌道に配置されるかを決定します。d電子数が4〜7個の場合、電子を対にして低いエネルギー軌道に詰める低スピン(Low Spin)配置と、Hundの規則に従い対生成エネルギー(Pairing Energy、$P$)を避けて広く分布させる高スピン(High Spin)配置のどちらかを選ぶ必要が生じます。$\Delta_o$が$P$より大きければ低スピン、小さければ高スピンが安定になります。

Python実装: 高スピン・低スピン配置とCFSEの計算

import numpy as np

def fill_d_orbitals(n_electrons, spin='high'):
    """
    八面体場中の5つのd軌道(t2g x3, eg x2)に電子を配置する

    Parameters:
    n_electrons: d電子数
    spin: 'high'(高スピン)または 'low'(低スピン)

    Returns:
    cfse: 結晶場安定化エネルギー(Δo単位、静電項のみ)
    n_pairs: 電子対を形成している軌道の数
    n_unpaired: 不対電子数
    occ: 5軌道それぞれの電子占有数 [t2g, t2g, t2g, eg, eg]
    """
    orbital_energy = np.array([-0.4, -0.4, -0.4, 0.6, 0.6])
    occ = np.zeros(5, dtype=int)
    order = np.argsort(orbital_energy)  # エネルギーの低い順(t2gが先)
    remaining = n_electrons

    if spin == 'low':
        for i in order[:3]:
            if remaining == 0:
                break
            occ[i] += 1
            remaining -= 1
        c = 0
        while remaining > 0 and occ[order[:3]].min() < 2:
            i = order[c % 3]
            if occ[i] < 2:
                occ[i] += 1
                remaining -= 1
            c += 1
        for i in order[3:]:
            if remaining == 0:
                break
            occ[i] += 1
            remaining -= 1
        c = 0
        while remaining > 0:
            i = order[3 + c % 2]
            if occ[i] < 2:
                occ[i] += 1
                remaining -= 1
            c += 1
    else:
        for i in order:
            if remaining == 0:
                break
            occ[i] += 1
            remaining -= 1
        c = 0
        while remaining > 0:
            i = order[c % 5]
            if occ[i] < 2:
                occ[i] += 1
                remaining -= 1
            c += 1

    cfse = np.sum(occ * orbital_energy)
    n_pairs = int(np.sum(occ == 2))
    n_unpaired = int(np.sum(occ == 1))
    return cfse, n_pairs, n_unpaired, occ

print(f"{'d^n':>4} {'HS CFSE':>9} {'HS不対電子':>10} {'LS CFSE':>9} {'LS不対電子':>10}")
for n in range(1, 10):
    hs = fill_d_orbitals(n, 'high')
    ls = fill_d_orbitals(n, 'low')
    print(f"d{n:<3} {hs[0]:>9.2f} {hs[2]:>10} {ls[0]:>9.2f} {ls[2]:>10}")

# 実在錯体での検証: Fe2+ (d6)
P_Fe2 = 17600          # cm^-1, Fe2+の対生成エネルギー(文献概算値)
delta_o_aqua = 10400    # cm^-1, [Fe(H2O)6]2+ (弱い場配位子: H2O)
delta_o_cyano = 33800   # cm^-1, [Fe(CN)6]4- (強い場配位子: CN-)

hs6 = fill_d_orbitals(6, 'high')
ls6 = fill_d_orbitals(6, 'low')
extra_pairs = ls6[1] - hs6[1]  # 低スピンで追加発生する電子対数

print(f"\nd6 高スピン: CFSE={hs6[0]:.2f} Δo, 不対電子={hs6[2]}")
print(f"d6 低スピン: CFSE={ls6[0]:.2f} Δo, 不対電子={ls6[2]}, 追加対数={extra_pairs}")

for name, do in [('[Fe(H2O)6]2+', delta_o_aqua), ('[Fe(CN)6]4-', delta_o_cyano)]:
    E_HS = hs6[0] * do
    E_LS = ls6[0] * do + extra_pairs * P_Fe2
    state = '高スピン' if E_HS < E_LS else '低スピン'
    print(f"{name}: Δo={do} cm^-1, E_HS={E_HS:.0f} cm^-1, E_LS={E_LS:.0f} cm^-1 -> {state}が安定")

実行結果: d4〜d7では高スピンと低スピンで不対電子数が異なり(例: d6高スピンは不対電子4個、低スピンは0個)、d1〜d3, d8〜d10では配位子場の強さによらず配置が一意に決まる。実在錯体で検証すると、弱い場の配位子である水(H₂O)を持つ[Fe(H₂O)₆]²⁺では$\Delta_o$≈10400 cm⁻¹がFe²⁺の対生成エネルギー$P$≈17600 cm⁻¹より小さいため高スピン(E_HS=-4160 cm⁻¹ < E_LS=10240 cm⁻¹)が安定であり、強い場の配位子であるシアン化物イオン(CN⁻)を持つ[Fe(CN)₆]⁴⁻では$\Delta_o$≈33800 cm⁻¹が$P$を上回るため低スピン(E_LS=-45920 cm⁻¹ < E_HS=-13520 cm⁻¹)が安定になる。この予測は、実測される磁化率([Fe(H₂O)₆]²⁺は常磁性、[Fe(CN)₆]⁴⁻は反磁性)とよく一致する。

Python実装: 分光化学系列と$\Delta_o$の配位子依存性

import matplotlib.pyplot as plt

# 代表的な配位子とΔoの目安値(cm^-1、複数錯体の分光データに基づく概算)
ligands = ['I-', 'Br-', 'Cl-', 'F-', 'H2O', 'NH3', 'en', 'CN-']
delta_o_values = [3000, 3400, 4000, 5500, 10400, 10800, 11500, 26600]

fig, ax = plt.subplots(figsize=(9, 5))
ax.bar(ligands, delta_o_values, color='#7b2cbf')
ax.set_ylabel('Δo (cm⁻¹, 目安値)', fontsize=12)
ax.set_title('分光化学系列: 配位子とΔoの目安', fontsize=14, fontweight='bold')
ax.grid(axis='y', alpha=0.3)
plt.tight_layout()
plt.savefig('spectrochemical_series.png', dpi=200)
plt.show()

print("弱い場(I-)から強い場(CN-)にかけて、Δoはおよそ1桁近く変化する。")

実行結果: ハロゲン化物イオンのような弱い場の配位子から、シアン化物イオンのような強い場の配位子まで、$\Delta_o$の値はおよそ1桁近く変化する。このグラフの値は複数の錯体の分光データから得られた代表的な目安であり、実際には中心金属イオンの種類・酸化数によっても$\Delta_o$は変動する。

3.4 Jahn-Teller効果

Jahn-Teller効果(Jahn-Teller Effect)は、1937年にHermann JahnとEdward Tellerが証明したJahn-Teller定理(Jahn-Teller Theorem)「線形でない分子が縮退した電子状態にあるとき、分子は対称性を下げる歪みを起こしてエネルギーを安定化する」という一般原理の、遷移金属錯体における現れです。

八面体場のd軌道配置で$e_g$軌道(2つの軌道)が不均等に占有されている場合、正八面体構造のままではエネルギーの縮退が残ります。分子はz軸方向の結合を伸ばす(または縮める)正方晶歪み(Tetragonal Distortion)を起こすことで、この縮退を解いてエネルギーをさらに下げることができます。この歪みが起こるのは配位子場理論的に不安定な縮退状態を解消するためであり、系全体としては歪んだ方が安定になります。

典型例は$d^9$配置を持つCu²⁺錯体です。$e_g$軌道に3個の電子が入るため($e_g^3$、$d_{z^2}$と$d_{x^2-y^2}$のどちらか一方が2個、他方が1個占有)、正八面体構造では縮退が残ります。z軸方向の結合が伸びる歪みが起こると、$d_{z^2}$(z軸方向の電子密度が減る)が安定化し、$d_{x^2-y^2}$が不安定化する形で縮退が解けます。

歪みの大きさを表すパラメータ$Q$(一般化座標)に対して、電子-格子相互作用によるエネルギーの一次の項(歪みによる安定化、係数$k$)と、格子の弾性エネルギーによる二次の項(歪みのコスト、係数$f$)を仮定した簡単なモデルで、Jahn-Teller安定化エネルギーを見積もることができます。

$$E(Q) = -kQ + \frac{1}{2}fQ^2$$ $$Q_{min} = \frac{k}{f}, \qquad E_{min} = -\frac{k^2}{2f}$$

Python実装: Jahn-Teller歪みエネルギーの最小化

import numpy as np
import matplotlib.pyplot as plt
from scipy.optimize import fminbound

def jt_energy(Q, k, f):
    """線形-2次カップリングモデルによるJahn-Teller歪みエネルギー"""
    return -k * Q + 0.5 * f * Q**2

k, f = 2.0, 4.0  # 例示的な電子-格子相互作用定数(eV/Å, eV/Å^2)

# 解析解
Q_min_analytic = k / f
E_min_analytic = -k**2 / (2 * f)

# 数値解(scipy.optimize.fminboundで検証)
Q_min_numeric = fminbound(lambda Q: jt_energy(Q, k, f), -2, 2)
E_min_numeric = jt_energy(Q_min_numeric, k, f)

print(f"解析解: Q_min = k/f = {Q_min_analytic:.4f} Å, E_min = -k^2/(2f) = {E_min_analytic:.4f} eV")
print(f"数値解: Q_min = {Q_min_numeric:.4f} Å, E_min = {E_min_numeric:.4f} eV")

Q = np.linspace(-0.5, 1.5, 200)
E = jt_energy(Q, k, f)

plt.figure(figsize=(7, 5))
plt.plot(Q, E, color='#f5576c', linewidth=2.5)
plt.scatter([Q_min_analytic], [E_min_analytic], color='black', zorder=5,
            label=f'最小点: Q={Q_min_analytic:.2f} Å, E={E_min_analytic:.2f} eV')
plt.axhline(y=0, color='gray', linestyle='--', alpha=0.5)
plt.xlabel('歪み Q (Å)', fontsize=12)
plt.ylabel('エネルギー E(Q) (eV)', fontsize=12)
plt.title('Jahn-Teller歪みエネルギー(線形-2次モデル)', fontsize=14, fontweight='bold')
plt.legend()
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('jahn_teller_energy.png', dpi=200)
plt.show()

実行結果: k=2.0, f=4.0の例で、解析解と数値最適化(scipy.optimize.fminbound)による最小値がいずれもQ_min=0.5000 Å、E_min=-0.5000 eVで完全に一致する。歪みによる安定化エネルギーが歪みコストを上回る限り、系は必ずQ=0(正八面体)よりも歪んだ構造の方がエネルギー的に有利になる。

すべてのd電子配置がJahn-Teller活性であるわけではありません。配位子と直接相互作用する$e_g$軌道が不均等に占有されている場合(例: 高スピン$d^4$, $d^9$)は、歪みのエネルギー利得が大きい強いJahn-Teller効果が現れます。一方、$t_{2g}$軌道のみが不均等に占有されている場合(配位子方向を向いていないため歪みへの応答が弱い)は弱いJahn-Teller効果にとどまり、実験的にはほとんど観測されないことが多いとされています。

Python実装: d電子配置ごとのJahn-Teller活性の判定

def jt_activity(occ):
    """t2g・eg軌道内の不均等占有(Jahn-Teller活性)を判定する"""
    t2g_occ = occ[:3]
    eg_occ = occ[3:]
    t2g_asymmetric = len(set(t2g_occ)) > 1   # 弱いJahn-Teller活性
    eg_asymmetric = len(set(eg_occ)) > 1     # 強いJahn-Teller活性
    return t2g_asymmetric, eg_asymmetric

print(f"{'配置':>10} {'占有 [t2g,t2g,t2g,eg,eg]':>28} {'弱いJT(t2g)':>12} {'強いJT(eg)':>12}")
for n in range(1, 10):
    for spin in ['high', 'low']:
        _, _, _, occ = fill_d_orbitals(n, spin)
        t2g_a, eg_a = jt_activity(occ)
        label = f"d{n}({'HS' if spin == 'high' else 'LS'})"
        print(f"{label:>10} {str(occ.tolist()):>28} {str(t2g_a):>12} {str(eg_a):>12}")

実行結果: 高スピン$d^4$(Cr²⁺, Mn³⁺など、占有[1,1,1,1,0])と$d^9$(Cu²⁺、占有[2,2,2,2,1])、低スピン$d^7$(占有[2,2,2,1,0])で$e_g$軌道の不均等占有(強いJahn-Teller活性)が確認される。一方、$d^1, d^2$や高スピン$d^6, d^7$、低スピン$d^5$では$t_{2g}$軌道のみが不均等(弱いJahn-Teller活性)であり、$d^3$、高スピン$d^5$、低スピン$d^6$、$d^8$は完全対称な占有でJahn-Teller不活性である。

3.5 磁性と光吸収スペクトル

錯体中の不対電子の数は、物質の巨視的な磁性を決定します。電子のスピン角運動量のみに由来するスピンのみの磁気モーメント(Spin-only Magnetic Moment)$\mu_{eff}$は、不対電子数$n$を用いて次式で近似できます。

$$\mu_{eff} = \sqrt{n(n+2)}\ \mu_B$$

$\mu_B$はボーア磁子(Bohr Magneton)。この式は軌道角運動量の寄与を無視した近似であり、第一遷移系列金属の多くの錯体でよい近似となる。

Python実装: d電子数と高スピン磁気モーメントの計算

import numpy as np

print(f"{'d^n':>4} {'不対電子':>8} {'mu_eff (muB)':>14}")
for n in range(1, 10):
    n_unpaired = fill_d_orbitals(n, 'high')[2]
    mu_eff = np.sqrt(n_unpaired * (n_unpaired + 2))
    print(f"d{n:<3} {n_unpaired:>8} {mu_eff:>14.2f}")

実行結果: $d^5$高スピン配置(Mn²⁺, Fe³⁺など)で不対電子数が5個と最大になり、$\mu_{eff}$≈5.92 $\mu_B$に達する。実測値は5.9 $\mu_B$前後であり、良い一致を示す。$d^1$と$d^9$(不対電子1個)はいずれも$\mu_{eff}$≈1.73 $\mu_B$で等しくなる。

結晶場分裂エネルギー$\Delta_o$は、$t_{2g}$軌道から$e_g$軌道への電子遷移(d-d遷移, Metal d-d Transition)に伴う光吸収のエネルギーとしても直接観測できます。吸収される光子のエネルギーが$\Delta_o$に等しいとき、吸収極大の波長$\lambda_{max}$は次式で求まります。

$$\Delta_o = h\nu = \frac{hc}{\lambda_{max}} = hc\,\tilde{\nu}$$

$\tilde{\nu}$は波数(Wavenumber, cm⁻¹単位)。波数からnm単位の波長への変換は $\lambda_{max}\text{(nm)} = 10^7 / \tilde{\nu}\text{(cm}^{-1}\text{)}$ となる。

Python実装: $\Delta_o$と吸収波長の関係

import numpy as np
import matplotlib.pyplot as plt
import scipy.constants as const

def delta_o_to_wavelength(delta_o_cm):
    """Δo(cm^-1)から吸収極大波長(nm)を計算する簡易換算式"""
    return 1e7 / delta_o_cm

# [Ti(H2O)6]3+ (d1) の例: Δo ≈ 20300 cm^-1
delta_o_Ti = 20300
lam_formula = delta_o_to_wavelength(delta_o_Ti)

# 物理定数からの直接計算で検算
E_photon = const.h * const.c * (delta_o_Ti * 100)  # cm^-1 -> m^-1に変換してエネルギー(J)
lam_from_constants = const.h * const.c / E_photon * 1e9  # m -> nm

print(f"[Ti(H2O)6]3+: Δo = {delta_o_Ti} cm^-1")
print(f"簡易換算式による吸収極大波長: {lam_formula:.1f} nm")
print(f"物理定数からの検算: {lam_from_constants:.1f} nm")

delta_o_range = np.linspace(5000, 35000, 200)
lam_range = delta_o_to_wavelength(delta_o_range)

plt.figure(figsize=(8, 5))
plt.plot(delta_o_range, lam_range, color='#2c3e50', linewidth=2.5)
plt.scatter([delta_o_Ti], [lam_formula], color='#f5576c', zorder=5, label='[Ti(H2O)6]3+')
plt.xlabel('Δo (cm⁻¹)', fontsize=12)
plt.ylabel('吸収極大波長 λ_max (nm)', fontsize=12)
plt.title('結晶場分裂エネルギーと吸収波長の関係', fontsize=14, fontweight='bold')
plt.legend()
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('delta_o_wavelength.png', dpi=200)
plt.show()

実行結果: [Ti(H₂O)₆]³⁺($d^1$、$\Delta_o$≈20300 cm⁻¹)について、波数からの簡易換算式と物理定数(プランク定数・光速)から直接計算した結果はいずれも$\lambda_{max}$≈492.6 nmと完全に一致する。この波長は緑〜黄色領域の光に対応し、その補色である紫〜赤紫色がこの錯体の色として観測される。

複数のd電子を持つ錯体($d^2$〜$d^8$)の吸収スペクトルは、電子間反発(Racahパラメータ$B, C$で特徴づけられる項間相互作用)により複雑な形になり、$\Delta_o$と吸収エネルギーの関係は非線形になります。この関係を配位子場の強さ$Dq$の関数として図示したものがTanabe-Sugano図(Tanabe-Sugano Diagram)であり、1954年にY. TanabeとS. Suganoによって導入されました。多くのd電子配置では、同じ対称性・同じスピン多重度を持つ項同士が混じり合うため、エネルギー準位の曲線が場の強さに応じて湾曲します。

唯一の例外が$d^1$(および高スピン$d^9$)配置です。電子(またはホール)が1個しかないため電子間反発が働かず、基底状態($^2T_{2g}$)と励起状態($^2E_g$)のエネルギーは配位子場の強さに対して単純な直線になります。この特別な場合を用いて、Tanabe-Sugano図の考え方を確認します。

Python実装: $d^1$系の簡略化Tanabe-Sugano図

import numpy as np
import matplotlib.pyplot as plt

# d1系: 電子間反発がないため、エネルギーはDqに対して直線になる
Dq_over_B = np.linspace(0, 3, 100)  # 慣例に従いDq/Bを横軸にとる(d1ではBに依存しない)

E_ground_2T2g = -4 * Dq_over_B   # -0.4 * 10Dq = -4Dq
E_excited_2Eg = 6 * Dq_over_B    # +0.6 * 10Dq = +6Dq

plt.figure(figsize=(7, 5))
plt.plot(Dq_over_B, E_ground_2T2g, color='#f5576c', linewidth=2.5, label='2T2g (基底状態)')
plt.plot(Dq_over_B, E_excited_2Eg, color='#f093fb', linewidth=2.5, label='2Eg (励起状態)')
plt.xlabel('Dq/B (配位子場の強さ、慣例的な無次元表示)', fontsize=11)
plt.ylabel('E/B', fontsize=12)
plt.title('d1系の簡略化Tanabe-Sugano図', fontsize=14, fontweight='bold')
plt.legend()
plt.grid(True, alpha=0.3)
plt.tight_layout()
plt.savefig('tanabe_sugano_d1.png', dpi=200)
plt.show()

print("2Eg - 2T2g = 10Dq = Δo であり、d1系では場の強さに対して常に直線関係になる。")

実行結果: $^2T_{2g}$(基底状態)は傾き$-4$、$^2E_g$(励起状態)は傾き$+6$の直線としてプロットされ、両者のエネルギー差は常に$10Dq = \Delta_o$に等しい。$d^2$以上の多電子系では、同じスピン多重度を持つ複数の項(例えば$d^2$の$^3T_{1g}$項は2つ存在する)が場の強さに応じて混じり合うため、エネルギー準位は直線ではなく曲線を描く。

flowchart TD A[結晶場理論 CFT] --> B[八面体場 Oh] A --> C[正四面体場 Td] B --> B1[t2g軌道: 安定化] B --> B2[eg軌道: 不安定化] C --> C1[e軌道: 安定化] C --> C2[t2軌道: 不安定化] A --> D[配位子場理論 LFT] D --> D1[分光化学系列] D --> D2[高スピン・低スピン] D2 --> E[Jahn-Teller効果] D2 --> F[磁性: 磁気モーメント] D2 --> G[光吸収スペクトル] G --> G1[Tanabe-Sugano図] style A fill:#f093fb,stroke:#f5576c,stroke-width:3px,color:#fff style B fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff style C fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff style D fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff style E fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff style F fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff style G fill:#f5576c,stroke:#f093fb,stroke-width:2px,color:#fff

演習問題

問題1(Easy): Mn²⁺錯体の磁気モーメント

Mn²⁺($d^5$)は、弱い場・強い場いずれの配位子でも高スピン配置をとることが多い配位子です($\Delta_o$が非常に大きいCN⁻のような配位子を除く)。高スピン$d^5$配置の不対電子数と、スピンのみの磁気モーメント$\mu_{eff}$をPythonで計算し、実験的に知られる値(およそ5.9 $\mu_B$)と比較せよ。

解答

import numpy as np

n_unpaired = fill_d_orbitals(5, 'high')[2]
mu_eff = np.sqrt(n_unpaired * (n_unpaired + 2))

print(f"Mn2+ (d5, 高スピン): 不対電子数 = {n_unpaired}")
print(f"mu_eff (spin-only) = {mu_eff:.2f} muB")
print(f"実験値の目安: 約5.9 muB, 差: {abs(mu_eff - 5.9):.2f} muB")

結果: 不対電子数5個、$\mu_{eff}$=5.92 $\mu_B$。実験値(約5.9 $\mu_B$)とよく一致する。$d^5$高スピンは5つのd軌道すべてに1電子ずつ入る最大不対電子配置であり、遷移金属イオンの中で最大クラスの磁気モーメントを示す。

問題2(Medium): Co³⁺錯体の高スピン・低スピン判定

Co³⁺($d^6$)の対生成エネルギーを$P$≈21000 cm⁻¹とする。弱い場配位子F⁻を持つ$[\text{CoF}_6]^{3-}$($\Delta_o$≈13000 cm⁻¹)と、強い場配位子NH₃を持つ$[\text{Co(NH}_3)_6]^{3+}$($\Delta_o$≈23000 cm⁻¹)について、それぞれ高スピン・低スピンのどちらが安定かをPythonで判定せよ。

解答

P_Co3 = 21000           # cm^-1, Co3+の対生成エネルギー(概算)
delta_o_CoF6 = 13000     # cm^-1, [CoF6]3- (弱い場: F-)
delta_o_CoNH3 = 23000    # cm^-1, [Co(NH3)6]3+ (強い場: NH3)

hs6 = fill_d_orbitals(6, 'high')
ls6 = fill_d_orbitals(6, 'low')
extra_pairs = ls6[1] - hs6[1]

for name, do in [('[CoF6]3-', delta_o_CoF6), ('[Co(NH3)6]3+', delta_o_CoNH3)]:
    E_HS = hs6[0] * do
    E_LS = ls6[0] * do + extra_pairs * P_Co3
    state = '高スピン' if E_HS < E_LS else '低スピン'
    print(f"{name}: E_HS={E_HS:.0f} cm^-1, E_LS={E_LS:.0f} cm^-1 -> {state}が安定")

結果: $[\text{CoF}_6]^{3-}$は E_HS=-5200 cm⁻¹ < E_LS=10800 cm⁻¹ となり高スピンが安定。$[\text{Co(NH}_3)_6]^{3+}$は E_LS=-13200 cm⁻¹ < E_HS=-9200 cm⁻¹ となり低スピンが安定。実験的にも$[\text{CoF}_6]^{3-}$は常磁性(高スピン)、$[\text{Co(NH}_3)_6]^{3+}$は反磁性(低スピン、$d^6$完全対生成)であることが知られており、計算結果と一致する。

問題3(Hard): d電子配置とJahn-Teller活性の系統的分類

3.4節のfill_d_orbitals関数とjt_activity関数を用いて、$d^1$から$d^9$までのすべての高スピン・低スピン配置について、強いJahn-Teller活性($e_g$軌道の不均等占有)・弱いJahn-Teller活性($t_{2g}$軌道のみ不均等占有)・不活性(対称配置)の3グループに分類せよ。また、なぜ$e_g$軌道の不均等占有の方が$t_{2g}$軌道の不均等占有よりもはるかに強いJahn-Teller歪みを引き起こすのか、軌道の空間的な向きの観点から説明せよ。

解答

strong_jt = []
weak_jt = []
inactive = []

for n in range(1, 10):
    for spin in ['high', 'low']:
        _, _, _, occ = fill_d_orbitals(n, spin)
        t2g_a, eg_a = jt_activity(occ)
        label = f"d{n}({'HS' if spin == 'high' else 'LS'})"
        if eg_a:
            strong_jt.append(label)
        elif t2g_a:
            weak_jt.append(label)
        else:
            inactive.append(label)

print("強いJahn-Teller活性 (eg軌道が不均等):", strong_jt)
print("弱いJahn-Teller活性 (t2g軌道のみ不均等):", weak_jt)
print("Jahn-Teller不活性 (対称配置):", inactive)

結果: 強いJahn-Teller活性($e_g$不均等)は高スピン$d^4$、低スピン$d^7$、$d^9$(高スピン・低スピン共通)で現れる。弱い活性($t_{2g}$不均等のみ)は$d^1$、$d^2$、高スピン$d^6$、高スピン$d^7$、低スピン$d^5$で現れる。$d^3$、高スピン$d^5$、低スピン$d^6$、$d^8$は対称配置でJahn-Teller不活性である。$e_g$軌道($d_{z^2}, d_{x^2-y^2}$)は配位子の方向を直接向いているため、その占有の不均等は$\sigma$結合の強さに直接的な非対称性を生み、歪みによる安定化エネルギーが大きい。一方$t_{2g}$軌道は配位子の方向を避けているため、その不均等占有が結合強度に及ぼす影響は間接的($\pi$相互作用を介する程度)で小さく、観測される歪みも通常は無視できるほど小さい。

参考文献

1. Jahn, H.A., Teller, E. (1937). "Stability of Polyatomic Molecules in Degenerate Electronic States". Proceedings of the Royal Society A, 161(905), 220-235.

2. Tanabe, Y., Sugano, S. (1954). "On the Absorption Spectra of Complex Ions". Journal of the Physical Society of Japan, 9(5), 753-766.

3. Figgis, B.N., Hitchman, M.A. (2000). Ligand Field Theory and Its Applications. Wiley-VCH, pp. 1-90.

4. Miessler, G.L., Fischer, P.J., Tarr, D.A. (2014). Inorganic Chemistry, 5th Edition. Pearson, pp. 375-430.

5. Housecroft, C.E., Sharpe, A.G. (2018). Inorganic Chemistry, 5th Edition. Pearson, pp. 620-670.

6. Orgel, L.E. (1952). "The Effects of Crystal Fields on the Properties of Transition-Metal Ions". Journal of Chemical Physics, 20, 1819.

7. Bethe, H. (1929). "Termaufspaltung in Kristallen". Annalen der Physik, 395(2), 133-208.

8. Shriver, D.F., Atkins, P.W. (2010). Inorganic Chemistry, 5th Edition. W.H. Freeman, pp. 550-600.

9. SciPy Developers. "scipy.optimize.fminbound — SciPy Documentation". https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.fminbound.html

学習目標確認

レベル1(基本理解)

レベル2(実践スキル)

レベル3(応用力)

← 第2章 | シリーズ目次 | 第4章 →

免責事項