インパルス応答

インパルス応答（インパルスおうとう、英語: impulse response）とは、インパルスと呼ばれる非常に短い信号を入力したときのシステムの出力である。インパルス反応とも。インパルスとは、時間的幅が無限小で高さが無限大のパルスである。実際のシステムではこのような信号は生成できないが、理想化としては有益な概念である。 LTIシステム（線形時不変系）と呼ばれるシステムは、そのインパルス応答によって完全に特徴付けられる。 数学的には、インパルスはディラックのデルタ関数でモデル化される。T を（離散）システムとし、入力として x[n] をとり、y[n] という出力を生成するものとする。 y [ n ] = T [ x [ n ] ] {\displaystyle y\left[n\right]=T\left[x\left[n\right]\right]} したがって、T は（整数の）並びに作用して、別の並びを生成する作用素である。T はシステムそのものではなく、システムを数学的に表したものであることに注意が必要である。次のような T は非線形である。 T [ x [ n ] ] = x 2 [ n ] {\displaystyle T\left[x\left[n\right]\right]=x^{2}\left[n\right]} また、次の場合は線形である。 T [ x [ n ] ] = x [ n − 1 ] {\displaystyle T\left[x\left[n\right]\right]=x\left[n-1\right]} T が線形であるとする。すると次が成り立つ。 T [ x [ n ] + y [ n ] ] = T [ x [ n ] ] + T [ y [ n ] ] {\displaystyle T\left[x\left[n\right]+y\left[n\right]\right]=T\left[x\left[n\right]\right]+T\left[y\left[n\right]\right]} また、次も成り立つ。 T [ λ x [ n ] ] = λ T [ x [ n ] ] {\displaystyle T\left[\lambda x\left[n\right]\right]=\lambda T\left[x\left[n\right]\right]} また、T が y [ n ] = T [ x [ n ] ] {\displaystyle y\left[n\right]=T\left[x\left[n\right]\right]} であるとき y [ n − k ] = T [ x [ n − k ] ] {\displaystyle y\left[n-k\right]=T\left[x\left[n-k\right]\right]} となるような変換について不変であるとする。このようなシステムでは、入力から得られる出力を計算で求めることができ、インパルス応答と呼ばれる特殊な並びでそのシステムの特性を完全に表すことができる。これは、次のように示すことができる。次の恒等式がある。 x [ n ] = ∑ k x [ k ] δ [ n − k ] {\displaystyle x\left[n\right]=\sum _{k}x\left[k\right]\delta \left[n-k\right]} この両辺に T を作用させる。 T [ x [ n ] ] = T [ ∑ k x [ k ] δ [ n − k ] ] {\displaystyle T\left[x\left[n\right]\right]=T\left[\sum _{k}x\left[k\right]\delta \left[n-k\right]\right]} もちろん、この式は以下の項が T の定義域にある場合のみ意味がある。 ∑ k x [ k ] δ [ n − k ] {\displaystyle \sum _{k}x\left[k\right]\delta \left[n-k\right]} ここで、T は線形で、かつ変換に対して不変であるから、次のように書き換えられる。 T [ x [ n ] ] = ∑ k x [ k ] T [ δ [ n − k ] ] {\displaystyle T\left[x\left[n\right]\right]=\sum _{k}x\left[k\right]T\left[\delta \left[n-k\right]\right]} 出力 y[k] は次のように与えられる。 y [ k ] = T [ x [ k ] ] {\displaystyle y\left[k\right]=T\left[x\left[k\right]\right]} したがって、次のように書くことができる。 y [ n ] = ∑ k x [ k ] T [ δ [ n − k ] ] {\displaystyle y\left[n\right]=\sum _{k}x\left[k\right]T\left[\delta \left[n-k\right]\right]} ここで h [ n − k ] = T [ δ [ n − k ] ] {\displaystyle h\left[n-k\right]=T\left[\delta \left[n-k\right]\right]} のように置くと、最終的に次の式が得られる。 y [ n ] = ∑ k x [ k ] h [ n − k ] {\displaystyle y\left[n\right]=\sum _{k}x\left[k\right]h\left[n-k\right]} h [ n ] {\displaystyle h\left[n\right]} は T で表されるシステムのインパルス応答である。上記からわかるように、h[n] は入力が離散的なディラックのデルタ関数であった時のシステム出力である。連続的な時間系でも、同様の結果が成り立つ。 概念的な例として、ある部屋の中に風船があり、その位置を p とする。風船が弾むと、「ぽん」という音がする。ここで、この部屋は「ぽん」という音を入力として多重反射させるシステム T である。入力 δ p [ n ] {\displaystyle \delta _{p}[n]} は「ぽん」であり、時間的幅が短いのでディラックのデルタ関数に似ている。出力 h[n,p] は残響の並びである。h[n,p] は風船の位置(p)に依存する。部屋の中のあらゆる位置 p について h[n,p] が判っていれば、我々はこの部屋のインパルス応答を把握していることになる。すると、その部屋が生成する音がどうなるかを常に予測することが可能となる。 数学においては、線型写像のインパルス応答は、写像におけるディラックのデルタ関数の像である。 インパルス応答関数のラプラス変換は、伝達関数として知られている。一般に、インパルス応答関数よりも伝達関数を使ってシステムを解析するほうが容易である。システムの出力のラプラス変換は、複素平面上（周波数領域）で伝達関数と入力関数の積を求めることで決定される。この結果に逆ラプラス変換を施すと、時間領域における出力関数が得られる。 時間領域で出力関数を直接決定するには、入力関数とインパルス応答関数の畳み込みが必要となる。これには積分が必要となり、周波数領域で2つの関数の単なる積を求めるよりも難しい。 実際のシステムでは、テスト用の入力として完全なインパルスを生成するのは不可能である。したがって、インパルスの近似として短いパルスを使う。そのパルスがインパルス応答に比較して短ければ、その結果は理論上のインパルス応答に十分近いと言える。 1980年代にスピーカーのインパルス応答評価法が開発され、スピーカーの設計が大いに進歩した。スピーカーでは位相歪みが問題となる。これは、周波数特性のような測定可能な一般的特性とは異なる問題である。位相歪みは、共振、コーンにおけるエネルギー蓄積、スピーカー躯体の振動などによって発生する微妙な音の遅延が原因で発生する。位相歪みは音をにじませ（スミアー）、透明感がなくなる原因となる。インパルス応答を測定すると、その時間スミアーが分かるので、コーンや躯体の材質や形状の改良などに使うことで歪みを低減させることが可能となった。当初、短いパルスを使っていたが、システムの線形性を維持するには振幅を大きくできず、結果として出力も小さくなるため、ノイズとの識別が困難だった。その後、M系列のような入力を使うようになり、コンピュータを使ってそこからインパルス応答を求めるようになった。最近では、周波数ごとの遅延応答を図示できるようになっている。その応用としてホールなどの残響を測定し、音響設計をする手段としても用いられる。 インパルス応答は、音響処理におけるデジタルフィルタの設計で非常に重要である。デジタルフィルタは耳障りなプレエコーを生成することが多いためである。 インパルス応答解析は、レーダー、超音波検査、その他のデジタル信号処理でも重視される。興味深い例としてブロードバンドインターネット接続がある。電話回線では4kHzの音声信号（あるいはモデムを使って300bit/sのデータ）しか送れなかったが、現在では同じ回線で2Mb/sが可能となっている。これは、回線上で発生するエコーやスミアーを消し去る適応フィルタによるところが大きい。 制御理論では、インパルス応答はディラックのデルタ関数の入力への応答特性である。これは力学系の解析に有効である。デルタ関数をラプラス変換すると1になるので、インパルス応答はシステムの伝達関数の逆ラプラス変換と等価になる。 有限インパルス応答 - 無限インパルス応答 ディラックのデルタ関数 グリーン関数 周波数特性 クロネッカーのデルタ LTIシステム理論 伝達関数法