マクスウェルは、アンペールの法則に潜む矛盾を発見し、変位電流という概念を導入して法則を修正しました。この修正が電磁波の存在を理論的に予言し、電磁気学を完成させました。
本記事の内容
- アンペールの法則の矛盾(コンデンサ問題)
- 変位電流 $\bm{J}_d = \varepsilon_0 \partial\bm{E}/\partial t$
- 修正アンペールの法則
- 電磁波の予言
- Pythonでの可視化
前提知識
アンペールの法則の矛盾
元のアンペールの法則:$\nabla\times\bm{B} = \mu_0\bm{J}$
この式の両辺に発散をとると:
$$ \nabla\cdot(\nabla\times\bm{B}) = \mu_0\nabla\cdot\bm{J} $$
左辺は恒等的にゼロ。よって $\nabla\cdot\bm{J} = 0$ が要求されます。しかしこれは電荷保存則(連続の方程式)$\nabla\cdot\bm{J} = -\partial\rho/\partial t$ と矛盾します($\rho$ が時間変化する場合)。
コンデンサの充電
充電中のコンデンサの極板間には伝導電流が流れませんが、極板を貫く面でアンペールの法則を適用すると矛盾が生じます。
マクスウェルの修正
ガウスの法則 $\nabla\cdot\bm{E} = \rho/\varepsilon_0$ を時間微分すると:
$$ \nabla\cdot\left(\varepsilon_0\frac{\partial\bm{E}}{\partial t}\right) = \frac{\partial\rho}{\partial t} $$
電荷保存則と合わせると:
$$ \nabla\cdot\left(\bm{J} + \varepsilon_0\frac{\partial\bm{E}}{\partial t}\right) = 0 $$
よって修正されたアンペールの法則は:
$$ \boxed{\nabla\times\bm{B} = \mu_0\bm{J} + \mu_0\varepsilon_0\frac{\partial\bm{E}}{\partial t}} $$
$\varepsilon_0\partial\bm{E}/\partial t$ が変位電流密度 $\bm{J}_d$ です。
電磁波の予言
変位電流を含むマクスウェル方程式から、真空中の波動方程式が導かれます:
$$ \nabla^2\bm{E} = \mu_0\varepsilon_0\frac{\partial^2\bm{E}}{\partial t^2} $$
これは速度 $c = 1/\sqrt{\mu_0\varepsilon_0} \approx 3\times10^8$ m/s の波を表し、光速と一致します。
Pythonでの可視化
import numpy as np
import matplotlib.pyplot as plt
fig, axes = plt.subplots(1, 2, figsize=(14, 6))
# (1) コンデンサ充電時の変位電流
eps0 = 8.854e-12; A = 0.01; d = 0.001; C = eps0*A/d
R = 1000; V0 = 10; tau = R*C
t = np.linspace(0, 5*tau, 300)
I_cond = V0/R * np.exp(-t/tau) # 伝導電流
V_cap = V0 * (1 - np.exp(-t/tau)) # コンデンサ電圧
E_cap = V_cap / d # 極板間電場
I_disp = eps0 * A * V0/(R*tau) * np.exp(-t/tau) # 変位電流
axes[0].plot(t/tau, I_cond*1e3, 'b-', lw=2, label='Conduction $I$')
axes[0].plot(t/tau, I_disp*1e3, 'r--', lw=2, label='Displacement $I_d$')
axes[0].set_xlabel('$t/\\tau$'); axes[0].set_ylabel('Current [mA]')
axes[0].set_title('Conduction vs displacement current', fontsize=13)
axes[0].legend(); axes[0].grid(True, alpha=0.3)
# (2) 電磁波:E場とB場
x = np.linspace(0, 4*np.pi, 500)
E = np.sin(x)
B = np.sin(x) # 同位相
axes[1].plot(x, E, 'b-', lw=2, label='$E_y$')
axes[1].plot(x, B, 'r-', lw=2, label='$B_z$')
axes[1].set_xlabel('$x$ (propagation direction)'); axes[1].set_ylabel('Amplitude')
axes[1].set_title('Electromagnetic wave', fontsize=13)
axes[1].legend(); axes[1].grid(True, alpha=0.3)
plt.tight_layout()
plt.show()
まとめ
- 変位電流: $\bm{J}_d = \varepsilon_0\partial\bm{E}/\partial t$
- 修正アンペールの法則: $\nabla\times\bm{B} = \mu_0(\bm{J} + \varepsilon_0\partial\bm{E}/\partial t)$
- 変位電流の導入で電荷保存則との整合性が回復
- 電磁波の速度 $c = 1/\sqrt{\mu_0\varepsilon_0}$ が光速と一致
次のステップとして、以下の記事も参考にしてください。