たたみ込みと LTI システム:ステップごとの解答つき練習問題

図、ヒント、詳しい解答つきの無料のたたみ込みと LTI システム練習問題。毎回新しい数値で、3 つのレベル:離散たたみ込み, 連続たたみ込み, インパルス応答とフーリエ級数。

無料の練習問題やさしい
x[n]n−10−31224334h[n]n−101112134

数列 x[n] = {−3, 2, 4, 3} と h[n] = {1, 1, 1} はどちらも n = 0 から始まります。たたみ込み y[n] = x[n] ∗ h[n] の標本 y[1] を求めなさい。

x[n] = {−3, 2, 4, 3}, n = 0…3h[n] = {1, 1, 1}, n = 0…2
次の問題 →

練習する内容

  1. やさしい離散たたみ込み
  2. ふつう連続たたみ込み
  3. むずかしいインパルス応答とフーリエ級数

たたみ込みと LTI システムの問題の解き方

  1. 2 つの信号をスケッチし、それぞれが 0 でない範囲を書き込みます。
  2. h を反転してずらします:各出力時刻について、両方の信号が重なる範囲を求めます。
  3. その重なりの範囲だけで、掛けて足し合わせる(離散)か、掛けて積分します(連続)。
  4. 結果を確認しましょう:出力は開始時刻の和から始まり、終了時刻の和で終わり、その面積または和は、入力の面積または和の積になります。

よくある間違い

  • たたみ込みをせずに、2 つの信号を標本ごとに掛けてしまうこと。
  • h を反転せずにずらすこと。それでは、たたみ込みではなく相関になります。
  • インパルス応答を問われているのにステップ応答の式を使うこと、またはその逆。
  • 高調波次数を間違えて数えること:k/T の成分は第 k 高調波です。

重要な公式

離散たたみ込み
y[n] = Σ x[k]·h[n − k]
連続たたみ込み
y(t) = ∫ x(τ)·h(t − τ) dτ
長さと和
Ly = Lx + Lh − 1, Σy = Σx·Σh
始まり、終わり、面積
t1 + t3 … t2 + t4, ∫y = ∫x·∫h
e^(−at)u(t) へのステップ入力
y(t) = (A/a)(1 − e−at)
1 次系
y′ + a·y = b·x → h(t) = b·e−atu(t)
1 次の漸化式
y[n] = a·y[n − 1] + b·x[n] → h[n] = b·aⁿ
h(t) を通る正弦波
|H(jω)|, ∠H(jω); H(jω) = b/(a + jω)
フーリエ級数の振幅
方形波 ±A:4A/(kπ)、奇数 k;三角波 ±A:8A/(π²k²)、奇数 k;パルス列:A·D と (2A/(kπ))|sin kπD|

たたみ込みと LTI システムをゼロから学ぶ

事前に学ぶこと: 積分

1たたみ込みとは何か

線形時不変(LTI)システムは、インパルス応答 h によって完全に表されます。これは、入力が 1 回の短い刺激であるときに出てくる出力です。

どんな入力も、大きさとタイミングの異なる刺激の列と見なせます。各刺激は、その大きさとタイミングに合わせて拡大縮小・シフトした h のコピーを生み、出力はそれらすべてのコピーの和です。この和がたたみ込み y = x ∗ h です。

x[n]n−102112−134h[n]n−10113234

たたみ込みは、システムが記憶をもつところならどこにでも現れます:フィルタ、センサ、構造物、回路、そして信号が時間とともに広がっていく現象などです。

セルフチェック システムが h[n] = {1, 3}(n = 0, 1)をもちます。入力は 1 つの標本 x[0] = 2 です。出力は何でしょうか。
  1. y[n] = {2, 3}
  2. y[n] = {2, 6}
  3. y[n] = {3, 1}
  4. y[n] = {8}

答え: y[n] = {2, 6}. 高さ 2 の刺激 1 つは、h を 2 倍したコピーを 1 つ生みます:{2·1, 2·3} = {2, 6}。たたみ込みは h の形を保ちます。標本どうしを足し合わせることはありません。

2離散たたみ込みを一歩ずつ

数列では、たたみ込みは和になります:

y[n] = Σk x[k]·h[n − k]
  1. h を反転します:h[−k] は、k = 0 を軸に h を鏡映したものです。
  2. 反転した h を n だけずらします。
  3. それを x と標本ごとに掛け、積を足し合わせます。それが y[n] です。
  4. すべての n について繰り返します。x が Lx 個、h が Lh 個の標本をもつとき、y は Lx + Lh − 1 個の標本をもち、2 つの開始添え字の和から始まります。

簡単な確認:y のすべての標本の和は (Σx)·(Σh) に等しくなります。

セルフチェック x[n] = {1, 2} と h[n] = {3, 1} が、どちらも n = 0 から始まるとき、y[1] はいくつでしょうか。
  1. 2
  2. 5
  3. 6
  4. 7

答え: 7. y[1] = x[0]·h[1] + x[1]·h[0] = 1·1 + 2·3 = 7 です。x[1]·h[1] だけを掛けると 2 になり、6 は 2 つの積のうち片方しか使っていません。

3例題

すべてのステップをたどりましょう。開く前に次のステップを予想してみましょう。

例題

x[n] = {2, 1, −1} と h[n] = {1, 3} を、どちらも n = 0 から始まるものとしてたたみ込みなさい。

1

数列を見る

x[n]n−102112−134h[n]n−10113234

x は 3 個、h は 2 個の標本をもつので、y は 3 + 2 − 1 = 4 個の標本をもち、n = 0 から n = 3 までです。

2

y[0]

x[0] と h[0] だけが重なります。

y[0] = 2·1 = 2
3

y[1]

y[1] = x[0]·h[1] + x[1]·h[0] = 2·3 + 1·1 = 7
4

y[2] と y[3]

y[2] = x[1]·h[1] + x[2]·h[0] = 1·3 + (−1)·1 = 2
y[3] = x[2]·h[1] = (−1)·3 = −3
5

答えを確認する

Σx = 2、Σh = 4 なので、Σy は 8 になるはずです。実際、2 + 7 + 2 − 3 = 8 です。

答え

n = 0 … 3 で y[n] = {2, 7, 2, −3}。

4連続たたみ込み

連続時間の信号では、和は積分になります:

y(t) = ∫ x(τ)·h(t − τ) dτ

方法は同じです:h を反転し、位置 t までずらし、両方の信号が 0 でない部分で積を積分します。

x(t)t12h(t)t1

0 ≤ t < 1 s で x(t) = 2、h(t) = e−tu(t) のとき、パルスがオンの間の出力は y(t) = ∫₀ᵗ 2e−(t − τ) dτ = 2(1 − e−t) です。t = 1 s で 2(1 − e−1) = 1.26 に達し、その後は 1.26·e−(t − 1) のように減衰します。

  • y は、2 つの開始時刻の和から始まり、2 つの終了時刻の和で終わります。
  • y の下の面積は、x の下の面積と h の下の面積の積です。
  • 2 つの矩形パルスからは台形ができ、等しい 2 つからは三角形ができます。
セルフチェック x(t) は 0 から 2 s まで、h(t) は 1 s から 4 s まで 0 でない値をとります。y(t) = x(t) ∗ h(t) はいつ終わるでしょうか。
  1. 3 s
  2. 4 s
  3. 5 s
  4. 6 s

答え: 6 s. y は終了時刻の和で終わります:2 + 4 = 6 s。開始は 0 + 1 = 1 s なので、持続時間は 5 s です。5 s は持続時間であり、終了時刻ではありません。

5インパルス応答とフーリエ級数

1 次系 y′ + a·y = b·x のインパルス応答は h(t) = b·e−atu(t) です。その離散版 y[n] = a·y[n − 1] + b·x[n] では、n ≥ 0 で h[n] = b·aⁿ です。

正弦波は、周波数を変えずに LTI システムを通過します。|H(jω)| 倍され、∠H(jω) だけずれます。H は h のフーリエ変換です。h(t) = b·e−atu(t) では、H(jω) = b/(a + jω) です。

周期 T の周期信号は、周波数 k/T の高調波の和です。標準的な振幅をいくつか示します:

  • −A と +A の間の方形波:奇数 k のみ、振幅は 4A/(kπ)。
  • −A と +A の間の三角波:奇数 k のみ、振幅は 8A/(π²k²)。
  • 高さ A、デューティ比 D のパルス列:平均値 A·D、高調波 (2A/(kπ))·|sin(kπD)|。
セルフチェック 方形波が −2 と +2 の間を切り替わります。第 3 高調波の振幅はいくつでしょうか。
  1. 0.283
  2. 0.424
  3. 0.849
  4. 2.546

答え: 0.849. 4A/(kπ) = 8/(3π) = 0.849 です。2.546 は基本波、0.283 は三角波のように k² で割ったもの、0.424 は 0 から A までの波形の式 2A/(kπ) を使ったものです。

6よくある間違い

  • たたみ込みをせずに、2 つの信号を標本ごとに掛けてしまうこと。
  • h を反転せずにずらすこと。それでは、たたみ込みではなく相関になります。
  • インパルス応答とステップ応答を混同すること:ステップ応答は h の累積和または積分です。
  • 高調波を間違えて数えること:k/T の成分は第 k 高調波です。
セルフチェック x[n] = {1, 2} と h[n] = {1, 1} が、どちらも n = 0 から始まるとき、y[1] はいくつでしょうか。
  1. 1
  2. 2
  3. 3
  4. 4

答え: 3. y[1] = x[0]·h[1] + x[1]·h[0] = 1 + 2 = 3 です。標本ごとの積 x[1]·h[1] だけでは 2 にしかなりません。

7試験問題の例

  • やさしい:離散たたみ込み。出力の標本 1 つ、最大の標本、すべての標本の和、y の最初または最後の添え字、FIR フィルタの出力、あるいはステップ入力に対する応答を求めます。
  • ふつう:連続たたみ込み。2 つのパルス、指数関数とステップまたはパルス、あるいは 2 つの指数関数について、ある時刻での y(t) と、y の面積、開始、終了、持続時間を求めます。
  • むずかしい:インパルス応答とフーリエ級数。1 次の微分方程式の h(t)、漸化式の h[n] やステップ応答、正弦波に対するゲインや位相、あるいは方形波・三角波・パルス波の高調波を求めます。

アプリでステップごとに学ぶアプリでステップごとに学ぶ

解答例

例題 1やさしい
x[n]n−1041−32−234h[n]n−10311234

数列 x[n] = {4, −3, −2} と h[n] = {3, 1} はどちらも n = 0 から始まります。たたみ込み y[n] = x[n] ∗ h[n] の標本 y[1] を求めなさい。

x[n] = {4, −3, −2}, n = 0…2h[n] = {3, 1}, n = 0…1

求めるもの: y[1]

ヒントを表示
  1. y[n] = Σ x[k]·h[n − k]。
  2. n = 1 の項は k = 0, 1 です。
  3. x[0]·h[1] + x[1]·h[0].
答えとステップごとの解答を表示

離散たたみ込み:線形時不変システムの出力は y[n] = Σk x[k]·h[n − k] です。h を反転し、n だけずらし、x と標本ごとに掛けて足し合わせます。x が nx から始まる Lx 個の標本、h が nh から始まる Lh 個の標本をもつとき、y は nx + nh から始まる Lx + Lh − 1 個の標本をもちます。y のすべての標本の和は (Σx)·(Σh) に等しくなります。FIR フィルタ y[n] = b₀x[n] + b₁x[n − 1] + … は、h[n] = bn とするたたみ込みです。

和の各項

x[k] と h[n − k] の両方が存在する k だけが寄与します。

x[0]·h[1] = 4·1 = 4
x[1]·h[0] = −3·3 = −9

足し合わせる

y[1] = −5

答え

y[1] = −5
例題 2ふつう
x(t)t11h(t)t1

パルス x(t) = 1(0 ≤ t < 1 s、それ以外は 0)が、h(t) = e−2tu(t) のシステムに加えられます。パルスが終わったあとの t = 2.5 s での出力 y(2.5) を求めなさい。

x(t) = 1, 0 ≤ t < 1 sh(t) = e−2tu(t)t = 2.5 s

求めるもの: y(2.5)

ヒントを表示
  1. パルスを、t = 0 でのステップから t = 1 s でのステップを引いたものとして書きます。
  2. ステップ応答は (A/a)(1 − e−at) です。
  3. パルスのあと:y(t) = y(1)·e−a(t − 1)。
答えとステップごとの解答を表示

連続たたみ込み:y(t) = ∫ x(τ)·h(t − τ) dτ。h を反転し、位置 t までずらし、重なる部分の積を積分します。因果的な信号では、積分は 0 から t までです。役に立つ結果:y の面積は x の面積と h の面積の積です。x が t₁ から t₂ まで、h が t₃ から t₄ まで続くなら、y は t₁ + t₃ から t₂ + t₄ まで続きます。h(t) = e−atu(t) と高さ A のステップ入力では、y(t) = (A/a)(1 − e−at) です。

パルス終了時の出力

y(1) = (1/2)(1 − e−2) = 0.4323

パルス後の減衰

y(2.5) = 0.4323·e−2·1.5 = 0.02152

答え

y(2.5) = 0.02152
例題 3むずかしい
δ(t)y′ + 5y = 3xh(t)

システムは y′(t) + 5·y(t) = 3·x(t) に従います。t = 0.05 s でのインパルス応答 h(0.05) を求めなさい。

y′ + 5y = 3xt = 0.05 s

求めるもの: h(0.05)

ヒントを表示
  1. 初期条件を 0 としてラプラス変換します:(s + 5)Y(s) = 3X(s)。
  2. H(s) = 3/(s + 5).
  3. h(t) = 3·e−5tu(t).
答えとステップごとの解答を表示

インパルス応答とフーリエ級数:インパルス応答 h(t) は LTI システムを完全に表します:y′ + a·y = b·x では h(t) = b·e−atu(t)、y[n] = a·y[n − 1] + b·x[n] では h[n] = b·aⁿu[n] です。正弦波 cos ωt は、ゲイン |H(jω)| と位相 ∠H(jω) をもって通過します(H は h のフーリエ変換)。周期信号は k/T の高調波の和です:±A の方形波は奇数次の高調波だけをもち、振幅は 4A/(kπ)、ピーク A の三角波は 8A/(π²k²)、高さ A でデューティ比 D のパルス列は平均値 A·D と高調波 (2A/(kπ))·|sin(kπD)| をもちます。

伝達関数

H(s) = Y(s)/X(s) = 3/(s + 5)

インパルス応答

h(t) = 3·e−5tu(t)
h(0.05) = 3·e−0.25 = 2.336

答え

h(0.05) = 2.336

質問と回答

たたみ込みと LTI システムとは?

どんな入力も、大きさとタイミングの異なる刺激の列と見なせます。各刺激は、その大きさとタイミングに合わせて拡大縮小・シフトした h のコピーを生み、出力はそれらすべてのコピーの和です。この和がたたみ込み y = x ∗ h です。

たたみ込みは、システムが記憶をもつところならどこにでも現れます:フィルタ、センサ、構造物、回路、そして信号が時間とともに広がっていく現象などです。

たたみ込みと LTI システムの問題の解き方は?(手順)
  1. 2 つの信号をスケッチし、それぞれが 0 でない範囲を書き込みます。
  2. h を反転してずらします:各出力時刻について、両方の信号が重なる範囲を求めます。
  3. その重なりの範囲だけで、掛けて足し合わせる(離散)か、掛けて積分します(連続)。
  4. 結果を確認しましょう:出力は開始時刻の和から始まり、終了時刻の和で終わり、その面積または和は、入力の面積または和の積になります。
たたみ込みと LTI システムでよくある間違いは?
  • たたみ込みをせずに、2 つの信号を標本ごとに掛けてしまうこと。
  • h を反転せずにずらすこと。それでは、たたみ込みではなく相関になります。
  • インパルス応答を問われているのにステップ応答の式を使うこと、またはその逆。
  • 高調波次数を間違えて数えること:k/T の成分は第 k 高調波です。
たたみ込みと LTI システムの練習では何を学ぶ?
  • やさしい: 離散たたみ込み
  • ふつう: 連続たたみ込み
  • むずかしい: インパルス応答とフーリエ級数

問題ごとに数値が変わるので、答えではなく解き方が身につきます。 行き詰まったら、まず小さなヒントを開き、必要なときだけ詳しい解説を見ましょう。

練習のしかた

  • 問題ごとに数値が変わるので、答えではなく解き方が身につきます。
  • 行き詰まったら、まず小さなヒントを開き、必要なときだけ詳しい解説を見ましょう。
  • 進捗、間違えた問題、保存した問題は記録されるので、試験前に復習できます。

このトピックの前後のトピック

先に学ぶ

このトピックを含む科目

電気のほかのトピック

印刷用ワークシート