自己インダクタンスと相互インダクタンス

コイルに電流を流すと磁場が生じ、その磁場が自らのコイルを貫く磁束を作ります。電流が変化すると磁束も変化し、ファラデーの法則により起電力が誘導されます。この「自分自身への電磁誘導」を定量化するのが自己インダクタンスです。

本記事の内容

  • 自己インダクタンス $L$ の定義
  • ソレノイドの $L$ の計算
  • 相互インダクタンス $M$
  • 磁気エネルギー $U = LI^2/2$
  • RL回路の過渡応答
  • Pythonでの可視化

前提知識

自己インダクタンス

定義

$N$ 巻きコイルに電流 $I$ を流したとき、コイルを貫く全磁束鎖交数 $N\Phi_B$ は $I$ に比例します:

$$ \boxed{L = \frac{N\Phi_B}{I}} $$

$L$ の単位はヘンリー [H] です。自己誘導起電力は:

$$ \mathcal{E}_L = -L\frac{dI}{dt} $$

ソレノイドの自己インダクタンス

長さ $l$、巻数 $N$、断面積 $A$ のソレノイドの内部磁場:$B = \mu_0 nI = \mu_0 NI/l$

$$ L = \frac{N\Phi_B}{I} = \frac{N \cdot BA}{I} = \frac{N \cdot \mu_0 NI A / l}{I} = \frac{\mu_0 N^2 A}{l} $$

$$ \boxed{L = \mu_0 n^2 Al = \frac{\mu_0 N^2 A}{l}} $$

相互インダクタンス

2つのコイルがあるとき、コイル1の電流 $I_1$ がコイル2に鎖交する磁束を $\Phi_{21}$ とすると:

$$ M = \frac{N_2\Phi_{21}}{I_1} $$

ノイマンの公式より、$M_{12} = M_{21} = M$ が成り立ちます。

結合係数

$$ k = \frac{M}{\sqrt{L_1 L_2}}, \quad 0 \leq k \leq 1 $$

$k = 1$ で完全結合(理想変圧器)。

磁気エネルギー

インダクタンス $L$ に電流 $I$ が蓄えるエネルギー:

$$ \boxed{U = \frac{1}{2}LI^2} $$

導出:$dW = \mathcal{E}_L I \, dt = LI \, dI$ を積分して $U = \int_0^I LI’ \, dI’ = LI^2/2$

RL回路の過渡応答

充電過程(スイッチON)

$$ V_0 = L\frac{dI}{dt} + RI $$

$$ \boxed{I(t) = \frac{V_0}{R}\left(1 – e^{-t/\tau}\right), \quad \tau = \frac{L}{R}} $$

放電過程

$$ I(t) = I_0 e^{-t/\tau} $$

Pythonでの可視化

import numpy as np
import matplotlib.pyplot as plt

fig, axes = plt.subplots(1, 3, figsize=(16, 5))

# (1) RL回路の過渡応答
V0 = 12; R = 100; L = 0.5
tau = L / R
t = np.linspace(0, 5*tau, 300)
I_on = V0/R * (1 - np.exp(-t/tau))
I_off = V0/R * np.exp(-t/tau)

axes[0].plot(t*1e3, I_on*1e3, 'b-', lw=2.5, label='Switch ON')
axes[0].plot(t*1e3, I_off*1e3, 'r--', lw=2.5, label='Switch OFF')
axes[0].axhline(V0/R*1e3, color='gray', ls=':', alpha=0.5)
axes[0].axvline(tau*1e3, color='g', ls='--', alpha=0.5, label=f'$\\tau$={tau*1e3:.1f}ms')
axes[0].set_xlabel('Time [ms]'); axes[0].set_ylabel('Current [mA]')
axes[0].set_title('RL circuit transient', fontsize=13)
axes[0].legend(); axes[0].grid(True, alpha=0.3)

# (2) 磁気エネルギー vs 電流
I_range = np.linspace(0, 5, 200)
for L_val in [0.1, 0.5, 1.0, 2.0]:
    U = 0.5 * L_val * I_range**2
    axes[1].plot(I_range, U, lw=2, label=f'L={L_val}H')
axes[1].set_xlabel('Current [A]'); axes[1].set_ylabel('Energy [J]')
axes[1].set_title('Stored energy $U=LI^2/2$', fontsize=13)
axes[1].legend(); axes[1].grid(True, alpha=0.3)

# (3) ソレノイドのL vs 巻数
n_range = np.linspace(100, 5000, 200)  # 巻数/m
mu0 = 4*np.pi*1e-7; A = 1e-4; l = 0.1
L_sol = mu0 * n_range**2 * A * l

axes[2].plot(n_range, L_sol*1e3, 'b-', lw=2.5)
axes[2].set_xlabel('Turns per meter $n$ [1/m]'); axes[2].set_ylabel('$L$ [mH]')
axes[2].set_title('Solenoid inductance', fontsize=13)
axes[2].grid(True, alpha=0.3)

plt.tight_layout()
plt.show()

まとめ

  • 自己インダクタンス: $L = N\Phi_B/I$、自己誘導起電力 $\mathcal{E} = -LdI/dt$
  • ソレノイド: $L = \mu_0 N^2 A/l$
  • 相互インダクタンス: $M = N_2\Phi_{21}/I_1$、結合係数 $k = M/\sqrt{L_1L_2}$
  • 磁気エネルギー: $U = LI^2/2$
  • RL回路の時定数: $\tau = L/R$

次のステップとして、以下の記事も参考にしてください。