最近正在学习现代控制原理,以此记一下笔记
建立状态空间表达式
建立状态空间表达式的核心是选择状态变量,状态变量的选择没有唯一性,通常选择系统中最重要的变量作为状态变量。然后,确定输入变量和输出变量,根据系统的物理定律(如牛顿运动定律、能量守恒定律等)建立状态方程和输出方程。
状态方程的核心:状态变量、输入变量、系统参数之间的关系。
输出方程的核心:输出变量、状态变量、输入变量、系统参数之间的关系。
根据微分方程建立状态空间表达式
1、系统输入不含导数项
对于一个n阶线性微分方程,如果系统输入不含导数项,可以选择系统的输出及其前n-1阶导数作为状态变量。
假设微分方程为:
\frac{d^n y(t)}{dt^n} + a_{n-1} \frac{d^{n-1} y(t)}{dt^{n-1}} + \ldots + a_1 \frac{dy(t)}{dt} + a_0 y(t) = b_0 u(t)
选择状态变量x_1(t) = y(t), x_2(t) = \frac{dy(t)}{dt}, \ldots, x_n(t) = \frac{d^{n-1} y(t)}{dt^{n-1}},则状态方程为:
\begin{cases}
\dot{x}_1(t) = x_2(t) \\
\dot{x}_2(t) = x_3(t) \\
\ldots \\
\dot{x}_{n-1}(t) = x_n(t) \\
\dot{x}_n(t) = -a_0 x_1(t) - a_1 x_2(t) - \ldots - a_{n-1} x_n(t) + b_0 u(t)
\end{cases}
输出方程为:
y(t) = x_1(t)
这种方程可以很好的转化为矩阵形式:
输入变量u(t),输出变量y(t),状态变量\mathbf{x}(t) = [x_1(t), x_2(t), \ldots, x_n(t)]^T,则状态方程和输出方程可以表示为:
\begin{bmatrix}
\dot{x}_1(t) \\
\dot{x}_2(t) \\
\vdots \\
\dot{x}_n(t)
\end{bmatrix}=
\begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
\begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}+
\begin{bmatrix}
0 \\
0 \\
\vdots \\
0 \\
b_0
\end{bmatrix}u(t)
和
y(t) = [1, 0, 0, \ldots, 0]
\begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix} + [0]u(t)
其中,矩阵A为系统矩阵,矩阵B为输入矩阵,矩阵C为输出矩阵,矩阵D为直接传递矩阵。
系统矩阵:
A =
\begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
控制输入矩阵:
B =
\begin{bmatrix}
0 \\
0 \\
\vdots \\
0 \\
b_0
\end{bmatrix}
输出矩阵:
C = [1, 0, 0, \ldots, 0]
直接传递矩阵,这里为0矩阵。
观察A的结构,可以发现它是一个相伴矩阵(companion matrix),这种矩阵在控制理论中有重要的应用,特别是在系统的可控性和可观测性分析中。这个矩阵的特征值就是系统的特征方程的根,这些根决定了系统的动态特性。对于这个矩阵的性质我们之后会统一研究。
那么,如何记忆这种形式呢?我们发现A矩阵的最后一行其实就是微分方程的系数,只不过是变号了而已,而前面的部分则是一个上移一位的结构,是一个为1的次对角线矩阵。而B矩阵则是一个列向量,只有最后一个元素是非零的,且等于输入项的系数b_0。C矩阵则是一个行向量,表示输出变量与状态变量之间的关系,由于输出变量是第一个状态变量,因此C矩阵的第一个元素为1,其余元素为0。
2、系统输入含有导数项
如果系统输入含有导数项,则需要对输入变量进行适当的变换,或者引入新的状态变量来消除输入变量的导数项。这种形式其实处理起来比较麻烦,但我们先尝试给出结果,假设微分方程为:
\frac{d^n y(t)}{dt^n} + a_{n-1} \frac{d^{n-1} y(t)}{dt^{n-1}} + \ldots + a_1 \frac{dy(t)}{dt} + a_0 y(t) = b_m \frac{d^m u(t)}{dt^m} + b_{m-1} \frac{d^{m-1} u(t)}{dt^{m-1}} + \ldots + b_1 \frac{du(t)}{dt} + b_0 u(t)
这里我们需要恰当的选取状态变量。假设m < n,我们可以选择状态变量为:
\begin{align*}
x_1(t) &= y(t) - h_0 u(t) \\
x_2(t) &= \dot{x}_1(t) - h_1 u(t) = \frac{dy(t)}{dt} - h_1 u(t) - h_0 \frac{du(t)}{dt} \\
x_3(t) &= \dot{x}_2(t) - h_2 u(t) = \frac{d^2 y(t)}{dt^2} - h_2 u(t) - h_1 \frac{du(t)}{dt} - h_0 \frac{d^2 u(t)}{dt^2} \\
\ldots \\
x_n(t) &= \dot{x}_{n-1}(t) - h_{n-1} u(t) = \frac{d^{n-1} y(t)}{dt^{n-1}} - h_{n-1} u(t) - h_{n-2} \frac{du(t)}{dt} - \ldots - h_0 \frac{d^{n-1} u(t)}{dt^{n-1}}
\end{align*}
这里我们还缺乏d^nx/dt^n,我们可以通过微分方程来补充,对第n个状态变量求导,得到:
\begin{align*}
\dot{x}_n(t) &= \frac{d^n y(t)}{dt^n} - h_{n-1} \frac{du(t)}{dt} - h_{n-2} \frac{d^2 u(t)}{dt^2} - \ldots - h_0 \frac{d^n u(t)}{dt^n} \\
&= -a_0 y(t) - a_1 \frac{dy(t)}{dt} - \ldots - a_{n-1} \frac{d^{n-1} y(t)}{dt^{n-1}} + b_m \frac{d^m u(t)}{dt^m} + b_{m-1} \frac{d^{m-1} u(t)}{dt^{m-1}} + \ldots + b_0 u(t) \\
&\quad - h_{n-1} \frac{du(t)}{dt} - h_{n-2} \frac{d^2 u(t)}{dt^2} - \ldots - h_0 \frac{d^n u(t)}{dt^n}
\end{align*}
然后再消除y及其导数项,得到:
\begin{align*}
\dot{x}_n(t) &= -a_0 (x_1(t) + h_0 u(t)) - a_1 (x_2(t) + h_1 u(t) + h_0 \frac{du(t)}{dt}) - \ldots - a_{n-1} (x_n(t) + h_{n-1} u(t) + h_{n-2} \frac{du(t)}{dt} + \ldots + h_0 \frac{d^{n-1} u(t)}{dt^{n-1}}) \\
&\quad + b_m \frac{d^m u(t)}{dt^m} + b_{m-1} \frac{d^{m-1} u(t)}{dt^{m-1}} + \ldots + b_0 u(t) - h_{n-1} \frac{du(t)}{dt} - h_{n-2} \frac{d^2 u(t)}{dt^2} - \ldots - h_0 \frac{d^n u(t)}{dt^n}
\end{align*}
对上式进行整理,可以得到:
\begin{align*}
\dot{x}_n(t) &= -a_0 x_1(t) - a_1 x_2(t) - \ldots - a_{n-1} x_n(t) \\
& + (b_m - h_0) \frac{d^m u(t)}{dt^m} + (b_{m-1} - h_1 - a_0 h_0) \frac{d^{m-1} u(t)}{dt^{m-1}} \\
& + (b_{m-2} - h_2 - a_1 h_0 - a_0 h_1) \frac{d^{m-2} u(t)}{dt^{m-2}} \\
& \ldots \\
&+ (b_1 - h_{m-1} - a_{m-2} h_0 - \ldots - a_0 h_{m-1}) \frac{du(t)}{dt} \\
& +(b_0 - a_0 h_0 - a_1 h_1 - \ldots - a_{n-1} h_{n-1})u(t) \\
\end{align*}
为了写成标准的状态空间形式,我们需要消除输入变量的导数项,因此我们需要选择h_i使得上式中输入变量的导数项系数为0,即:
\begin{align*}
h_0 &= b_m \\
h_1 &= b_{m-1} - a_{n-1} h_0 \\
h_2 &= b_{m-2} - a_{n-2} h_0 - a_{n-1} h_1 \\
&\ldots \\
h_{m-1} &= b_1 - a_{n-m+1} h_0 - a_{n-m+2} h_1 - \ldots - a_{n-1} h_{m-2}
\end{align*}
(注意,此处实际上标记有些问题,这里我就不改公式了,大家理解即可)
若记h_n为:
h_n = b_0 - a_0 h_0 - a_1 h_1 - \ldots - a_{n-1} h_{n-1}
则
\dot{x}_n(t) = -a_0 x_1(t) - a_1 x_2(t) - \ldots - a_{n-1} x_n(t) + h_n u(t)
因此,状态方程为:
\begin{cases}
\dot{x}_1(t) = x_2(t) + h_0 u(t) \\
\dot{x}_2(t) = x_3(t) + h_1 u(t) \\
\ldots \\
\dot{x}_{n-1}(t) = x_n(t) + h_{n-2} u(t) \\
\dot{x}_n(t) = -a_0 x_1(t) - a_1 x_2(t) - \ldots - a_{n-1} x_n(t) + h_{n-1} u(t)
\end{cases}
输出方程为:
y(t) = x_1(t) + h_0 u(t)
写成矩阵形式为:
\begin{bmatrix}
\dot{x}_1(t) \\
\dot{x}_2(t) \\
\vdots \\
\dot{x}_n(t)
\end{bmatrix}=
\begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
\begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}+
\begin{bmatrix}
h_0 \\
h_1 \\
\vdots \\
h_{n-1}
\end{bmatrix}u(t)
和
y(t) = [1, 0, 0, \ldots, 0] \begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}
我们发现,这种形式的A矩阵和之前的形式是一样的,而B矩阵则变成了一个列向量,包含了h_i系数,C矩阵则变成了一个行向量,表示输出变量与状态变量之间的关系,由于输出变量是第一个状态变量加上输入变量的一个线性组合,因此C矩阵的第一个元素为1,其余元素为0,但是,这里求解B矩阵的系数比较麻烦,需要通过递推关系来求解,这是一个非常难受的事情。
由此我们可以看出,系统输入含有导数项时,状态空间表达式的建立会变得复杂一些,但基本思路还是选择合适的状态变量,然后通过微分方程来建立状态方程和输出方程。
根据系统传递函数建立状态空间表达式
假设系统的传递函数为:
G(s) = \frac{Y(s)}{U(s)} = \frac{b_n s^n + b_{n-1} s^{n-1} + \ldots + b_1 s + b_0}{s^n + a_{n-1} s^{n-1} + \ldots + a_1 s + a_0}
当b_n \neq 0时,系统输入含有导数项,我们可以通过长除法将传递函数分解为两部分:
G(s) = b_n + \frac{(b_{n-1} - a_{n-1} b_n) s^{n-1} + (b_{n-2} - a_{n-2} b_n) s^{n-2} + \ldots + (b_1 - a_1 b_n) s + (b_0 - a_0 b_n)}{s^n + a_{n-1} s^{n-1} + \ldots + a_1 s + a_0}
然后,我们可以将传递函数表示为:
G(s) = b_n + \frac{N(s)}{D(s)}
其中,N(s)为分子多项式,D(s)为分母多项式。
而当b_n = 0时,系统输入不含有导数项,我们可以直接使用分子和分母多项式来建立状态空间表达式,这也就是通常的分母阶次高于分子阶次的情况。
此时
G(s) = \frac{N(s)}{D(s)}
不妨记
\beta_i = b_i - a_i b_n, \quad i = 0, 1, \ldots, n-1
则
G(s) = b_n + \frac{\beta_{n-1} s^{n-1} + \beta_{n-2} s^{n-2} + \ldots + \beta_1 s + \beta_0}{s^n + a_{n-1} s^{n-1} + \ldots + a_1 s + a_0}
当b_n = 0时,\beta_i = b_i。
我们可以对系统进行串联分解,得到两个子系统:
- 第一个子系统的传递函数为G_1(s) = \frac{1}{D(s)} = \frac{1}{s^n + a_{n-1} s^{n-1} + \ldots + a_1 s + a_0},这个子系统的输入为\ u(t),输出为z(t)。
- 第二个子系统的传递函数为G_2(s) = N(s) = \beta_{n-1} s^{n-1} + \beta_{n-2} s^{n-2} + \ldots + \beta_1 s + \beta_0 + b_n,这个子系统的输入为z(t),输出为y(t)。
转化为微分方程:
- 第一个子系统的微分方程为:
\frac{d^n z(t)}{dt^n} + a_{n-1} \frac{d^{n-1} z(t)}{dt^{n-1}} + \ldots + a_1 \frac{dz(t)}{dt} + a_0 z(t) = u(t)
- 第二个子系统的微分方程为:
y(t) = \beta_{n-1} \frac{d^{n-1} z(t)}{dt^{n-1}} + \beta_{n-2} \frac{d^{n-2} z(t)}{dt^{n-2}} + \ldots + \beta_1 \frac{dz(t)}{dt} + \beta_0 z(t) + b_n u(t)
我们可以选择状态变量为:
\begin{align*}
x_1(t) &= z(t) \\
x_2(t) &= \dot{x}_1(t) = \dot{z}(t) \\
x_3(t) &= \dot{x}_2(t) = \ddot{z}(t) \\
\ldots \\
x_n(t) &= \dot{x}_{n-1}(t) = z^{(n-1)}(t)
\end{align*}
根据传递函数的分母多项式,我们可以得到状态方程为:
\begin{cases}
\dot{x}_1(t) = x_2(t) \\
\dot{x}_2(t) = x_3(t) \\
\ldots \\
\dot{x}_{n-1}(t) = x_n(t) \\
\dot{x}_n(t) = -a_0 x_1(t) - a_1 x_2(t) - \ldots - a_{n-1} x_n(t) + u(t)
\end{cases}
输出方程为:
y(t) = \beta_{n-1} x_n(t) + \beta_{n-2} x_{n-1}(t) + \ldots + \beta_1 x_2(t) + \beta_0 x_1(t) + b_n u(t)
写成矩阵形式为:
\begin{bmatrix}
\dot{x}_1(t) \\
\dot{x}_2(t) \\
\vdots \\
\dot{x}_n(t)
\end{bmatrix}=
\begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
\begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}+
\begin{bmatrix}
0 \\
0 \\
\vdots \\
0 \\
1
\end{bmatrix}u(t)
和
y(t) = [\beta_0, \beta_1, \ldots, \beta_{n-1}] \begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix} + [b_n]u(t)
当b_n = 0时,系统的输出方程简化为:
y(t) = [\beta_0, \beta_1, \ldots, \beta_{n-1}] \begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}
实际上,这种形式有个名称,叫做能控标准型(controllable canonical form),这种形式的状态空间表达式在控制理论中有重要的应用,特别是在系统的可控性分析中。其状态矩阵A是一个特殊的矩阵,称为相伴矩阵(companion matrix),也被叫做友矩阵。但我认为这些名称不太合适,因为在数学中,伴随矩阵 (adjoint matrix) 有特定的含义,与这里的相伴矩阵不同。所以我直接使用相伴矩阵这个名称,或者直接使用英文companion matrix。
而这种形式状态空间方程的建立过程与前面介绍的微分方程建立状态空间表达式的方法是一致的,只不过这里我们是从传递函数出发,通过分解传递函数来建立状态空间表达式。这样的好处是可以直接利用传递函数的系数来构造状态空间表达式,避免了直接从微分方程出发时可能遇到的复杂性。(这可比第二种情况简单多了,这里A矩阵的最后一行直接就是分母多项式的系数变号而已,而B矩阵则是一个列向量,只有最后一个元素为1,其余元素为0,而C矩阵则是一个行向量,包含了分子多项式的系数。如果b_n = 0,那么C矩阵的分量就是分子多项式的系数)
拓展:能控标准型和能观标准型、companion matrix
引入
我们在上面建立状态空间表达式时,得到了一种叫做能控标准型(controllable canonical form)的状态空间表达式。顾名思义,这个形式的状态空间表达式具有良好的可控性特性,即系统的所有状态变量都可以通过适当的输入变量来控制。
而实际上,这种形式还有一种对偶的形式,叫做能观标准型(observable canonical form),这种形式的状态空间表达式具有良好的可观测性特性,即系统的所有状态变量都可以通过适当的输出变量来观测。
能观标准型的状态空间表达式为:
\begin{bmatrix}
\dot{x}_1(t) \\
\dot{x}_2(t) \\
\vdots \\
\dot{x}_n(t)
\end{bmatrix}=
\begin{bmatrix}
-a_{n-1} & 1 & 0 & \ldots & 0 \\
-a_{n-2} & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
-a_1 & 0 & 0 & \ldots & 1 \\
-a_0 & 0 & 0 & \ldots & 0
\end{bmatrix}
\begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix}+
\begin{bmatrix}
\beta_0 \\
\beta_1 \\
\vdots \\
\beta_{n-1}
\end{bmatrix}u(t)
和
y(t) = [1, 0, 0, \ldots, 0] \begin{bmatrix}
x_1(t) \\
x_2(t) \\
\vdots \\
x_n(t)
\end{bmatrix} + [b_n]u(t)
我们发现这两种形式的状态空间的状态矩阵A都是相伴矩阵(companion matrix),只是形式不同。实际上,这两种形式的状态矩阵A是互为转置的关系,即能控标准型的状态矩阵A是能观标准型的状态矩阵A的转置,而B矩阵和C矩阵也是互为转置的关系。
即:
A_{controllable} = A_{observable}^T
B_{controllable} = C_{observable}^T
C_{controllable} = B_{observable}^T
既然都涉及到能控和能观了,那我们不如快速验证一下这两种形式的系统是否真的能控和能观。
能控性和能观性验证
对于能控标准型,我们可以通过计算能控矩阵来验证系统的能控性。能控矩阵定义为:
\mathcal{C} = [B, AB, A^2B, \ldots, A^{n-1}B]
如果能控矩阵的秩等于系统的状态变量个数n,则系统是能控的。
对于能控标准型的状态矩阵A和输入矩阵B,我们可以计算:
AB = A \cdot B = \begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
\begin{bmatrix}
0 \\
0 \\
\vdots \\
0 \\
1
\end{bmatrix} =
\begin{bmatrix}
0 \\
0 \\
\vdots \\
1 \\
-a_{n-1}
\end{bmatrix}
继续计算:
A^2B = A \cdot AB = \begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
\begin{bmatrix}
0 \\
0 \\
\vdots \\
1 \\
-a_{n-1}
\end{bmatrix} =
\begin{bmatrix}
0 \\
1 \\
\vdots \\
-a_{n-1} \\
a_{n-1}^2 - a_{n-2}
\end{bmatrix}
继续计算直到A^{n-1}B,我们可以得到能控矩阵\mathcal{C}为:
\mathcal{C} = \begin{bmatrix}
0 & 0 & 0 & \ldots & 1 \\
0 & 0 & 1 & \ldots & -a_{n-1} \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 1 & -a_{n-1} & \ldots & \text{(higher order terms)} \\
1 & -a_{n-1} & \text{(higher order terms)} & \ldots & \text{(highest order term)}
\end{bmatrix}
我们可以看到,能控矩阵的每一列都是线性无关的,因此能控矩阵的秩等于n,系统是能控的。对于能控标准型的系统,证明同理。不过此处只是简单验证,后续会有深入的分析。
companion matrix的性质
相伴矩阵(companion matrix)是线性代数中的一个重要概念,特别是在控制理论中有广泛的应用。相伴矩阵的定义如下:
给定一个多项式:
p(s) = s^n + a_{n-1} s^{n-1} + \ldots + a_1 s + a_0
相伴矩阵A定义为:
A = \begin{bmatrix}
0 & 1 & 0 & \ldots & 0 \\
0 & 0 & 1 & \ldots & 0 \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
0 & 0 & 0 & \ldots & 1 \\
-a_0 & -a_1 & -a_2 & \ldots & -a_{n-1}
\end{bmatrix}
相伴矩阵具有一个重要的性质,即它的特征多项式就是给定的多项式p(s)。也就是说,矩阵A的特征值就是多项式p(s)的根。这也是其在控制理论中应用的重要原因,因为系统的动态特性通常由其特征值决定。
(这里吐槽一下翻译为"友矩阵"真的是不合适,因为这个矩阵和其特征多项式的关系才是其核心特性,而"友"这个词并没有体现出这种数学关系,反而容易引起误解,如和酉矩阵(unitary matrix)混淆。所以我更倾向于直接使用英文"companion matrix"或者翻译为"相伴矩阵",这样更能体现其数学意义。)
此外,相伴矩阵还有以下几个重要性质,我们这里就简单列举一下:
- 可对角化:如果多项式p(s)的根都是不同的,那么相伴矩阵A是可对角化的。
- 幂零性:相伴矩阵A的幂次方在一定条件下会趋于零,这与多项式的根有关。
- 伴随矩阵:相伴矩阵的伴随矩阵(adjoint matrix)与其特征多项式有密切关系。
- 行列式:相伴矩阵的行列式等于多项式p(s)在s=0处的值,即det(A) = (-1)^n a_0。
- 迹:相伴矩阵的迹等于多项式p(s)的系数之和,即tr(A) = -a_{n-1}。
- Jordan标准型:相伴矩阵的Jordan标准型与多项式p(s)的根的重数有关。
这个部分后续应该会有更深入的分析和讨论,本章还是专注于状态空间表达式的建立。
总结
通过本章的学习,我们掌握了如何从微分方程和传递函数出发,建立系统的状态空间表达式。我们了解了能控标准型和能观标准型的状态空间表达式,并验证了它们的能控性和能观性。我们还简要介绍了相伴矩阵(companion matrix)的定义和性质,理解了其在控制理论中的重要作用。后续应该会分析系统的可控性和可观测性,并深入探讨相伴矩阵的更多性质及其应用。