SSブログ

ミクシンスキーの演算子法と伝達関数(勉強ノート) [数学]

 自分の気に入った数学のネタを適当に書き出しています。

 ポーランドの数学者ヤン・ミクシンスキーによる「ミクシンスキーの演算子法」というものがあることを最近知って、とても面白いと感じたので、ここに自分なりの理解をノートします。特に、微分演算子やデルタ関数などが、ほとんど代数的な手法で正当化されることが興味深いです。また、結果がラプラス変換ととてもよく似ているので、制御工学で利用する伝達関数法との関連もちょっと調べてみました。

 実数区間 $[0,+\infty)$ の範囲で定義され、その上で連続となる複素数値関数の全体でつくる空間$\mathcal{C}$を考えます。$\mathcal{C}$上の加法演算$+$は普通の関数の和とし、乗法演算$\ast$を次のたたみ込み積分によって定めます。
\begin{equation*}
(f \ast g)(t) = \int_0^t f(t - \xi) g(\xi) d\xi
\end{equation*}
$\mathcal{C}$はこの演算について閉じており、加法については可換群をなし、乗法については交換則、結合則、および加法との分配則をみたします。しかしこれは乗法単位元を持ちません。なぜなら、もし$f$が乗法単位元と仮定すると、任意の $g \in \mathcal{C}$ に対して
\begin{equation*}
(f \ast g)(t) = \int_0^t f(t - \xi) g(\xi) d\xi = g(t)
\end{equation*}
となるはずですが、$g(0) \neq 0$ となる$g$に対してはこれは成立しないからです。よって $\langle \mathcal{C}, +, \ast \rangle$ は「乗法単位元を持たない可換環」ということになります。

 $[0,+\infty)$ で定数値$1$をとる単位ステップ関数を$\ell$とします(ステップ関数と呼ぶ理由は $(-\infty,0)$ で定数値$0$をとることをイメージしているからですが、こだわる必要はありません)。これは$\mathcal{C}$の元であり、
\begin{equation*}
(\ell \ast g)(t) = \int_0^t g(\xi) d\xi
\end{equation*}
をみたします。従って$\ell$は積分演算子とみなせます。

 ここで、$\mathcal{C}$は乗法演算$\ast$に関する零因子を持たないことがわかっています(「Titchmarshの定理」といって、証明はかなり難しいようなので、その理解は後回しにして先に進みます)。従って $\langle \mathcal{C}, +, \ast \rangle$ は「可逆化」という代数的手法によって、商体(あるいは分数体) $\langle \mathcal{M}, +, \ast \rangle$ を構成することができて、$\mathcal{M}$の元は $f \in \mathcal{C}, g \in \mathcal{C} \setminus \{0\}$ によって
\begin{equation*}
\frac{f}{g}
\end{equation*}
と表わされます。これは整数環$\mathbb{Z}$から有理数体$\mathbb{Q}$を作ったり、多項式環 $K[X]$ から有理式体 $K(X)$ を作ることと全く同じ「分数をつくる」手法です。そして $f \in \mathcal{C}$ に対して
\begin{equation*}
f \mapsto \frac{f \ast g}{g}
\end{equation*}
($g$は何であっても同じ)は$\mathcal{C}$から$\mathcal{M}$への埋め込み写像ですから、$f$と $\displaystyle \frac{f \ast g}{g}$ を同一視し、$\mathcal{C}$を$\mathcal{M}$の一部とみなすことができます。

 以下、$\mathcal{M}$の世界で成り立つ性質を順に書き出していきます。

 まず、$\mathcal{M}$は体ですから乗法単位元$\delta$をもち、それは $g \in \mathcal{C} \setminus \{0\}$ によって
\begin{equation*}
\delta = \frac{g}{g}
\end{equation*}
と表わされます。特に $f \in \mathcal{C}$ に対して
\begin{equation*}
f \ast \delta = f
\end{equation*}
ですから、$\mathcal{C}$では$\ast$がたたみ込み積分であったことを考えると、$\delta$は$f$に対してディラックのデルタ関数のように振る舞うことがわかります。

 複素数$c$に対して
\begin{equation*}
c \left( \frac{f}{g} \right) = \frac{cf}{g}
\end{equation*}
として$\mathcal{M}$の元のスカラー倍を定めることができます($cf$ は$f$を単純に$c$倍した関数)。このとき $\alpha, \beta \in \mathcal{M}$ に対して
\begin{equation*}
c \delta \ast \alpha = c \alpha, \quad c(\alpha \ast \beta) = (c \alpha) \ast \beta = \alpha \ast (c \beta)
\end{equation*}
が成り立ちます。以下紛らわしくない限り$\mathcal{M}$においては $c \delta$ を$c$と略記することとします。従って $\delta = 1$ です。

 $\mathcal{C}$の積分演算子$\ell$は、同一視によって$\mathcal{M}$の元ともみなせますから、その乗法逆元$s$が存在します。従って
\begin{equation*}
s \ast \ell = \delta
\end{equation*}
です。この$s$は微分演算子とみなせます。なぜなら $f, f' \in \mathcal{C}$ ならば、
\begin{equation*}
\int_0^t f'(\xi) d\xi = f(t) - f(0)
\end{equation*}
ですので、$\mathcal{C}$上の式に置き換えると
\begin{equation*}
\ell \ast f' = f - f(0) \ell
\end{equation*}
となり、これは$\mathcal{M}$に持ち込んでも同じですので、両辺に$s$をかけて $s \ast \ell = \delta$ を用いると、
\begin{equation} \tag{1}
f' = s \ast f - f(0)
\end{equation}
となるからです。$f$の導関数が$s$と$f$の積で表されていることがわかると思います(初期値がくっつきますが)。
 高階微分についてはこれを繰り返して、
\begin{equation*}
f^{(n)} = s^n \ast f - f(0) s^{n-1} - f'(0) s^{n-2} - \cdots - f^{(n-1)}(0)
\end{equation*}
となります。ただし $s^k$ は $s \ast s \ast \cdots \ast s$($k$個)の意味です。

 いくつかの具体的な関数は$\mathcal{M}$の世界で$s$の有理式で表すことができます。混乱を避けるため、$f \in \mathcal{C}$ が$t$を変数とする具体的な関数として $f(t)$(ただし $t \ge 0$ )と表されているとき、$\mathcal{C}$や$\mathcal{M}$上では
\begin{equation*}
f = \{ f(t) \}
\end{equation*}
と書くこととします。
 まず、指数関数 $f(t) = e^{at}$($a$は複素数)については、$\mathcal{C}$上で
\begin{equation*}
\{ e^{at} \}' = a\{ e^{at} \}
\end{equation*}
ですから、これを$\mathcal{M}$に持ち込み、 $(1)$を用いると
\begin{equation*}
s \ast \{ e^{at} \} - 1 = a\{ e^{at} \}
\end{equation*}
となります。$\mathcal{M}$は体ですから単純に式変形ができて、
\begin{equation} \tag{2}
\{ e^{at} \} = \frac{1}{s - a}
\end{equation}
となり、これが指数関数の表現です。ラプラス変換と同じ形をしていますが、これは単に関数を$\mathcal{M}$の世界に「持ち込んだ」だけですので、変換したというわけではありません。

 三角関数については複素指数関数を用いると、$(2)$より
\begin{eqnarray*}
\{ \cos{at} \} &=& \left\{ \frac{e^{iat} + e^{-iat}}{2} \right\} = \frac{1}{2} \left( \frac{1}{s - ia} + \frac{1}{s + ia} \right) \\
\\
&=& \frac{s}{s^2 + a^2}
\end{eqnarray*}
\begin{eqnarray*}
\{ \sin{at} \} &=& \left\{ \frac{e^{iat} - e^{-iat}}{2i} \right\} = \frac{1}{2i} \left( \frac{1}{s - ia} - \frac{1}{s + ia} \right) \\
\\
&=& \frac{a}{s^2 + a^2}
\end{eqnarray*}
と表現できます。
 さらに $n \in \mathbb{N} \setminus \{ 0 \}$ のとき、
\begin{equation*}
(t^n e^{at})' = a t^n e^{at} + n t^{n-1} e^{at}
\end{equation*}
が成り立ちますから、$\mathcal{M}$に持ち込むと、
\begin{equation*}
\{ t^n e^{at} \} = \frac{n}{s - a} \ast \{ t^{n-1} e^{at} \}
\end{equation*}
となることより、
\begin{equation*}
\{ t^n e^{at} \} = \frac{n!}{(s - a)^{n+1}}
\end{equation*}
と表現できます。特に $a = 0$ とすると、
\begin{equation*}
\{ t^n \} = \frac{n!}{s^{n+1}}
\end{equation*}
となります。以上の表現はみなラプラス変換と同じ形をしていることがわかると思います。

 さて、$\mathcal{M}$の世界は微分演算子$s$を持ちますから、制御工学で用いる線型システムの「伝達関数」が定義できるはずです。これをやってみましょう。
 次の微分方程式で表された線型システムを考えます。
\begin{equation} \tag{3}
y^{(n)} + a_{n-1}y^{(n-1)} + \cdots + a_1y' + a_0y = b_mu^{(m)} + \cdots + b_1u' + b_0u
\end{equation}
ただし $u(t)$ は入力関数、$y(t)$ は出力関数です。$(3)$を$\mathcal{M}$に持ち込み、初期値は全て$0$とすると、
\begin{equation} \tag{4}
( s^{n} + a_{n-1}s^{n-1} + \cdots + a_1s + a_0 ) \ast y = ( b_ms^{m} + \cdots + b_1s + b_0 ) \ast u
\end{equation}
となります。そこで形式的に$s$を変数とする複素係数多項式 $A(s), B(s)$ および有理式 $G(s)$ を
\begin{eqnarray*}
A(s) &=& s^{n} + a_{n-1}s^{n-1} + \cdots + a_1s + a_0 \\
\\
B(s) &=& b_ms^{m} + \cdots + b_1s + b_0 \\
\\
G(s) &=& \frac{B(s)}{A(s)}
\end{eqnarray*}
と定めると、$(4)$は
\begin{equation*}
y = G(s) \ast u
\end{equation*}
と変形されます。この $G(s)$ が$(3)$のシステムの「伝達関数」であるということができます。ただし$\mathcal{M}$の世界では$s$は変数ではなく微分演算子という「定数」ですので、安易に $G(s)$ を「$s$の関数」として扱うわけにはいきません。もう少し考察が必要です。

 入力を $u = \delta$ としたときの出力 $y = G(s)$ がインパルス応答、$u = \ell = 1/s$ としたときの出力 $y = G(s)/s$ がステップ応答となることは、素直に理解できると思います。一般の入力$u$に対しては、$G(s)$ を部分分数分解すると、先ほど示した指数関数と多項式関数の組み合わせによって $G(s) = \{ g(t) \}$ と置き換えることができるので、畳み込み積分によって
\[ y(t) = (g \ast u)(t) = \int_0^t g(t-\xi)u(\xi)d\xi \]
を計算すれば$y$が具体的な関数として「解ける」ことになります。例えば
\[ G(s) = \frac{1}{s+1} \ , \quad u(t) = (2t+1)e^{t^2} \]
の場合ならば、$G(s) = \{ e^{-t} \}$ なので、
\[ y(t) = \int_0^t e^{-(t-\xi)}(2\xi+1)e^{\xi^2}d\xi = e^{-t} \int_0^t (2\xi+1)e^{\xi^2+\xi}d\xi = e^{-t} \int_0^{t^2+t} e^\eta d\eta = e^{t^2}-e^{-t} \]
として解くことができます。
(蛇足ながらこの例は、$u(t)$ のラプラス変換がどんな$s$に対しても収束しないので、ラプラス変換によって解くことができない微分方程式の例になっています。)

 インパルス応答が $t \to +\infty$ で$0$に収束するとき、システムは安定であるといいます。これは $G(s)$ の全ての極の実部が負であることと同値です。

 安定なシステムに正弦波入力を与えたとき、すなわち $u(t) = e^{i \omega t}$($\omega$は正実数)としたとき、出力 $y(t)$ が定常状態($t \to +\infty$)でどうなるかを考えます。まず$(3)$の右辺は容易にわかるように $B(i \omega) e^{i \omega t}$ ですから、$\mathcal{M}$に持ち込むと$(4)$と$(2)$より、
\begin{equation*}
y = \frac{1}{A(s)} \ast \frac{B(i \omega)}{s-i \omega}
\end{equation*}
となります。安定条件より $A(s)$ は$s$の多項式として $i \omega$ を根に持たないから、
\begin{equation*}
\frac{1}{A(s)} \ast \frac{1}{s-i \omega} = \frac{P(s)}{A(s)} + \frac{Q}{s-i \omega}
\end{equation*}
と部分分数分解できます。ここで$P(s)$は次数 $n-1$ 以下の$s$の複素係数多項式、$Q$は複素定数で、両辺に $s-i \omega$ を乗じると
\begin{equation*}
\frac{1}{A(s)} = \frac{P(s) \ast (s-i \omega)}{A(s)} + Q
\end{equation*}
となりますので、形式的に $s$ に $i \omega$ を代入することによって、
\begin{equation*}
Q = \frac{1}{A(i \omega)}
\end{equation*}
が得られ、これより
\begin{eqnarray*}
y &=& B(i \omega) \left( \frac{P(s)}{A(s)} + \frac{1 / A(i \omega)}{s-i \omega} \right) \\
\\
&=& \frac{B(i \omega)P(s)}{A(s)} + \frac{G(i \omega)}{s-i \omega}
\end{eqnarray*}
が成り立ちます。ここで定常状態を考えると、右辺の第1項は安定条件より$0$に収束するから無視できて、
\begin{eqnarray*}
y &\simeq& \frac{G(i \omega)}{s-i \omega} \\
\\
&=& G(i \omega) \{ e^{i \omega t} \}
\end{eqnarray*}
とみなせます。従って定常状態では
\begin{equation*}
y(t) \simeq G(i \omega) e^{i \omega t}
\end{equation*}
となって、出力は入力の $G(i \omega)$ 倍の正弦波となります。
 従って周波数応答は伝達関数 $G(s)$ に形式的に $s = i \omega$ を代入した $G(i \omega)$(一般に複素数)になり、その絶対値 $\left| G(i \omega) \right|$ はゲイン、偏角 $\angle G(i \omega)$ は位相に相当することがわかります。

 以上によって、ミクシンスキーの演算子法によって作られた$\mathcal{M}$の世界でも、伝達関数法による制御理論が展開できるということがわかりました。

(続く)

nice!(0)  コメント(0) 
共通テーマ:学問

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。