関数解析学において、Z変換(ゼットへんかん、Z-transform)とは、ローラン展開をベースにした関数空間の間の線形作用素。関数変換。
Z変換は離散群上でのラプラス変換とも説明される。[要出典]なお、Z変換という呼び方は、定義式中の遅延要素である
に由来する。
列xnのZ変換は以下の式で定義される:
![{\displaystyle {\mathcal {Z}}[x_{n}]=X(z)=\sum _{n=-\infty }^{\infty }x_{n}z^{-n}}](//wikimedia.org/api/rest_v1/media/math/render/svg/66caa18cd29f768d7c66ffd0ec2e8f1444105d3b)
ここでnは整数でzは複素数である。なお後述の片側Z変換に対してこれを両側Z変換(two-sided Z-transform、bilateral Z-transform)と呼ばれる。
n<0 でxn=0のような場合は、総和の範囲を 0 〜 ∞ で計算できる:
![{\displaystyle {\mathcal {Z}}[x_{n}]=X(z)=\sum _{n=0}^{\infty }x_{n}z^{-n}}](//wikimedia.org/api/rest_v1/media/math/render/svg/8f40a4e2353d8246f0e115939ca377dd5d0d12ae)
これを元の定義と区別して片側Z変換(single-sided Z-transform、unilateral Z-transform)と呼ぶこともある。工学の分野などでは因果律を想定するので、こちらの式で定義することがある。
二次元信号(例えば画像)に対する二次元Z変換の定義は類似的である:
![{\displaystyle {\mathcal {Z}}[x(n_{1},n_{2})]=X(z_{1},z_{2})=\sum _{n_{1}=-\infty }^{\infty }\sum _{n_{2}=-\infty }^{\infty }x(n_{1},n_{2})z_{1}^{-n_{1}}z_{2}^{-n_{2}}}](//wikimedia.org/api/rest_v1/media/math/render/svg/a997ae9605112833edfd28a27e6c214e1bf2fa53)
収束領域
なお、Z変換の級数は一般には発散することがある。収束するzの領域(収束領域,Region of Convergence)を以下のように書ける:
![{\displaystyle {\mbox{ROC}}=\left\{z:\left\vert \sum _{n=-\infty }^{\infty }x_{n}z^{-n}\right\vert <\infty \right\}}](//wikimedia.org/api/rest_v1/media/math/render/svg/b4f3e9245f63decb6697b05d37542c716dd89f88)
厳密にはこの収束領域内においてのX(z)を、xnのZ変換と定義する。
二次元Z変換の収束領域の定義は類似する:
![{\displaystyle {\mbox{ROC}}=\left\{(z_{1},z_{2}):\left\vert \sum _{n_{1}=-\infty }^{\infty }\sum _{n_{2}=-\infty }^{\infty }x(n_{1},n_{2})z_{1}^{-n_{1}}z_{2}^{-n_{2}}\right\vert <\infty \right\}}](//wikimedia.org/api/rest_v1/media/math/render/svg/a7a86f37b34f84a5710402cfc7ec489206a11702)
Z変換の逆変換である逆Z変換(inverse Z-transform)は次のようになる:
![{\displaystyle x_{n}={\mathcal {Z}}^{-1}[X(z)]={\frac {1}{2\pi i}}\oint _{C}X(z)z^{n-1}\,dz}](//wikimedia.org/api/rest_v1/media/math/render/svg/918c92dd206c6617a8172347b70dd35b6396bd01)
ここでiは虚数単位で積分路CはX(z)の極を全て含むような閉路である。
なおこの式は留数定理を用いて留数の和として計算することができる。しかし、手計算で計算するときは以下の方法がよく使われる:
- X(z)が既に級数展開されている場合、z-kの係数をxkの値とすることで簡単に逆変換ができる。例えば、z+2-3z-1の逆変換は { ..., 0, x-1=1,x0=2,x1=-3, 0, ...} のように係数をならべるだけで得られる。
- X(z)を部分分数分解し、各々の部分分数を変換表を用いて逆変換したものの和として逆変換を得る。
いずれにせよ、定義に示した積分計算そのものを直接計算することは稀である。
離散時間のLTIシステムは以下の定数係数の線形差分方程式としてモデル化できる:
![{\displaystyle \sum _{i=0}^{N}a_{i}y(n-i)=\sum _{j=0}^{M}b_{j}x(n-j)}](//wikimedia.org/api/rest_v1/media/math/render/svg/215bf1cc478a4aa6f268b36caf9117a598f47ea0)
一般には、
と認める。
方程式の両辺をZ変換すると、
![{\displaystyle Y(z)\sum _{i=0}^{N}a_{i}z^{-i}=X(z)\sum _{j=0}^{M}b_{j}z^{-j}}](//wikimedia.org/api/rest_v1/media/math/render/svg/9c38b00d873161b7ef2398c79046bb818b311298)
を得られて、
![{\displaystyle H(z)={\frac {Y(z)}{X(z)}}={\frac {\displaystyle \sum _{j=0}^{M}b_{j}z^{-j}}{\displaystyle \sum _{i=0}^{N}a_{i}z^{-i}}}}](//wikimedia.org/api/rest_v1/media/math/render/svg/e0d78d2f164b5630b004b1e3caa7ed55f0bb6e1d)
は、伝達関数と呼ばれ、その分母多項式は特性多項式と呼ばれる。
伝達関数を分析すれば、システム特性の解明に役立つ。
ラプラス変換との関係
両側Z変換は両側ラプラス変換を離散化したものである。
関数
を周期
で離散化すると、
![{\displaystyle f(t)\sum _{n=-\infty }^{\infty }\delta (t-nT)}](//wikimedia.org/api/rest_v1/media/math/render/svg/6c0f4f709ea7cd773e92921b3d7ad294198a56a8)
である。これを両側ラプラス変換すると、
![{\displaystyle \int _{-\infty }^{\infty }e^{-st}\{f(t)\sum _{n=-\infty }^{\infty }\delta (t-nT)\}dt}](//wikimedia.org/api/rest_v1/media/math/render/svg/b2d7bbcb615689d5f0556b0c223c1046b6877b6b)
積分は線形性が成り立つので、
![{\displaystyle \sum _{n=-\infty }^{\infty }\int _{-\infty }^{\infty }e^{-st}f(t)\delta (t-nT)dt}](//wikimedia.org/api/rest_v1/media/math/render/svg/24b8e85adc67381dbf3f61bc6d0223d205ecf68a)
において
になるので、
![{\displaystyle \sum _{n=-\infty }^{\infty }e^{-s(nT)}f(nT)}](//wikimedia.org/api/rest_v1/media/math/render/svg/1ccb0137934baa12d018c22ec2b5c26b438e1ef2)
これを、
と見れば、Z変換の定義式と一致する。
離散時間フーリエ変換との関係
Z変換は離散時間フーリエ変換(DTFT)の拡張である。DTFTはZ変換でz=eiωを代入したものと一致する。
言い換えると、
の定義域を(複素平面において)単位円上に限定したZ変換がDTFTであると解釈できる。