系统稳定性判定分析(一)---- 常系数线性系统内部稳定性

2024-05-01 15:20

本文主要是介绍系统稳定性判定分析(一)---- 常系数线性系统内部稳定性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 线性系统稳定性分析
    • 线性定常系统(线性时不变/自治系统)稳定性分析
    • 线性定常系统内部稳定性示例
  • 参考文献

  从上一节 系统稳定性的介绍中可以得知,分析系统内部稳定(Lyapunov意义下稳定)时可不考虑系统的输出情况,可直接通过系统的状态方程分析系统的稳定性。系统的状态方程根据构建形式的不同,可分为线性系统与非线性系统。如下基于由简入繁的原则,首先整理线性系统的稳定性分析过程。

本文内容主要基于Antsaklis, P. J., & Michel, A. N. (1997). Linear systems (Vol. 8). New York: McGraw-Hill. 一书。

线性系统稳定性分析

   ~~~~     线性系统根据状态方程中是否显含时间变量 t t t(状态变量本身为时间 t t t的函数,因此状态方程一定与时间 t t t有关。若状态方程中显示的包含时间 t t t的表达式,则表示状态方程显含时间变量 t t t。否则,状态方程不显含时间变量 t t t),可将线性系统划分为线性自治系统(或线性时不变系统) x ˙ = f ( x ( t ) ) , (1) \dot{\pmb{x}}=f(\pmb{x}(t)),\tag{1} x˙=f(x(t)),(1)与线性非自治系统(线性时变系统) x ˙ = f ( t , x ( t ) ) , (2) \dot{\pmb{x}}=f(t,\pmb{x}(t)),\tag{2} x˙=f(t,x(t)),(2)通常为表述简单,系统 (1) 与 (2) 可直接省略括号内的时间变量 t t t,表示为 x ˙ = f ( x ) \dot{\pmb{x}}=f(\pmb{x}) x˙=f(x) x ˙ = f ( t , x ) \dot{\pmb{x}}=f(t,\pmb{x}) x˙=f(t,x)
   ~~~~     如下首先分析线性自治系统的稳定性。

线性定常系统(线性时不变/自治系统)稳定性分析

   ~~~~     考虑如下线性时不变系统 x ˙ = A x . (3) \dot{\pmb{x}}=A\pmb{x}.\tag{3} x˙=Ax.(3)定义 x e \pmb{x}_e xe 为系统(3)平衡点,则系统(3)李雅普诺夫意义下的稳定性可通过如下定理进行判定:

定理1. 系统(3)的平衡点 x e \pmb{x}_e xe稳定的,当且仅当其系数矩阵 A A A (或者系统(3)的雅可比矩阵) 的所有特征值的实部小于等于0,且每个实部为零的特征值都有一个相关的 1 阶 Jordan 块。系统(3)的平衡点 x e \pmb{x}_e xe渐近稳定的,当且仅当其系数矩阵 A A A (或者系统(3)的雅可比矩阵) 的所有特征值的实部小于0
相反地,系统(3)的平衡点 x e \pmb{x}_e xe不稳定的,当且仅当其系数矩阵 A A A (或者其雅可比矩阵) 至少存在一个实部大于0的特征值,或者其实部为零的特征值所对应的Jordan块的阶数大于1阶。

补充: 有关特征值,Jordan块的介绍可参见矩阵分析:特征值,相似度对角化,Jordan标准形。
注: 通常我们所说的一个系统的收敛是与系统平衡点的渐近稳定有关,关于两者有如下定义:

定义1. 系统(3)的平衡点 x e \pmb{x}_e xe 是渐近稳定的当且仅当其(1) 是稳定的,(2) 当 t → ∞ t\to \infty t 时,系统(3)的解趋近于平衡点 x e \pmb{x}_e xe

线性定常系统内部稳定性示例

【示例一】分析如下系统在李雅普诺夫意义下的稳定性:
[ x ˙ 1 x ˙ 2 ] = [ 0 1 − 1 0 ] [ x 1 x 2 ] . (4) \begin{bmatrix} \dot x_1\\ \dot x_2 \end{bmatrix}=\begin{bmatrix} 0&1\\ -1&0 \end{bmatrix}\begin{bmatrix} x_1\\ x_2\end{bmatrix}.\tag{4} [x˙1x˙2]=[0110][x1x2].(4)通过计算可以得知系统(4)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T,其特征值为 λ 1 , 2 = ± i \lambda_{1,2} = \pm i λ1,2=±i,其Jordan块为 [ i 0 0 − i ] \begin{bmatrix} i&0\\ 0&-i \end{bmatrix} [i00i]。根据定理1,系统(4)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T是稳定的。系统(4)在初值为(0,0)条件下的运行轨迹如下所示:
在这里插入图片描述
系统(4)在初值为(0,1)条件下的运行轨迹如下所示:
在这里插入图片描述
结合以上两图可知,系统(4)的平衡点是稳定的,整体运行轨迹在平衡点的一定范围内波动。

【示例二】分析如下系统在李雅普诺夫意义下的稳定性:
[ x ˙ 1 x ˙ 2 ] = [ 0 1 0 0 ] [ x 1 x 2 ] . (5) \begin{bmatrix} \dot x_1\\ \dot x_2 \end{bmatrix}=\begin{bmatrix} 0&1\\ 0&0 \end{bmatrix}\begin{bmatrix} x_1\\ x_2\end{bmatrix}.\tag{5} [x˙1x˙2]=[0010][x1x2].(5)通过计算可以得知系统(5)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T,其特征值为 λ 1 , 2 = 0 \lambda_{1,2} = 0 λ1,2=0,其Jordan块为 [ 0 1 0 0 ] \begin{bmatrix} 0&1\\ 0&0 \end{bmatrix} [0010],特征值0所对应的Jordan块的阶数为2。根据定理1,系统(5)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T是不稳定的。系统(5)在初值为(0,1)条件下的运行轨迹如下所示:
在这里插入图片描述
【示例三】分析如下系统在李雅普诺夫意义下的稳定性:
[ x ˙ 1 x ˙ 2 ] = [ 2.8 9.6 9.6 − 2.8 ] [ x 1 x 2 ] . (6) \begin{bmatrix} \dot x_1\\ \dot x_2 \end{bmatrix}=\begin{bmatrix} 2.8&9.6\\ 9.6&-2.8 \end{bmatrix}\begin{bmatrix} x_1\\ x_2\end{bmatrix}.\tag{6} [x˙1x˙2]=[2.89.69.62.8][x1x2].(6)通过计算可以得知系统(6)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T,其特征值为 λ 1 , 2 = ± 10 \lambda_{1,2} = \pm10 λ1,2=±10,其Jordan块为 [ 10 0 0 − 10 ] \begin{bmatrix} 10&0\\ 0&-10 \end{bmatrix} [100010],存在一个实部大于0的特征值。根据定理1,系统(6)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T是不稳定的。系统(6)在初值为(0,1)条件下的运行轨迹如下所示:在这里插入图片描述
【示例四】分析如下系统在李雅普诺夫意义下的稳定性:
[ x ˙ 1 x ˙ 2 ] = [ − 1 0 − 1 − 2 ] [ x 1 x 2 ] . (7) \begin{bmatrix} \dot x_1\\ \dot x_2 \end{bmatrix}=\begin{bmatrix} -1&0\\ -1&-2 \end{bmatrix}\begin{bmatrix} x_1\\ x_2\end{bmatrix}.\tag{7} [x˙1x˙2]=[1102][x1x2].(7)通过计算可以得知系统(7)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T,其特征值为 λ 1 = − 1 \lambda_1= -1 λ1=1 λ 2 = − 2 \lambda_2= -2 λ2=2其Jordan块为 [ − 1 0 0 − 2 ] \begin{bmatrix} -1&0\\ 0&-2 \end{bmatrix} [1002],存在一个实部大于0的特征值。根据定理1,系统(7)的平衡点 x e = [ x 1 e , x 2 e ] T = [ 0 , 0 ] T \pmb{x}_e=[x_{1e}, x_{2e}]^T=[0, 0]^T xe=[x1e,x2e]T=[0,0]T是渐近稳定的。系统(7)在初值为(0,1)条件下的运行轨迹如下所示:
在这里插入图片描述

注: 上述四个示例的代码如下,需适当修改函数中的状态方程表达式,以及主函数中的时间变量的区间范围。

function dxdt = vdp1(t,x)%dxdt = [x(2);0];
%  dxdt = [x(2);-x(1)];
% dxdt = [-x(1);-x(1)-2*x(2)]; %dxdt = [x(2);-2*sin(x(1))];dxdt = [2.8*x(1)+9.6*x(2);9.6*x(1)-2.8*x(2)];
end
%[t,y] = ode45(odefun,tspan,y0)
[t,x] = ode45(@vdp1,[0 20],[0,1]);
plot(t,x)
xlabel('Time t');
ylabel('Solution x');
legend('x_1','x_2')

参考文献

[1] Antsaklis, P. J., & Michel, A. N. (1997). Linear systems (Vol. 8). New York: McGraw-Hill.
[2] 线性系统稳定性一般定理、齐次线性系统稳定性
[3] 矩阵分析:特征值,相似度对角化,Jordan标准形

这篇关于系统稳定性判定分析(一)---- 常系数线性系统内部稳定性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/952011

相关文章

Springboot中分析SQL性能的两种方式详解

《Springboot中分析SQL性能的两种方式详解》文章介绍了SQL性能分析的两种方式:MyBatis-Plus性能分析插件和p6spy框架,MyBatis-Plus插件配置简单,适用于开发和测试环... 目录SQL性能分析的两种方式:功能介绍实现方式:实现步骤:SQL性能分析的两种方式:功能介绍记录

最长公共子序列问题的深度分析与Java实现方式

《最长公共子序列问题的深度分析与Java实现方式》本文详细介绍了最长公共子序列(LCS)问题,包括其概念、暴力解法、动态规划解法,并提供了Java代码实现,暴力解法虽然简单,但在大数据处理中效率较低,... 目录最长公共子序列问题概述问题理解与示例分析暴力解法思路与示例代码动态规划解法DP 表的构建与意义动

在不同系统间迁移Python程序的方法与教程

《在不同系统间迁移Python程序的方法与教程》本文介绍了几种将Windows上编写的Python程序迁移到Linux服务器上的方法,包括使用虚拟环境和依赖冻结、容器化技术(如Docker)、使用An... 目录使用虚拟环境和依赖冻结1. 创建虚拟环境2. 冻结依赖使用容器化技术(如 docker)1. 创

CentOS系统Maven安装教程分享

《CentOS系统Maven安装教程分享》本文介绍了如何在CentOS系统中安装Maven,并提供了一个简单的实际应用案例,安装Maven需要先安装Java和设置环境变量,Maven可以自动管理项目的... 目录准备工作下载并安装Maven常见问题及解决方法实际应用案例总结Maven是一个流行的项目管理工具

C#使用DeepSeek API实现自然语言处理,文本分类和情感分析

《C#使用DeepSeekAPI实现自然语言处理,文本分类和情感分析》在C#中使用DeepSeekAPI可以实现多种功能,例如自然语言处理、文本分类、情感分析等,本文主要为大家介绍了具体实现步骤,... 目录准备工作文本生成文本分类问答系统代码生成翻译功能文本摘要文本校对图像描述生成总结在C#中使用Deep

C#实现系统信息监控与获取功能

《C#实现系统信息监控与获取功能》在C#开发的众多应用场景中,获取系统信息以及监控用户操作有着广泛的用途,比如在系统性能优化工具中,需要实时读取CPU、GPU资源信息,本文将详细介绍如何使用C#来实现... 目录前言一、C# 监控键盘1. 原理与实现思路2. 代码实现二、读取 CPU、GPU 资源信息1.

在C#中获取端口号与系统信息的高效实践

《在C#中获取端口号与系统信息的高效实践》在现代软件开发中,尤其是系统管理、运维、监控和性能优化等场景中,了解计算机硬件和网络的状态至关重要,C#作为一种广泛应用的编程语言,提供了丰富的API来帮助开... 目录引言1. 获取端口号信息1.1 获取活动的 TCP 和 UDP 连接说明:应用场景:2. 获取硬

JAVA系统中Spring Boot应用程序的配置文件application.yml使用详解

《JAVA系统中SpringBoot应用程序的配置文件application.yml使用详解》:本文主要介绍JAVA系统中SpringBoot应用程序的配置文件application.yml的... 目录文件路径文件内容解释1. Server 配置2. Spring 配置3. Logging 配置4. Ma

2.1/5.1和7.1声道系统有什么区别? 音频声道的专业知识科普

《2.1/5.1和7.1声道系统有什么区别?音频声道的专业知识科普》当设置环绕声系统时,会遇到2.1、5.1、7.1、7.1.2、9.1等数字,当一遍又一遍地看到它们时,可能想知道它们是什... 想要把智能电视自带的音响升级成专业级的家庭影院系统吗?那么你将面临一个重要的选择——使用 2.1、5.1 还是

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用