第13章

ラプラス変換

この章のねらい

  • ラプラス変換で1次の微分方程式を最後まで解けるようになる
  • ラプラス変換が「減衰因子付きのフーリエ変換」であることを理解する
  • 伝達関数 H(s) と極の位置・安定性の関係のイメージを持つ

13.1 線形微分方程式

やる夫

前の章の最後で「安定の境界線は複素平面で見える」って言ってたお。ディジタルフィルタの話の続きをするのかお?

やらない夫

その前に、いったん連続時間の世界に寄り道する。回り道に見えるが、こっちで道具を仕込んでおくと、ディジタル側の話が「同じ仕組みの離散版」として一気に見通せるようになるんだ。

題材はこれだ。抵抗 RR とコンデンサ CC を直列につないで、入力電圧 x(t)x(t) をかけ、コンデンサの両端電圧 y(t)y(t) を出力として取り出す。RC回路だな。回路の法則から、入出力はこういう関係で結ばれる。

RCdy(t)dt+y(t)=x(t)(13.1)RC \frac{dy(t)}{dt} + y(t) = x(t) \tag{13.1}
やる夫

微分方程式だお…。大学の数学で見たお。「特性方程式を立てて、一般解と特殊解を足して、初期条件を代入して」っていう、あの手順が長いやつだお。

やらない夫

そう、それだ。ここで大事なのは、式 (13.1) が嫌がらせではなく物理の必然だという点だ。コンデンサにたまる電荷は電流の積分、コイルの電圧は電流の微分。物理系は微分・積分で記述されるから、連続時間の LTI システムの正体は線形微分方程式なんだ。ディジタルフィルタの正体が差分方程式だったのと、きれいに対応しているだろ。

やる夫

対応してるのはわかったけど、解くのが面倒なのは変わらないお。もっと楽な道はないのかお。

やらない夫

ある。それがこの章の主役、ラプラス変換だ。微分方程式をただの代数方程式、つまり中学生が解く方程式に変えてしまう。

13.2 ラプラス変換による微分方程式の解法

やらない夫

まず定義から。時刻 t0t \ge 0 で定義された関数 f(t)f(t) のラプラス変換は

F(s)=L[f(t)]=0f(t)estdt(13.2)F(s) = \mathcal{L}[f(t)] = \int_0^\infty f(t)\, e^{-st}\, dt \tag{13.2}

だ。ss は複素数の変数で、tt の関数 f(t)f(t)ss の関数 F(s)F(s) に写す。

やる夫

形はフーリエ変換にそっくりだお。ejωte^{-j\omega t}este^{-st} になって、積分が 00 からになっただけだお。

やらない夫

いい観察だ。その類似は 13.3 節で本題として扱う。先に、こいつの必殺技を見せる。f(t)f(t) の微分をラプラス変換するとどうなるか。

L[df(t)dt]=sF(s)f(0)(13.3)\mathcal{L}\left[ \frac{df(t)}{dt} \right] = s F(s) - f(0) \tag{13.3}

**微分という操作が、ss を掛けるだけの操作に化ける。**これが全てだ。導出は 13.5 節でやるから、まず使って威力を見よう。

やる夫

使うって、何に使うんだお。

やらない夫

さっきの RC 回路だ。簡単のため RC=1RC = 1 とし、入力は時刻 0 でスイッチを入れる単位ステップ x(t)=u(t)x(t) = u(t)t0t \ge 0 で 1)、初期値は y(0)=0y(0) = 0 とする。解く前に、部品をひとつ作っておく。指数関数のラプラス変換だ。定義に入れて積分するだけで

L[eat]=0eatestdt=1s+a(13.4)\mathcal{L}\left[ e^{-at} \right] = \int_0^\infty e^{-at} e^{-st}\, dt = \frac{1}{s+a} \tag{13.4}

が出る。a=0a = 0 とすれば L[u(t)]=1/s\mathcal{L}[u(t)] = 1/s だ。さあ、3ステップで行くぞ。

**ステップ1: 微分方程式の両辺をラプラス変換する。**式 (13.1) は dydt+y=x\frac{dy}{dt} + y = x になっている。式 (13.3) を使うと(y(0)=0y(0)=0 なので初期値の項は消える)

sY(s)+Y(s)=X(s)=1s(13.5)s Y(s) + Y(s) = X(s) = \frac{1}{s} \tag{13.5}

ステップ2: 代数方程式として解く。Y(s)Y(s) でくくって割るだけだ。

Y(s)=1s(s+1)(13.6)Y(s) = \frac{1}{s(s+1)} \tag{13.6}

**ステップ3: 逆変換して時間の世界に戻る。**式 (13.6) を部分分数に割ると

Y(s)=1s1s+1y(t)=1et(t0)(13.7)Y(s) = \frac{1}{s} - \frac{1}{s+1} \quad\Longrightarrow\quad y(t) = 1 - e^{-t} \quad (t \ge 0) \tag{13.7}

最後の矢印は式 (13.4) の対応表を右から左に読んだだけだ。終わり。なお 1s(s+1)=1s1s+1\frac{1}{s(s+1)}=\frac1s-\frac1{s+1} という分解は部分分数展開で、いまは結果だけ使った。くわしい展開の仕方(被覆法・重解・プロパーでない場合)は付録Aにまとめてある。

やる夫

え、もう解けたのかお!? 一般解とか特殊解とか、あの儀式はどこ行ったんだお。…しかも答えの形も納得だお。スイッチを入れたらコンデンサに電気がたまっていって、じわーっと 1 に近づく。充電のカーブだお。

やらない夫

そういうことだ。手順を整理すると

  1. 微分方程式を変換する(微分が ss 倍になり、代数方程式になる)
  2. ss の世界で方程式を解く(ただの分数の計算)
  3. 逆変換で時間の世界に戻る(部分分数に割って対応表を読む。割り方の詳細は付録A

微分方程式という強敵と正面から戦わず、いったん ss の世界に持ち込んで殴る。これがラプラス変換流だ。

13.3 ラプラス変換とは何なのか

やる夫

威力はわかったお。でも正体がまだ謎だお。さっき「フーリエ変換にそっくり」って言ったけど、あれはただの空似なのかお?

やらない夫

空似じゃない、血縁だ。ss は複素数だと言ったが、実部と虚部に分けて s=σ+jωs = \sigma + j\omega と書いてみろ。定義 (13.2) はこうなる。

F(σ+jω)=0[f(t)eσt]ejωtdt(13.8)F(\sigma + j\omega) = \int_0^\infty \left[ f(t)\, e^{-\sigma t} \right] e^{-j\omega t}\, dt \tag{13.8}
やる夫

あっ。カッコの中身を「ひとつの信号」だと思えば、これ f(t)eσtf(t) e^{-\sigma t} のフーリエ変換だお!

やらない夫

そのとおり。ラプラス変換とは、フーリエ変換の ejωte^{-j\omega t} に減衰の重り eσte^{-\sigma t} を仕込んだものだ。σ\sigma を1つ固定するごとに「eσte^{-\sigma t} で押さえつけてからフーリエ変換」をやっている。

なぜそんな重りが要るのか。フーリエ変換の積分 f(t)ejωtdt\int f(t) e^{-j\omega t} dt は、f(t)f(t) がいつまでも減らない信号だと収束しない。ステップ関数 u(t)u(t) がもう駄目だし、e2te^{2t} みたいに育つ信号は論外だ。だが eσte^{-\sigma t} を掛ければ、σ\sigma を十分大きく取る限り大抵の信号はねじ伏せられて、積分が収束する。

やる夫

なるほどだお。フーリエ変換が「おとなしい信号専用」だったのを、重り付きにして暴れる信号まで扱えるようにした拡張版ってことかお。

やらない夫

そういう位置づけだ。だから変換結果も、1本の軸(ω\omega 軸)の上の関数ではなく、複素平面(ss 平面)全体の上の関数 F(s)F(s) になる。横軸 σ\sigma が減衰・成長の速さ、縦軸 ω\omega が振動の速さ。この平面が、前章の最後に予告した「システムを眺める地図」になる。

絵で言えばこういう違いだ。**フーリエ変換は s=jωs = j\omega という虚軸の1本の上だけを見ている。**だから「いつまでも減らない正弦波」を物差しにしていて、減衰も成長もする信号を映せない。**ラプラス変換は減衰の重り eσte^{-\sigma t} を仕込んだおかげで、σ\sigma を左右どちらにも振れる=ss 平面の全面を物差しに使える。**フーリエ変換の地図が「虚軸という1本の線路」なら、ラプラス変換の地図は「その線路を含む平面全体」だ。後で出てくる極が虚軸からどれだけ左右にずれているか、という情報は、まさにこの「面」を持っているからこそ書き込める。

13.4 なぜラプラス変換で微分方程式が解けるのか

やる夫

もう一個、腑に落ちてないことがあるお。なんで este^{-st} を掛けて積分すると、よりによって微分が掛け算になるんだお? そんな都合のいい偶然があるかお。

やらない夫

偶然じゃない。este^{st} という関数の特技がそのまま出ているんだ。este^{st}tt で微分してみろ。

やる夫

ddtest=sest\frac{d}{dt} e^{st} = s\, e^{st} だお。指数関数だから自分自身が出てきて、係数 ss が付くだけだお。

やらない夫

それだ。**微分しても形が変わらず、ss 倍されるだけ。**この性質を持つ関数を、微分という操作の固有関数と呼ぶ。行列の固有ベクトルと同じ言葉遣いだ。固有ベクトルは行列を掛けても向きが変わらず長さが λ\lambda 倍になるだけだろ。este^{st} は「d/dtd/dt を作用させても形が変わらず ss 倍になるだけ」の関数なんだ。

で、ラプラス変換(の逆変換)は、信号を este^{st} たちの重ね合わせとして表現し直す操作だと読める。つまり

微分しても形の崩れない部品 este^{st} で信号を展開しておけば、「信号全体を微分する」は「各部品の係数に ss を掛ける」に置き換わる。

フーリエ級数のときに「f(t)f(t)ejkω0te^{jk\omega_0 t} で展開した」のと同じ発想で、部品を este^{st} に広げただけだ。

やる夫

あー、つながったお。微分方程式ってのは yyyy' が混ざってるから解きにくいんだお。でも部品が este^{st} なら、微分は全部「ss 倍」っていうただの数の掛け算になって、方程式から微分が消える。だから代数方程式になるんだお。

やらない夫

それがこの章でいちばん持ち帰ってほしい一文だ。ついでに言えば、第8章で「LTI システムに ejωte^{j\omega t} を入れると H(ω)H(\omega) 倍されて出てくる」とやったのも同じ話だ。ejωte^{j\omega t}este^{st}σ=0\sigma = 0 の特別な場合。固有関数を入れたから、システムは形を変えずに係数を掛けて返してきたわけだ。

13.5 なぜ d/dt が s になるのか

やる夫

理屈はわかったから、約束どおり式 (13.3) をちゃんと導出してほしいお。f(0)-f(0) ってオマケが付いてる理由も気になるお。

やらない夫

道具は部分積分1回だけだ。L[f(t)]\mathcal{L}[f'(t)] を定義どおり書いて、(uv)=uv+uv(uv)' = u'v + uv' を使う。

0f(t)estdt=[f(t)est]00f(t)(s)estdt(13.9)\int_0^\infty f'(t)\, e^{-st}\, dt = \Big[ f(t)\, e^{-st} \Big]_0^\infty - \int_0^\infty f(t) \cdot (-s)\, e^{-st}\, dt \tag{13.9}

第1項の境界値を見る。tt \to \infty では、変換が収束するような ss を選んでいる限り f(t)est0f(t) e^{-st} \to 0 になる。t=0t = 0 では f(0)e0=f(0)f(0) e^{0} = f(0) だ。よって第1項は 0f(0)0 - f(0)。第2項は s-s が外に出て +s0festdt=sF(s)+s \int_0^\infty f e^{-st} dt = sF(s)。合わせて

L[f(t)]=sF(s)f(0)(13.10)\mathcal{L}[f'(t)] = s F(s) - f(0) \tag{13.10}
やる夫

ほんとに部分積分1回で出たお。しかも f(0)-f(0) は境界の t=0t=0 から出た積分の端っこの置き土産だったんだお。

やらない夫

そういうことだ。2回微分なら式 (13.10) を2回使えばいい。L[f]=s2F(s)sf(0)f(0)\mathcal{L}[f''] = s^2 F(s) - s f(0) - f'(0) となって、微分のたびに ss が1つ増え、初期値の置き土産も1つ増える。

13.6 周波数応答と伝達関数

やらない夫

ここまでの道具をシステム側の言葉に翻訳しよう。初期値をすべて 0 として、式 (13.1) の RC 回路を変換すると (RCs+1)Y(s)=X(s)(RCs + 1)Y(s) = X(s)。つまり

H(s)=Y(s)X(s)=11+sRC(13.11)H(s) = \frac{Y(s)}{X(s)} = \frac{1}{1 + sRC} \tag{13.11}

という比が、入力によらずシステムだけで決まる。これを伝達関数と呼ぶ。出力はいつでも Y(s)=H(s)X(s)Y(s) = H(s)X(s)。時間領域のたたみこみが、ss の世界では掛け算になる、あの構図の連続時間・複素 ss 版だ。

やる夫

Y=HXY = HX …第8章の周波数応答と同じ顔だお。ってことは H(s)H(s)H(ω)H(\omega) は親戚なのかお。

やらない夫

親戚どころか、ss 平面の虚軸の上に周波数応答が住んでいるs=jωs = j\omega、つまり σ=0\sigma = 0 と置けば

H(jω)=11+jωRC(13.12)H(j\omega) = \frac{1}{1 + j\omega RC} \tag{13.12}

これは回路の教科書でおなじみの1次 LPF の周波数応答そのものだ。低い ω\omega ではほぼ 1 で素通し、高い ω\omega では分母が育って利得が落ちる。前章で「RC 回路はアナログの LPF」と言える理由がこれだ。

そして ss 平面にはもうひとつ、重大な情報が描き込まれている。H(s)H(s)分母が 0 になる点、すなわちだ。式 (13.11) の極は s=1/RCs = -1/RC の1点。一般に、極 s=ps = p を持つシステムのインパルス応答には epte^{pt} という成分が現れる。

やる夫

epte^{pt} …。p=σ+jωp = \sigma + j\omega なら ept=eσtejωte^{pt} = e^{\sigma t} e^{j\omega t} だから、σ\sigma が減衰か発散かを決めて、ω\omega が振動の速さを決めるお。じゃあ極が左半平面(σ<0\sigma < 0)にあれば応答は勝手に消えていく、つまり安定ってことかお!

やらない夫

先回りされたな、そのとおりだ。極が全部左半平面にあれば安定、ひとつでも右半平面にあれば発散して不安定。境界の虚軸上なら減りも増えもしない持続振動だ。下のデモで、共役な極ペア s=σ±jωs = \sigma \pm j\omega を動かしてインパルス応答 h(t)=eσtcosωth(t) = e^{\sigma t}\cos\omega t の運命を見てみろ。

S-PLANE → IMPULSE RESPONSE INTERACTIVE
再生すると極ペア(×印)の実部 σ が左から右へ自動で動く。応答が「減衰→持続→発散」と移り変わり、極が虚軸を越えた瞬間に安定が崩れるのが見える=σの符号が安定性を握る。停止してスライダーで σ・ω を自分で置けば、ω は波の細かさだけを変えると確かめられる。
やる夫

おお、σ\sigma を右に動かしていくと、しぼんでいた波がだんだん粘るようになって、0 を越えたとたんに暴れ出したお! 緑に塗ってある左半分が「安全地帯」なんだお。ω\omega の方はいくら上げても波が細かくなるだけで、爆発はしないお。

やらない夫

それが ss 平面の読み方だ。**横方向(σ\sigma)が生死を、縦方向(ω\omega)が振動を司る。**前章の IIR フィルタで 0.9 がセーフ、1.1 がアウトだった件も、次章で z 平面に持ち込めば同じ絵で説明がつく。

13.7 初期値が 0 でない場合

やる夫

そういえばさっきから「初期値は 0 とする」を連発してるお。0 じゃなかったらどうなるんだお。

やらない夫

式 (13.10) の置き土産 f(0)-f(0) が生き残るだけだ。RC 回路(RC=1RC=1)で y(0)=y0y(0) = y_0 とすると、変換した式は sY(s)y0+Y(s)=X(s)sY(s) - y_0 + Y(s) = X(s) となり、整理すれば

Y(s)=X(s)s+1入力への応答+y0s+1初期値の放電(13.13)Y(s) = \underbrace{\frac{X(s)}{s+1}}_{\text{入力への応答}} + \underbrace{\frac{y_0}{s+1}}_{\text{初期値の放電}} \tag{13.13}

第1項は初期値 0 のときと同じ H(s)X(s)H(s)X(s)。第2項は逆変換すると y0ety_0 e^{-t}、つまり最初にたまっていた電荷が勝手に抜けていく成分だ。応答が「入力由来」と「初期状態由来」の2つにきれいに分かれて、しかもどちらも同じ極 s=1s=-1 が運命を決めている。深入りはしないが、初期値も特別扱い不要で同じ土俵に乗る、とだけ覚えておけ。

この章のまとめ
  • 連続時間 LTI システムの正体は線形微分方程式(ディジタルの差分方程式と対応)
  • ラプラス変換 F(s)=0f(t)estdtF(s) = \int_0^\infty f(t)e^{-st}dt は微分を「ss++ 初期値の置き土産」に変える: L[f]=sF(s)f(0)\mathcal{L}[f'] = sF(s) - f(0)(部分積分1回で導出できる)
  • 解法は3ステップ: 変換 → 代数方程式を解く → 部分分数に割って逆変換
  • 正体は減衰因子 eσte^{-\sigma t} 付きのフーリエ変換。重りのおかげで、フーリエ変換が収束しない信号も扱える
  • 効く理由は este^{st} が微分の固有関数だから。形が崩れない部品で展開すれば、微分は掛け算になる
  • 伝達関数 H(s)=Y(s)/X(s)H(s) = Y(s)/X(s)s=jωs = j\omega と置けば周波数応答。極が左半平面なら安定、右半平面なら不安定