ليه محتاجين الـ inverse Z-transform؟
تحويل Z بيحوّل الـ sequence الزمنية المنفصلة x[n] لدالة X(z) في المستوى المركّب، وده بيخلّي التحليل وتصميم الـ filters شغل جبري سهل. بس الفايدة الحقيقية بتبان لما نحتاج العكس: لو معانا transfer function H(z) أو spectrum الخرج Y(z)، نرجّع الـ sequence الزمنية y[n]. ودي مسألة الـ inverse Z-transform (التحويل العكسي لـ Z)، وبتظهر طول الوقت — لما تصمّم filter من مواصفات الـ poles والـ zeros، ولما تحل difference equations، ولما تنفّذ نظام على الـ hardware.
فيه تلات طرق عملية بتسيطر: الـ partial fraction expansion (التوسّع إلى كسور جزئية) (الأكتر منهجية)، والقسمة الطويلة / الـ power series (الأكتر مباشرة)، وعشان الصورة النظرية تكمل الـ contour integral (تكامل المنحنى المغلق) (نادرًا ما بيتحسب بالإيد بس مهم للنظرية). وكل طريقة بتنوّر وش مختلف من علاقة تحويل Z.
الطريقة الأولى — الـ partial fraction expansion
الـ partial fractions بتشتغل كل ما X(z) تبقى نسبة بين polynomialين وليها poles بسيطة. والاستراتيجية إنك تفكّك X(z)/z (أو X(z) على طول) لمجموع حدود من الدرجة الأولى تقدر تعرف التحويل العكسي بتاعها من جدول التحويلات.
الزوج الأساسي اللي لازم تحفظه: الـ exponential sequence الـ causal anu[n] بتتحوّل لـ z/(z−a) مع ROC |z| > |a|. فأول ما تكتب X(z) بصيغة الـ partial fractions، كل حد Akz/(z−pk) بيقابل على طول Akpknu[n] في الحالة الـ causal.
نفس الصيغة الجبرية لـ X(z) ممكن تقابل sequences زمنية مختلفة حسب الـ ROC. دايمًا حدّد الـ ROC جنب X(z) — التحويل العكسي مش وحيد من غيرها.
|z| > |p| ← sequence causal | |z| < |p| ← sequence non-causalأما لو pole اتكرّر بدرجة r، فالتفكيك محتاج حدود بدرجات أعلى ومحتاج الـ entries المقابلة ليها في الجدول. بس أغلب تصميمات الـ DSP filters في الواقع بتعتمد على poles بسيطة (من غير جذور متكرّرة)، فوصفة الـ partial fractions الأساسية كفاية لأغلب الحالات العملية.
الطريقة التانية — الـ power series / القسمة الطويلة
لو محتاج كام sample أوّلانيين بس — أو X(z) مبتتحلّلش بسهولة — القسمة الطويلة للبسط على المقام بتطلّع power series في z−1. ومعاملات الـ series دي هي على طول الـ samples x[0], x[1], x[2], …
القسمة الطويلة مفيدة بالذات للـ sequences الـ causal (power series في z−1) وعشان تتأكد من نتايج الـ partial fractions. وهي كمان الأساس الحسابي لتحويل الـ transfer function لـ difference equation بالـ direct form — الوصفة اللي الـ processor بيمشي عليها sample بـ sample.
الطريقة التالتة — الـ contour integral (التعريف الرسمي)
التعريف الرسمي للـ inverse Z-transform هو contour integral في المستوى المركّب. نادرًا ما بيتحسب بالإيد، بس بيثبّت النظرية وبيوضّح ليه الـ ROC بتفضل مهمة جدًا.
عمليًا، المهندسين بيحسبوا التكامل ده بالـ residues مش بالتكامل العددي. ومنظور الـ contour integral بيوضّح حاجتين: (1) الـ ROC هي اللي بتحدّد أنهي poles المنحنى بيلف حواليها، وبالتالي أنهي حدود من الـ partial fractions بتساهم في النتيجة، و(2) الحل المقفول ممكن بالظبط لأن X(z) الـ rational ليها poles معزولة بـ residues ممكن تتحسب.
مثال محلول — filter من الدرجة التانية
خلّي الـ transfer function H(z) = z2 / (z2 − 0.9z + 0.81) مع ROC |z| > 0.9. المقام ليه جذور عند z = 0.9e±j60°، يعني زوج poles conjugate عند نص قطر 0.9 وزاوية ±π/3. وعايزين نلاقي الـ impulse response h[n].
المثال ده بيوضّح النمط العام: أزواج الـ poles الـ conjugate عند نص قطر r وزاوية θ دايمًا بتطلّع responses شكلها rncos(nθ + φ)u[n] — damped sinusoids (موجات جيبية خامدة). نص القطر بيتحكّم في سرعة الخمود والزاوية بتحدّد frequency التذبذب. ودي الـ response النموذجية لكل IIR section بيعمل resonance.
تختار الطريقة المناسبة
- الـ inverse Z-transform بيرجّع الـ sequence الزمنية x[n] من تمثيلها في الـ z-domain؛ والـ ROC ضرورية — نفس الصيغة الجبرية بتقابل sequences مختلفة لـ ROCs مختلفة.
- الـ partial fractions: فكّك X(z)/z لحدود من الدرجة الأولى واقرا معكوسها من الجدول (exponentials، sinusoids، ramps).
- القسمة الطويلة: معاملات الـ power series = samples الـ time domain على طول؛ مفيدة لما مش محتاج غير عدد محدود من الـ samples.
- الـ contour integral: التعريف الرسمي، بيتلخّص في مجموع الـ residues = نتيجة الـ partial fractions.
- أزواج الـ poles الـ conjugate عند (r, ±θ) بتطلّع response على شكل damped sinusoid rncos(nθ + φ)u[n].
- |z| > |p| ← sequence causal؛ |z| < |p| ← sequence non-causal لنفس الـ pole.
- لو شاكك، استخدم القسمة الطويلة عشان تتأكد من أول القيم اللي طلعت بالـ partial fractions.