Pythonで直列共振のインピーダンスの変化を見る

python

Pythonで直列共振のインピーダンスの変化を見る。誘導性リアクタンスと容量性リアクタンスは

\begin{align}
X_L = 2 \pi f L \hspace{10mm} X_C=\frac{1}{2 \pi f C}
\end{align}

これよりインピーダンスの大きさは

\begin{align}
Z=\sqrt{R^2+(X_L-X_C)^2}
\end{align}

また共振周波数は

\begin{align}
f=\frac{1}{2 \pi \sqrt{LC}}
\end{align}

グラフが最小値を取るときの周波数が共振周波数である。

以下コード

import numpy as np
import matplotlib.pyplot as plt

R = 10
C = 0.01 * 10 ** (-6)
L = 4.7 * 10 ** (-3)
N = 1000
f = np.linspace(20000, 30000, N)

Z = [0] * N

for i in range(0, N):
    absXL = 2 * np.pi * f[i] * L
    absXC = 1 / (2 * np.pi * f[i] * C)
    Z[i] = np.sqrt(R ** 2 + (absXL - absXC) ** 2)

print(1/(2*np.pi*np.sqrt(L*C)))
plt.plot(f, Z)
plt.show()
plt.grid()

コメント

タイトルとURLをコピーしました