マクスウェル方程式の基礎と物理的意味をわかりやすく解説

マクスウェル方程式は電磁気学の根幹をなす4つの方程式であり、電場、磁場、電荷、電流の関係を完全に記述します。

無線工学や光学、アンテナ設計など、電磁波に関わるすべての分野の基礎となる方程式です。今回は、マクスウェル方程式に再入門し、その物理的意味を丁寧に解説します。

本記事の内容

  • マクスウェル方程式の4つの式とその物理的意味
  • 微分形と積分形の関係
  • 電磁波の波動方程式の導出
  • Pythonでの電磁波シミュレーション

マクスウェル方程式(微分形)

マクスウェル方程式は以下の4つの式から成り立っています。

$$ \begin{align} \nabla \cdot \bm{D} &= \rho \quad &(\text{ガウスの法則}) \\ \nabla \cdot \bm{B} &= 0 \quad &(\text{磁束保存の法則}) \\ \nabla \times \bm{E} &= -\frac{\partial \bm{B}}{\partial t} \quad &(\text{ファラデーの法則}) \\ \nabla \times \bm{H} &= \bm{j} + \frac{\partial \bm{D}}{\partial t} \quad &(\text{アンペール・マクスウェルの法則}) \end{align} $$

ここで、 * $\bm{E}$: 電場 [V/m] * $\bm{H}$: 磁場 [A/m] * $\bm{D} = \varepsilon \bm{E}$: 電束密度 [C/m$^2$] * $\bm{B} = \mu \bm{H}$: 磁束密度 [T] * $\rho$: 電荷密度 [C/m$^3$] * $\bm{j}$: 電流密度 [A/m$^2$]

各式の物理的意味

ガウスの法則

$$ \nabla \cdot \bm{D} = \rho $$

電荷が電場の源であることを表します。正電荷からは電気力線が湧き出し、負電荷へ吸い込まれます。閉曲面を貫く電束は、内部の電荷の総量に等しいです。

磁束保存の法則

$$ \nabla \cdot \bm{B} = 0 $$

磁気単極子(磁気モノポール)が存在しないことを表します。磁力線は必ずループを形成し、湧き出しも吸い込みもありません。

ファラデーの法則

$$ \nabla \times \bm{E} = -\frac{\partial \bm{B}}{\partial t} $$

時間変化する磁場が電場を生じることを表します。これは電磁誘導の法則であり、発電機やトランスの原理です。

アンペール・マクスウェルの法則

$$ \nabla \times \bm{H} = \bm{j} + \frac{\partial \bm{D}}{\partial t} $$

電流と時間変化する電場が磁場を生じることを表します。右辺第2項 $\partial \bm{D}/\partial t$ はマクスウェルが追加した変位電流項で、この項の存在により電磁波の伝搬が理論的に予言されました。

積分形

微分形にガウスの発散定理とストークスの定理を適用すると、積分形が得られます。

$$ \begin{align} \oint_S \bm{D} \cdot d\bm{S} &= \int_V \rho \, dV \\ \oint_S \bm{B} \cdot d\bm{S} &= 0 \\ \oint_C \bm{E} \cdot d\bm{l} &= -\frac{d}{dt}\int_S \bm{B} \cdot d\bm{S} \\ \oint_C \bm{H} \cdot d\bm{l} &= \int_S \left(\bm{j} + \frac{\partial \bm{D}}{\partial t}\right) \cdot d\bm{S} \end{align} $$

電磁波の波動方程式

自由空間($\rho = 0$, $\bm{j} = 0$)でのマクスウェル方程式から波動方程式を導出します。

ファラデーの法則の両辺に $\nabla \times$ を適用すると、

$$ \nabla \times (\nabla \times \bm{E}) = -\mu \frac{\partial}{\partial t}(\nabla \times \bm{H}) $$

アンペール・マクスウェルの法則を代入し、

$$ \nabla \times (\nabla \times \bm{E}) = -\mu \varepsilon \frac{\partial^2 \bm{E}}{\partial t^2} $$

ベクトル恒等式 $\nabla \times (\nabla \times \bm{E}) = \nabla(\nabla \cdot \bm{E}) – \nabla^2 \bm{E}$ と $\nabla \cdot \bm{E} = 0$ を用いると、

$$ \nabla^2 \bm{E} = \mu \varepsilon \frac{\partial^2 \bm{E}}{\partial t^2} $$

これは波動方程式であり、電磁波の伝搬速度は、

$$ v = \frac{1}{\sqrt{\mu \varepsilon}} $$

真空中では $v = 1/\sqrt{\mu_0 \varepsilon_0} = c \approx 3 \times 10^8$ m/s となり、光速と一致します。

Pythonで1次元電磁波のFDTDシミュレーション

import numpy as np
import matplotlib.pyplot as plt

# FDTD法(Finite-Difference Time-Domain)による1次元電磁波シミュレーション
# パラメータ
c0 = 3e8           # 光速 [m/s]
eps0 = 8.854e-12   # 真空の誘電率
mu0 = 4 * np.pi * 1e-7  # 真空の透磁率

# グリッド
Nz = 500           # 空間グリッド数
dz = 1e-3          # 空間刻み [m]
dt = dz / (2 * c0) # 時間刻み(CFL条件)
Nt = 1000          # 時間ステップ数

# 電場と磁場の配列
Ex = np.zeros(Nz)
Hy = np.zeros(Nz)

# 媒質パラメータ(一部に誘電体を配置)
eps_r = np.ones(Nz)
eps_r[300:400] = 4.0  # 比誘電率4の媒質

# 更新係数
cE = dt / (eps0 * eps_r * dz)
cH = dt / (mu0 * dz)

# ソース(ガウスパルス)
source_pos = 100
freq_center = 10e9  # 中心周波数 10 GHz
t0 = 30 * dt        # パルスの中心時刻
sigma = 10 * dt      # パルスの幅

# シミュレーション
snapshots = []
snapshot_times = [100, 300, 500, 700]

for n in range(Nt):
    t = n * dt

    # 磁場の更新
    Hy[:-1] += cH[:-1] * (Ex[1:] - Ex[:-1])

    # ソースの注入
    source = np.exp(-((t - t0) / sigma)**2) * np.sin(2 * np.pi * freq_center * t)
    Hy[source_pos] += source

    # 電場の更新
    Ex[1:] += cE[1:] * (Hy[1:] - Hy[:-1])

    # 吸収境界条件(簡易)
    Ex[0] = 0
    Ex[-1] = 0

    if n in snapshot_times:
        snapshots.append((n, Ex.copy(), Hy.copy()))

# 可視化
fig, axes = plt.subplots(2, 2, figsize=(14, 10))
z = np.arange(Nz) * dz * 1e3  # mm

for idx, (n, ex, hy) in enumerate(snapshots):
    ax = axes[idx // 2, idx % 2]
    ax.plot(z, ex, 'b-', label='Ex', linewidth=1)
    ax.plot(z, hy * 377, 'r-', label='Hy x 377', linewidth=1, alpha=0.7)

    # 誘電体の領域を表示
    ax.axvspan(300 * dz * 1e3, 400 * dz * 1e3,
               alpha=0.2, color='gray', label='Dielectric (eps_r=4)')

    ax.set_xlabel('z [mm]')
    ax.set_ylabel('Field Amplitude')
    ax.set_title(f'Time step n = {n}')
    ax.legend(loc='upper right')
    ax.grid(True, alpha=0.3)
    ax.set_ylim(-1.5, 1.5)

plt.suptitle('1D FDTD Electromagnetic Wave Simulation', fontsize=14)
plt.tight_layout()
plt.show()

このFDTDシミュレーションでは、ガウスパルスが空間を伝搬し、誘電体境界で反射・透過する様子を観察できます。

まとめ

本記事では、マクスウェル方程式の基礎と物理的意味を解説しました。

  • マクスウェル方程式は電場と磁場の関係を記述する4つの基本方程式から成る
  • ガウスの法則は電荷が電場の源であることを、磁束保存則は磁気モノポールの非存在を表す
  • ファラデーの法則とアンペール・マクスウェルの法則が電磁誘導と電磁波の伝搬を記述する
  • 自由空間のマクスウェル方程式から波動方程式が導出され、電磁波の伝搬速度 $c = 1/\sqrt{\mu_0 \varepsilon_0}$ が得られる
  • FDTD法によりマクスウェル方程式を数値的にシミュレーションできる