さて、ある線形時不変フィルタに $x[i]$ を入力した時の出力を $y[i]$ とします。

この時、出力 $y[i]$ 、入力 $x[i]$、 インパルス応答 $h[i]$ の間には次の関係式が成り立っています。
以下の演算を「$h[i]$と$x[i]$の畳込み演算 (Convolution)」と呼びます。

畳込み演算 (Convolution) \begin{align*} y[i] & = \sum_{n=0}^{\infty} \left \{ h[n] \cdot x[i-n] \} \right \} \\ & = h[0]\cdot x[i] + h[1] \cdot x[i-1] + h[2] \cdot x[i-2] + \cdots \end{align*}

ちなみに上の式内の$\sum$の範囲が0から$\infty$になっていますので、実際にはプログラムで計算することは出来ません(無限のforループが必要になります)。

また畳込み演算はZ 変換により積に変わるという性質がありますので、上の畳み込み式の両辺を Z 変換することで次の式が得られます。

畳み込み演算の Z 変換

$\textrm{Y}(z)$ ・・・ $y[i]$ の Z 変換

$\textrm{X}(z)$ ・・・ $x[i]$ の Z 変換

$\textrm{H}(z)$ ・・・ $h[i]$ の Z 変換

としたとき

\begin{align*} \textrm{Y}(z) = \textrm{H}(z) \cdot \textrm{X}(z) \end{align*}

が成り立つ

この $\textrm{H}(z)$ を伝達関数と呼び、詳しくは次のページで説明します。