dsp: tone rework until section 2
This commit is contained in:
53
wip/dsp.md
53
wip/dsp.md
@@ -97,67 +97,69 @@ The general direction is to stay boring, but the deadpan kind of boring. Keep te
|
|||||||
- Most of the framework rests on the LTI assumption
|
- Most of the framework rests on the LTI assumption
|
||||||
- Signal–system equivalence, convolution, commutativity, frequency-domain analysis — all require linearity and time-invariance
|
- Signal–system equivalence, convolution, commutativity, frequency-domain analysis — all require linearity and time-invariance
|
||||||
- Real systems break the assumption routinely
|
- Real systems break the assumption routinely
|
||||||
- The framework is studied not as a description of reality, but as a baseline against which deviations are understood
|
- Nonlinearity is not binary — it is a spectrum
|
||||||
|
- Some systems are close enough to linear that the theory applies as a practical approximation
|
||||||
|
- Others are not — linear theory offers no useful prediction
|
||||||
|
- Judging where a system falls requires knowing what linearity is in the first place
|
||||||
|
- The framework is studied not as a description of reality, but as a baseline against which deviations are measured
|
||||||
|
|
||||||
## Text (lyrics if you insist)
|
## Text (lyrics if you insist)
|
||||||
|
|
||||||
信号とシステム、そしてデジタル信号処理について説明する。
|
今度は、信号とシステム、そしてデジタル信号処理について説明する。
|
||||||
|
|
||||||
### 1. 信号とシステム
|
### 1. 信号とシステム
|
||||||
|
|
||||||
まず信号とは何か、次にシステムとは何かを定義し、その上でシステムの性質を議論する。
|
信号とシステムを知るには、信号とシステム両方を知る必要がある。
|
||||||
|
|
||||||
信号とは情報を運ぶものである。
|
信号とは情報を運ぶものである。
|
||||||
ここでは時間の経過とともに振幅がどう変化するか、その関数として扱う。
|
ここでは時間の経過とともに振幅がどう変化するか、その関数として扱う。
|
||||||
|
|
||||||
システムとは、入力信号を受け取り、出力信号を返す操作である。
|
システムとは、入力信号を受け取り、出力信号を出す箱である。
|
||||||
箱の中身は問わない。何を入れたら何が出るか、その関係だけがシステムを定義する。
|
箱の中身は問わない。何を入れたら何が出るか、その関係だけがシステムを定義する。
|
||||||
|
|
||||||
システムの性質として、まず線形性を取り上げる。
|
システムにはいくつか性質がある。線形性。
|
||||||
線形システムとは、重ね合わせの原理が成り立つシステムである。
|
線形システムとは、重ね合わせの原理が成り立つシステムである。
|
||||||
入力を2倍にすれば出力も2倍になる。二つの入力を足し合わせたときの出力は、それぞれ単独で入れたときの出力を足したものと等しい。
|
入力を2倍にすれば出力も2倍になる。二つの入力を足し合わせたときの出力は、それぞれ単独で入れたときの出力を足したものと等しい。
|
||||||
この二つの条件が揃ったとき、そのシステムは線形である。
|
この二つの条件が揃ったとき、そのシステムは線形である。
|
||||||
|
|
||||||
ただし注意が必要である。
|
ただ、多くの物理システムはこの条件を満たさない。線形性は特殊であり、当たり前ではない。
|
||||||
多くの物理システムはこの条件を満たさない。線形性は特殊な性質であり、当たり前ではない。
|
|
||||||
|
|
||||||
次に時不変性について述べる。
|
そして時不変性。
|
||||||
時不変システムとは、入力を時間軸上でずらしたとき、出力も同じだけずれるシステムである。
|
時不変システムとは、入力を時間軸上でずらしたとき、出力も同じだけずれるシステムである。
|
||||||
今日と明日で同じ入力を与えれば、同じ出力が返ってくる。
|
今日と明日で同じ入力を与えれば、同じ出力が返ってくる。
|
||||||
パラメータが時間とともに変わるシステムは、この条件を満たさない。
|
パラメータが時間とともに変わるシステムは、この条件を満たさない。
|
||||||
|
|
||||||
線形かつ時不変なシステムを、線形時不変システムと呼ぶ。以降の議論はこれを対象とする。
|
線形かつ時不変なシステムを、線形時不変システムと呼ぶ。ここから先は一旦これだけを扱う。
|
||||||
これは解析的に扱いやすい、意図的に絞った特殊ケースである。現実の典型ではない。
|
これは解析的に扱いやすい、意図的に絞った特殊ケースである。現実の大半はこれに当てはまらない。けど、解析的に扱いやすいから線形時不変だけを考える。
|
||||||
|
|
||||||
線形時不変システムをさらに掘り下げる前に、インパルス信号を導入する。
|
ここで道具を一つ出す。インパルス信号である。
|
||||||
インパルス信号とは、単一の瞬間に単位エネルギーが集中した信号である。実際には存在しない理想だが、有用な概念道具である。
|
単一の瞬間に単位エネルギーが集中した信号で、実際には存在しない理想だが、使える。ちなみに瞬間とは無限に短い間のことである。
|
||||||
このインパルスを線形時不変システムに入力したときの出力を、インパルス応答と呼ぶ。
|
このインパルスをある線形時不変システムに通した出力を、そのシステムのインパルス応答と呼ぶ。
|
||||||
|
|
||||||
インパルス応答は、そのシステムを完全に決定する。
|
インパルス応答は、そのシステムを完全に表現できる。システムが確定したらインパルス応答も唯一になり、インパルス応答があれば唯一に対応するシステムも特定できる。
|
||||||
なぜなら、任意の入力はインパルスの積み重ねとして分解できるからである。インパルス応答さえ分かれば、どんな入力に対する出力も計算できる。
|
任意の入力はインパルスの積み重ねとして分解できる。インパルス応答さえ分かれば、どんな入力に対する出力も計算できる。
|
||||||
|
|
||||||
もう一つ重要なことがある。
|
それと、インパルス応答はシステムの出力でありながら、信号と同じ種類の関数である。
|
||||||
インパルス応答は、システムの出力でありながら、信号と同じ種類の関数である。
|
つまりインパルス応答によって、システムは信号と同じ空間に置ける。操作の上では、システムと信号の区別は消える。
|
||||||
つまりシステムは、信号と同じ操作の空間に置くことができる。システムと信号の区別は、操作の上では消える。
|
|
||||||
|
|
||||||
### 2. 線形時不変システムと畳み込み
|
### 2. 線形時不変システムと畳み込み
|
||||||
|
|
||||||
なぜインパルス応答がシステムを完全に決定できるのか。
|
インパルス応答がシステムを決定すると言った。なぜだろう。
|
||||||
|
|
||||||
任意の入力信号は、大きさの異なるインパルスを時間軸上に並べたものとして表せる。
|
任意の入力信号は、大きさの異なるインパルスを時間軸上に並べたものとして表せる。
|
||||||
線形時不変システムはそれぞれのインパルスに独立に反応し、その応答を全て重ね合わせる。
|
線形時不変システムはそれぞれのインパルスに独立に反応し、その応答を全て重ね合わせる。
|
||||||
この重ね合わせ全体の操作を、畳み込みと呼ぶ。
|
この重ね合わせ全体の操作を、畳み込みと呼ぶ。
|
||||||
|
|
||||||
連続時間においては、畳み込みは積分として定義される。
|
連続時間では、畳み込みは積分になる。
|
||||||
時間軸に沿って入力を少しずつずらしながら、そのずれに対応するインパルス応答を強さに応じて足し合わせる。その積分の結果が出力である。
|
時間軸に沿って入力を少しずつずらしながら、そのずれに対応するインパルス応答を強さに応じて足し合わせる。その積分の結果が出力である。
|
||||||
|
|
||||||
$y = x * h$ (y イコール x 畳み込み h)
|
$y = x * h$ (y イコール x 畳み込み h)
|
||||||
|
|
||||||
ここで興味深い性質がある。畳み込みはその二つの引数に対して対称である。
|
畳み込みはその二つの引数に対して対称である。
|
||||||
$x * h = h * x$ (x 畳み込み h イコール h 畳み込み x)
|
$x * h = h * x$ (x 畳み込み h イコール h 畳み込み x)
|
||||||
これは単なる計算上の便宜ではない。x と h が同じ種類の対象であること、つまりシステムが信号空間に吸収されることの、自然な帰結である。
|
これは計算上の偶然ではない。x と h が同じ種類の対象だからそうなる。前の節で言った、インパルス応答で、システムが信号空間に変換される話の続きである。
|
||||||
|
|
||||||
この対称性から、実用上重要な結論が出てくる。
|
この対称性には実用上の意味がある。
|
||||||
二つの線形時不変システムを直列につないだとき、合成されたシステムのインパルス応答は、各インパルス応答の畳み込みである。
|
二つの線形時不変システムを直列につないだとき、合成されたシステムのインパルス応答は、各インパルス応答の畳み込みである。
|
||||||
$h_1 * h_2 = h_2 * h_1$ (h1 畳み込み h2 イコール h2 畳み込み h1)
|
$h_1 * h_2 = h_2 * h_1$ (h1 畳み込み h2 イコール h2 畳み込み h1)
|
||||||
どちらを先につないでも、結果は変わらない。
|
どちらを先につないでも、結果は変わらない。
|
||||||
@@ -266,6 +268,7 @@ $h_2$(システム2)の後に$h_1$(システム1)を適用した結果
|
|||||||
|
|
||||||
そして最後で述べた通り、現実のシステムはその前提をしばしば破る。
|
そして最後で述べた通り、現実のシステムはその前提をしばしば破る。
|
||||||
|
|
||||||
では、なぜこの枠組みを学ぶのか。
|
では、なぜこの枠組みを学ぶのか、現実のシステムはほとんど非線形なのに。
|
||||||
破れ方を理解するには、まず何が破れているのかを知る必要があるからである。
|
非線形性は白黒ではないから。線形と見なして良いシステムもあれば、線形理論が全く通用しないシステムもある。
|
||||||
|
その見極めには、何が破れているのかを知る必要がある。線形の理論はそのためにある。
|
||||||
線形時不変システムの理論は、現実そのものの記述ではない。現実を測るための基準線である。
|
線形時不変システムの理論は、現実そのものの記述ではない。現実を測るための基準線である。
|
||||||
Reference in New Issue
Block a user