状态空间方程可以针对时变系统求解,但求解过程比时不变情况复杂得多。我们的时变状态方程如下所示
我们可以说,时变状态方程的一般解定义为
矩阵维度
A: p × p
B: p × q
C: r × p
D: r × q
函数 称为 **状态转移矩阵**,因为它(就像时不变情况下的矩阵指数)控制状态方程中状态的变化。然而,与时不变情况不同,我们不能将其定义为简单的指数。事实上, 一般不能定义,因为它实际上对于每个系统都是不同的函数。但是,状态转移矩阵确实遵循一些基本属性,我们可以利用这些属性来确定状态转移矩阵。
在时变系统中,当确定状态转移矩阵时,就获得了通解。因此,我们需要做的第一件事(也是最重要的事情)就是找到那个矩阵。我们将在下面讨论该矩阵的求解方法。
注意:
状态转移矩阵
是两个变量(我们说
t 和 τ)的矩阵函数。一旦确定了矩阵的形式,我们就会将初始时间 t
0 代替变量 τ。由于该矩阵的性质以及它必须满足的属性,该矩阵通常由指数函数或正弦函数组成。状态转移矩阵的精确形式取决于系统本身,以及系统微分方程的形式。这种矩阵没有单一的“模板解”。
状态转移矩阵 并非完全未知,它必须始终满足以下关系
并且 还必须具有以下属性
1. |
|
2. |
|
3. |
|
4. |
|
如果系统是时不变的,我们可以定义 为
读者可以验证这个时不变系统的解是否满足上述所有性质。然而,在时变情况下,可能有多种不同的函数满足这些要求,而解取决于系统的结构。在对时变解进行分析之前,必须确定状态转移矩阵。下面将讨论一些确定该矩阵的方法。
作为最基本的情况,我们将考虑一个零输入系统的案例。如果系统没有输入,那么状态方程可以表示为
我们感兴趣的是该系统在时间间隔 T = (a, b) 内的响应。在这种情况下,我们要做的第一件事是找到上述方程的**基本矩阵**。基本矩阵与
这里,x 是一个 n × 1 向量,A 是一个 n × n 矩阵。
给定方程
该方程的解在时间间隔 T = (a, b) 内构成一个 n 维向量空间。上述方程的任何 n 个线性无关解集 {x1, x2, ..., xn} 被称为**基本解集**。
有线性代数背景的读者可能会认出,基本解集是解空间的**基集**。任何跨越整个解空间的基集都是一个有效的基本解集。
**基本矩阵 FM** 是通过从 n 个基本向量中创建一个矩阵来形成的。我们将用脚本大写字母 X 表示基本矩阵
基本矩阵将满足状态方程
此外,**任何解决该方程的矩阵都可以是基本矩阵**,当且仅当该矩阵的行列式在时间间隔 T 内的所有时间 t 都不为零。行列式必须不为零,因为我们将使用基本矩阵的逆矩阵来求解状态转移矩阵。
一旦我们有了系统的基本矩阵,我们就可以用它来找到系统的状态转移矩阵
基本矩阵的逆矩阵存在,因为我们在上面的定义中指定它必须具有非零行列式,因此必须是非奇异的。读者应该注意,这只是确定状态转移矩阵的一种可能方法,我们将在下面讨论其他方法。
除了求基本矩阵之外,还有其他方法可以求状态转移矩阵。
- 方法 1
- 如果 A(t) 是三角矩阵(上三角或下三角),则可以通过依次积分状态方程的各个行来确定状态转移矩阵。
- 方法 2
- 如果对于每个 τ 和 t,状态矩阵满足以下交换律
- 则状态转移矩阵可以表示为
- 如果满足以下任何条件,则状态转移矩阵将满足上述交换律
- A 是一个常数矩阵(时间不变)。
- A 是一个对角矩阵。
- 如果 ,其中 是一个常数矩阵,并且 f(t) 是一个标量值函数(而不是矩阵)。
- 如果上述条件都不满足,则必须使用方法 3。
- 方法 3
- 如果 A(t) 可以分解为以下和
- 其中 Mi 是一个常数矩阵,使得 MiMj = MjMi,并且 fi 是一个标量值函数。如果 A(t) 可以以这种方式分解,则状态转移矩阵可以表示为
读者可以作为练习来证明,如果 A(t) 是时间不变的,则上述方法 2 中的等式将简化为状态转移矩阵 。
使用上面的方法 3 计算系统的状态转移矩阵,如果系统矩阵 A 由下式给出
我们可以将该矩阵分解如下
其中 f1(t) = t,并且 f2(t) = 1。使用上面描述的公式,我们得到
求解这两个积分,我们得到
第一项是对角矩阵,该矩阵函数的解是矩阵的所有单独元素作为 e 的指数幂。
最终解表示为
如果系统输入非零,我们发现上面执行的所有分析仍然有效。我们仍然可以构建基本矩阵,并且仍然可以使用状态转移矩阵 来表示系统解。
我们可以证明,状态空间方程的一般解实际上是解