4.6 حل المعادلات الخطية المتغيرة زمنياً (Linear Time-Varying (LTV))
اعتبر معادلة فضاء الحالة المتغيرة زمنياً (LTV)
$$ \dot {\mathbf {x}} (t) = \mathbf {A} (t) \mathbf {x} (t) + \mathbf {B} (t) \mathbf {u} (t) \tag {4.53} $$
$$ \mathbf {y} (t) = \mathbf {C} (t) \mathbf {x} (t) + \mathbf {D} (t) \mathbf {u} (t) \tag {4.54} $$
نفترض أنه لكل حالة ابتدائية $ \mathbf{x}(t_0) $ وأي مدخل $ \mathbf{u}(t) $ فإن معادلة فضاء الحالة تمتلك حلًا وحيدًا. شرط كافٍ لهذا الافتراض هو أن كل مدخل من $ \mathbf{A}(t) $ دالة مستمرة في $ t $ . قبل النظر في الحالة العامة، نناقش أولًا حلول $ \dot{\mathbf{x}}(t) = \mathbf{A}(t)\mathbf{x}(t) $ وأسباب عدم إمكانية استخدام النهج المتبع في الحالة ثابتة الزمن هنا.
يمكن مد حل المعادلة ثابتة الزمن $ \dot{\mathbf{x}}(t) = \mathbf{A}\mathbf{x}(t) $ من المعادلة القياسية $ \dot{x}(t) = ax(t) $ . فحل $ \dot{x}(t) = ax(t) $ هو $ x(t) = e^{at}x(0) $ مع $ d(e^{at}) / dt = ae^{at} = e^{at}a $ . وبالمثل، يكون حل $ \dot{\mathbf{x}}(t) = \mathbf{A}\mathbf{x}(t) $ هو $ \mathbf{x}(t) = e^{\mathbf{A}t}\mathbf{x}(0) $ مع
$$ \frac {d}{d t} e ^ {\mathbf {A} t} = \mathbf {A} e ^ {\mathbf {A} t} = e ^ {\mathbf {A} t} \mathbf {A} $$
في هذا التمديد، خاصية التبادلية (commutative property) $ \mathbf{A}e^{\mathbf{A}t} = e^{\mathbf{A}t}\mathbf{A} $ أساسية. لاحظ أنه عمومًا لدينا $ \mathbf{AB} \neq \mathbf{BA} $ و $ e^{(\mathbf{A} + \mathbf{B})t} \neq e^{\mathbf{A}t}e^{\mathbf{B}t} $ .
حل المعادلة القياسية المتغيرة زمنياً $ \dot{x}(t) = a(t)x(t) $ الناتج عن $ x(0) $ هو
$$ x (t) = e ^ {\int_ {0} ^ {t} a (\tau) d \tau} x (0) $$
مع
$$ \frac {d}{d t} e ^ {\int_ {0} ^ {t} a (\tau) d \tau} = a (t) e ^ {\int_ {0} ^ {t} a (\tau) d \tau} = e ^ {\int_ {0} ^ {t} a (\tau) d \tau} a (t) $$
امتداده إلى حالة المصفوفات يصبح
$$ \mathbf {x} (t) = e ^ {\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau} \mathbf {x} (0) \tag {4.55} $$
حيث، باستخدام (3.51)،
$$ e ^ {\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau} = \mathbf {I} + \int_ {0} ^ {t} \mathbf {A} (\tau) d \tau + \frac {1}{2} \left(\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau\right) \left(\int_ {0} ^ {t} \mathbf {A} (s) d s\right) + \dots $$
إلا أن هذا الامتداد غير صحيح لأن
$$ \begin{array}{l} \frac {d}{d t} e ^ {\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau} = \mathbf {A} (t) + \frac {1}{2} \mathbf {A} (t) \left(\int_ {0} ^ {t} \mathbf {A} (s) d s\right) + \frac {1}{2} \left(\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau\right) \mathbf {A} (t) + \dots \\ \neq \mathbf {A} (t) e ^ {\int_ {0} ^ {t} \mathbf {A} (\tau) d \tau} \tag {4.56} \\ \end{array} $$
لذلك، عمومًا، ليست (4.55) حلًا لـ $ \dot{\mathbf{x}} = \mathbf{A}(t)\mathbf{x} $ . وخلاصة القول إننا لا نستطيع تمديد حل المعادلات القياسية المتغيرة زمنياً إلى حالة المصفوفات، ويجب أن نستخدم نهجًا مختلفًا لتطوير الحل.
اعتبر
$$ \dot {\mathbf {x}} (t) = \mathbf {A} (t) \mathbf {x} (t) \tag {4.57} $$
حيث $ \mathbf{A}(t) $ مصفوفة $ n \times n $ ومدخلاتها دوال مستمرة في $ t $ . عندئذ لكل حالة ابتدائية $ \mathbf{x}_i(t_0) $ يوجد حل وحيد $ \mathbf{x}_i(t) $ لـ $ i = 1, 2, \ldots, n $ . يمكننا ترتيب هذه الحلول $ n $ على أنها $ \mathbf{X}(t) = [\mathbf{x}_1(t) \mathbf{x}_2(t) \cdots \mathbf{x}_n(t)] $ ، وهي مصفوفة مربعة رتبتها $ n $ لكل $ t $ . وبما أن كل $ \mathbf{x}_i(t) $ يحقق (4.57)، فإن
$$ \dot {\mathbf {X}} (t) = \mathbf {A} (t) \mathbf {X} (t) \tag {4.58} $$
إذا كانت $ \mathbf{X}(t_0) $ غير منفردة (nonsingular) أو كانت الحالات الابتدائية $ n $ مستقلة خطيًا، فإن $ \mathbf{X}(t) $ تُسمى مصفوفة أساسية (fundamental matrix) لـ(4.57). وبما أن الحالات الابتدائية يمكن اختيارها اعتباطيًا ما دامت مستقلة خطيًا، فإن المصفوفة الأساسية ليست فريدة.
مثال 4.6.1 اعتبر المعادلة المتجانسة
$$ \dot {\mathbf {x}} (t) = \left[ \begin{array}{l l} 0 & 0 \\ t & 0 \end{array} \right] \mathbf {x} (t) \tag {4.59} $$
أو
$$ \dot {x} _ {1} (t) = 0, \quad \dot {x} _ {2} (t) = t x _ {1} (t) $$
حل $ \dot{x}_1(t) = 0 $ عندما $ t_0 = 0 $ هو $ x_{1}(t) = x_{1}(0) $ ؛ وحل $ \dot{x}_2(t) = tx_1(t) = tx_1(0) $ هو
$$ x _ {2} (t) = \int_ {0} ^ {t} \tau x _ {1} (0) d \tau + x _ {2} (0) = 0. 5 t ^ {2} x _ {1} (0) + x _ {2} (0) $$
إذًا لدينا
$$ \mathbf {x} (0) = \left[ \begin{array}{l} 1 \\ 0 \end{array} \right] \Rightarrow \mathbf {x} (t) = \left[ \begin{array}{l} 1 \\ 0. 5 t ^ {2} \end{array} \right] $$
و
$$ \mathbf {x} (0) = \left[ \begin{array}{l} 1 \\ 2 \end{array} \right] \Rightarrow \mathbf {x} (t) = \left[ \begin{array}{l} 1 \\ 0. 5 t ^ {2} + 2 \end{array} \right] $$
الحالتان الابتدائيتان مستقلتان خطيًا، ولذلك
$$ \mathbf {X} (t) = \left[ \begin{array}{c c} 1 & 1 \\ 0. 5 t ^ {2} & 0. 5 t ^ {2} + 2 \end{array} \right] \tag {4.60} $$
هي مصفوفة أساسية.
خاصية مهمة جدًا للمصفوفة الأساسية هي أن $ \mathbf{X}(t) $ غير منفردة لكل $ t $ . فمثلًا $ \mathbf{X}(t) $ في (4.60) محددها $ 0.5t^{2} + 2 - 0.5t^{2} = 2 $ ؛ لذا فهي غير منفردة لكل $ t $ . نُعلّل حدسيًا لماذا يحدث ذلك. إذا كانت $ \mathbf{X}(t) $ منفردة عند بعض $ t_{1} $ ، فهناك متجه غير صفري $ \mathbf{v} $ بحيث $ \mathbf{x}(t_{1}) := \mathbf{X}(t_{1})\mathbf{v} = \mathbf{0} $ . تذكّر أن (4.57) مفترضة لها حل وحيد لكل شرط ابتدائي. من الواضح أن $ \mathbf{x}(t) \equiv \mathbf{0} $ لكل $ t $ هو الحل الوحيد لـ(4.57) مع $ \mathbf{x}(t_{1}) = \mathbf{0} $ . وبالتالي لدينا $ \bar{x}(t) = \mathbf{X}(t)\mathbf{v} = \mathbf{0} $ لكل $ t $ ، وبخاصة عند $ t = t_{0} $ . وهذا يناقض فرض أن $ \mathbf{X}(t_{0}) $ غير منفردة. لذلك فإن $ \mathbf{X}(t) $ غير منفردة لكل $ t $ .
تعريف 4.2 لتكن $ \mathbf{X}(t) $ أي مصفوفة أساسية لـ $ \dot{\mathbf{x}} = \mathbf{A}(t)\mathbf{x} $ . عندئذ
$$ \Phi (t, t _ {0}) := \mathbf {X} (t) \mathbf {X} ^ {- 1} (t _ {0}) $$
تُسمى مصفوفة الانتقال الحيزي (state transition matrix) لـ $ \dot{\mathbf{x}} = \mathbf{A}(t)\mathbf{x} $ . كما أن مصفوفة الانتقال هي الحل الوحيد للمعادلة
$$ \frac {\partial}{\partial t} \Phi (t, t _ {0}) = \mathbf {A} (t) \Phi (t, t _ {0}) \tag {4.61} $$
مع الشرط الابتدائي $ \Phi(t_0, t_0) = \mathbf{I} $ .
وبما أن $ \mathbf{X}(t) $ غير منفردة لكل $ t $ ، فإن معكوسها معرف جيدًا. المعادلة (4.61) تتبع مباشرة من (4.58). ومن التعريف نحصل على الخصائص المهمة التالية لمصفوفة الانتقال:
$$ \boldsymbol {\Phi} (t, t) = \mathbf {I} \tag {4.62} $$
$$ \Phi^ {- 1} (t, t _ {0}) = [ \mathbf {X} (t) \mathbf {X} ^ {- 1} (t _ {0}) ] ^ {- 1} = \mathbf {X} (t _ {0}) \mathbf {X} ^ {- 1} (t) = \boldsymbol {\Phi} (t _ {0}, t) \tag {4.63} $$
$$ \Phi (t, t _ {0}) = \Phi (t, t _ {1}) \Phi (t _ {1}, t _ {0}) \tag {4.64} $$
لكل $ t, t_0 $ ، و $ t_1 $ .
مثال 4.6.2 اعتبر المعادلة المتجانسة في المثال 4.6.1. تم حساب مصفوفتها الأساسية على أنها
$$ \mathbf {X} (t) = \left[ \begin{array}{c c} 1 & 1 \\ 0. 5 t ^ {2} & 0. 5 t ^ {2} + 2 \end{array} \right] $$
ومعكوسها، باستخدام (3.20)، هو
$$ \mathbf {X} ^ {- \mathrm {i}} (t) = \left[ \begin{array}{c c} 0. 2 5 t ^ {2} + 1 & - 0. 5 \\ - 0. 2 5 t ^ {2} & 0. 5 \end{array} \right] $$
وعليه فإن مصفوفة الانتقال الحيزي تُعطى بـ
$$ \begin{array}{l} \boldsymbol {\Phi} (t, t _ {0}) = \left[ \begin{array}{c c} 1 & 1 \\ 0. 5 t ^ {2} & 0. 5 t ^ {2} + 2 \end{array} \right] \left[ \begin{array}{c c} 0. 2 5 t _ {0} ^ {2} + 1 & - 0. 5 \\ - 0. 2 5 t _ {0} ^ {2} & 0. 5 \end{array} \right] \\ = \left[ \begin{array}{c c} 1 & 0 \\ 0. 5 (t ^ {2} - t _ {0} ^ {2}) & 1 \end{array} \right] \\ \end{array} $$
ومن السهل التحقق أن هذه المصفوفة الانتقالية تحقق (4.61) ولها الخصائص الثلاث المدرجة في (4.62) إلى (4.64).
نُثبت الآن أن حل (4.53) المتولد بالحالة الابتدائية $ \mathbf{x}(t_0) = \mathbf{x}_0 $ والمدخل $ \mathbf{u}(t) $ يُعطى بـ
$$ \begin{array}{l} \mathbf {x} (t) = \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t} \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau (4.65) \\ = \boldsymbol {\Phi} (t, t _ {0}) \left[ \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t} \boldsymbol {\Phi} (t _ {0}, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau \right] (4.66) \\ \end{array} $$
حيث إن $ \Phi(t, \tau) $ هي مصفوفة الانتقال الحيزي لـ $ \dot{\mathbf{x}} = \mathbf{A}(t)\mathbf{x} $ . المعادلة (4.66) تَتبع من (4.65) باستخدام $ \Phi(t, \tau) = \Phi(t, t_0)\Phi(t_0, \tau) $ . نُظهر أن (4.65) تحقق الشرط الابتدائي ومعادلة الحالة. عند $ t = t_0 $ ، لدينا
$$ \mathbf {x} (t _ {0}) = \boldsymbol {\Phi} (t _ {0}, t _ {0}) \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t _ {0}} \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau = \mathbf {I} \mathbf {x} _ {0} + \mathbf {0} = \mathbf {x} _ {0} $$
وهكذا تحقق (4.65) الشرط الابتدائي. باستخدام (4.61) و(4.6) نحصل على
$$ \begin{array}{l} \frac {d}{d t} \mathbf {x} (t) = \frac {\partial}{\partial t} \Phi (t, t _ {0}) \mathbf {x} _ {0} + \frac {\partial}{\partial t} \int_ {t _ {0}} ^ {t} \Phi (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau \\ = \mathbf {A} (t) \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t} \left(\frac {\partial}{\partial t} \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau)\right) d \tau + \boldsymbol {\Phi} (t, t) \mathbf {B} (t) \mathbf {u} (t) \\ = \mathbf {A} (t) \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t} \mathbf {A} (t) \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau + \mathbf {B} (t) \mathbf {u} (t) \\ = \mathbf {A} (t) \left[ \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} + \int_ {t _ {0}} ^ {t} \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau \right] + \mathbf {B} (t) \mathbf {u} (t) \\ = \mathbf {A} (t) \mathbf {x} (t) + \mathbf {B} (t) \mathbf {u} (t) \\ \end{array} $$
وبالتالي فإن (4.65) هو الحل. وبالتعويض عن (4.65) في (4.54) نحصل على
$$ \mathbf {y} (t) = \mathbf {C} (t) \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} + \mathbf {C} (t) \int_ {t _ {0}} ^ {t} \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau + \mathbf {D} (t) \mathbf {u} (t) \tag {4.67} $$
إذا كان المدخل صفريًا تمامًا، فإن المعادلة (4.65) تختزل إلى
$$ \mathbf {x} (t) = \boldsymbol {\Phi} (t, t _ {0}) \mathbf {x} _ {0} $$
وهذه هي استجابة الدخل الصفري (zero-input response). وبالتالي فإن مصفوفة الانتقال الحيزي تتحكم في تطور متجه الحالة دون إجبار. إذا كانت الحالة الابتدائية صفرًا، فإن (4.67) تختزل إلى
$$ \begin{array}{l} \mathbf {y} (t) = \mathbf {C} (t) \int_ {t _ {0}} ^ {t} \Phi (t, \tau) \mathbf {B} (\tau) \mathbf {u} (\tau) d \tau + \mathbf {D} (t) \mathbf {u} (t) \\ = \int_ {t _ {0}} ^ {t} [ \mathbf {C} (t) \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) + \mathbf {D} \delta (t - \tau) ] \mathbf {u} (\tau) d \tau \tag {4.68} \\ \end{array} $$
حيث تُعرَّف $ \delta(t - t_1) $ في الشكل 2.3 مع $ \Delta \to 0 $ . هذه هي استجابة الحالة الصفرية (zero-state response). كما نوقش في (2.17)، يمكن وصف استجابة الحالة الصفرية بـ
$$ \mathbf {y} (t) = \int_ {t _ {0}} ^ {t} \mathbf {G} (t, \tau) \mathbf {u} (\tau) d \tau \tag {4.69} $$
حيث إن $ \mathbf{G}(t,\tau) $ مصفوفة الاستجابة النبضية (impulse response matrix) وهي الخرج عند الزمن $ t $ المتولد بمدخل نبضي مطبَّق عند الزمن $ \tau $ . بمقارنة (4.68) و(4.69) نحصل على
$$ \begin{array}{l} \mathbf {G} (t, \tau) = \mathbf {C} (t) \boldsymbol {\Phi} (t, \tau) \mathbf {B} (\tau) + \mathbf {D} (t) \delta (t - \tau) \\ = \mathbf {C} (t) \mathbf {X} (t) \mathbf {X} ^ {- 1} (\tau) \mathbf {B} (\tau) + \mathbf {D} (t) \delta (t - \tau) \tag {4.70} \\ \end{array} $$
وهذا يربط بين وصفي الدخل-الخرج وفضاء الحالة.
الحلول في (4.65) و(4.67) تعتمد على حل (4.57) أو (4.61). إذا كانت $ \mathbf{A}(t) $ مثلثية مثل
$$ \left[ \begin{array}{l} \dot {x} _ {1} (t) \\ \dot {x} _ {2} (t) \end{array} \right] = \left[ \begin{array}{c c} a _ {1 1} (t) & 0 \\ a _ {2 1} (t) & a _ {2 2} (t) \end{array} \right] \left[ \begin{array}{l} x _ {1} (t) \\ x _ {2} (t) \end{array} \right] $$
فيمكننا حل المعادلة القياسية $ \dot{x}_{1}(t) = a_{11}(t)x_{1}(t) $ ثم تعويضها في
$$ \dot {x} _ {2} (t) = a _ {2 2} (t) x _ {2} (t) + a _ {2 1} (t) x _ {1} (t) $$
وبما أن $ x_{1}(t) $ قد تم حلها، يمكن حل المعادلة القياسية السابقة لـ $ x_{2}(t) $ . وهذا ما فعلناه في المثال 4.6.1. إذا كانت $ \mathbf{A}(t) $ ، مثل $ \mathbf{A}(t) $ القطرية أو الثابتة، تمتلك خاصية التبادلية التالية:
$$ \mathbf {A} (t) \left(\int_ {t _ {0}} ^ {t} \mathbf {A} (\tau) d \tau\right) = \left(\int_ {t _ {0}} ^ {t} \mathbf {A} (\tau) d \tau\right) \mathbf {A} (t) $$
لكل $ t_0 $ و $ t $ ، فإن حل (4.61) يمكن إظهاره على أنه
$$ \boldsymbol {\Phi} (t, t _ {0}) = e ^ {\int_ {t _ {0}} ^ {t} \mathbf {A} (\tau) d \tau} = \sum_ {k = 0} ^ {\infty} \frac {1}{k !} \left(\int_ {t _ {0}} ^ {t} \mathbf {A} (\tau) d \tau\right) ^ {k} \tag {4.71} $$
وعندما تكون $ \mathbf{A}(t) $ ثابتة، تختزل (4.71) إلى
$$ \Phi (t, \tau) = e ^ {\mathbf {A} (t - \tau)} = \Phi (t - \tau) $$
و $ \mathbf{X}(t) = e^{\mathbf{A}t} $ . باستثناء الحالات الخاصة السابقة، فإن حساب مصفوفات الانتقال الحيزي يكون عمومًا صعبًا.