📝
Pythonで学ぶデジタル信号処理(2離散時間信号とシステム①)
離散時間信号の表現と性質
離散時間信号は、ディジタル信号処理において非常に重要な役割を果たします。この記事では、離散時間信号の表現と性質について詳しく説明します。
離散時間信号とは
離散時間信号は、時間が離散的な値を取る信号です。つまり、時間が連続的ではなく、一定の時間間隔で値がサンプリングされたものです。離散時間信号は、アナログ信号をディジタル化する際に生成されます。離散時間信号は、離散時間インデックスと信号値のペアの集合として以下のように表現されます。離散時間インデックスはサンプリング周波数で正規化された時間を表します。
離散時間信号の性質
性質①離散時間での周期性
1サンプリング周期あたりに進む位相を正規化各周波数と呼び、
について、
本来ならば、周期
性質②正規化角周波数に2πを足すと、元に戻る
グラフで表すと、
サンプリング1回の間に1周期増えることで、離散化後は同じ値を取っていることがわかる
使用コード
# ライブラリのインポート
import numpy as np
import matplotlib.pyplot as plt
# 性質①
n = np.arange(0, 17, 1)
omega1 = np.pi / 4
omega2 = 2
x1 = np.cos(omega1 * n)
x2 = np.cos(omega2 * n)
t = np.arange(0, 16.001, 0.001)
y1 = np.cos(omega1 * t)
y2 = np.cos(omega2 * t)
plt.stem(n, x1)
plt.plot(t, y1, linestyle="dashed")
plt.grid()
plt.title("ω=π/4")
plt.show()
plt.stem(n, x2)
plt.plot(t, y2, linestyle="dashed")
plt.grid()
plt.title("ω=2")
plt.show()
# 性質②
omega3 = omega1 + 2*np.pi
y3 = np.cos(omega3*t)
x3 = np.cos(omega3*n)
fig = plt.figure(figsize=(12, 6))
plt.plot(t, y1, ls="--")
plt.plot(t, y3, ls="--")
plt.stem(n, x3)
plt.show()
参考文献
Discussion