Lyapunov稳定性分析3(离散时间系统)

article/2025/9/14 16:19:24

Lyapunov稳定性分析3(离散时间系统)

    • 一、李雅普诺夫稳定性判定
      • 1.1 *Lyapunov*两类稳定性方法分析:
      • 1.2 总结:
    • 二、举例
      • 2.1 MATLAB函数形式:
      • 2.2 MATLAB函数实例:
    • 三、离散Lyapunov方程的解

注:Lyapunov稳定性理论主要内容:李雅普诺夫第一方法和第二方法,本篇文章继续上一篇分析线性离散时间系统稳定性,非线性系统稳定性将单独写文章进行分析!敬请关注,谢谢~

一、李雅普诺夫稳定性判定

1.1 Lyapunov两类稳定性方法分析:

在这里插入图片描述
(1)Lyapunov渐近稳定的充要条件第一方法):A的特征值模均小于1
(2)Lyapunov渐近稳定的充要条件第二方法):对于任意的正定矩阵Q,存在**正定矩阵P**满足Lyapunov方程:
在这里插入图片描述
证明:
和连续时间系统一样,取Lyapunov函数为:
在这里插入图片描述
则有
在这里插入图片描述
在这里插入图片描述
与连续时间系统一样,令:
在这里插入图片描述
即为Lyapunov方程,则:
在这里插入图片描述
只要Q正定,Lyapunov函数变化率为负数,能量随着时间增加肯定逐渐减小至收敛。和连续时间系统一样,一般也是先确定Q,然后求解Lyapunov方程,最后找到正定的PQ一般取单位阵。

1.2 总结:

在这里插入图片描述

二、举例

2.1 MATLAB函数形式:

在这里插入图片描述
在这里插入图片描述
注意:
同连续时间系统Lyapunov稳定性一样,这里只求解开环系统稳定性,只分析系统矩阵A,还没有涉及到闭环系统反馈矩阵K以及闭环状态状态矩阵Acl=(A-BK)

2.2 MATLAB函数实例:

eg1. 确定二阶系统在原点处的稳定性
在这里插入图片描述
在这里插入图片描述
Lyapunov方程中,取Q =I,得
在这里插入图片描述
在这里插入图片描述

>> P=[52/27 40/27;40/27 100/27]P =1.9259    1.48151.4815    3.7037

用MATLAB函数dlyap()

>> A=[0 0.5;-0.5 1];Q=eye(2,2)Q =1     00     1>> P=dlyap(A',Q)P =1.9259   -1.4815-1.4815    3.7037

从而系统在原点的平衡状态是大范围渐近稳定的。

eg2. 求线性定常离散时间系统的稳定性条件
在这里插入图片描述
eg3. 求线性定常离散时间系统的稳定性条件
在这里插入图片描述

>> eig(A)
ans =11

A的特征值模均等于1;所以该系统不稳定,Lyapunov方程无解

>> A=[0.99 0;0 0.99];Q=eye(2,2);dlyap(A',Q)ans =50.2513         00   50.2513>> eig(A)
ans =0.99000.9900

A的特征值模均等于1;所以该系统稳定,Lyapunov方程有解

三、离散Lyapunov方程的解

形式
在这里插入图片描述
区别:与第一、二章的区别在于在Q的基础上加了KTRK

>> AA =1.1000    2.00000    0.9500>> BB =00.0790>> QQ =1     00     1>> RR =0.1000

先用离散dlqr()函数求解最优反馈增益矩阵K

[K,P,r] = dlqr(A,B,Q,R)
K =2.4950   12.5106P =4.0373    8.52268.5226   31.5400r =0.5308 + 0.2651i0.5308 - 0.2651i

① 根据lyapunov方程可知闭环系统矩阵Q2=Q+KTRK
② 再求解闭环系统矩阵Acl

>> Acl=A-B*K
Acl =1.1000    2.0000-0.1971   -0.0383>> eig(Acl)
ans =0.5308 + 0.2651i0.5308 - 0.2651i

闭环系统矩阵特征值在单位圆内,所以系统稳定
再来求解Lyapunov方程P

>> P=dlyap(Acl',Q2)
P =4.0373    8.52268.5226   31.5400

再求解反馈矩阵Kmpc

Q_ =1.0000         0         0         0         0         0         0         00    1.0000         0         0         0         0         0         00         0    1.0000         0         0         0         0         00         0         0    1.0000         0         0         0         00         0         0         0    1.0000         0         0         00         0         0         0         0    1.0000         0         00         0         0         0         0         0    4.0373    8.52260         0         0         0         0         0    8.5226   31.5400>> K_=(Fai'*Q_*Fai+R_)^(-1)*Fai'*Q_*FK_ =2.4950   12.51060.2785    4.5107-0.5822    0.3856-0.7165   -1.1786

发现第一个k跟dlqr()求出的结果相同


http://chatgpt.dhexx.cn/article/KbYM4A3O.shtml

相关文章

第三章——Lyapunov理论基础

文章目录 3.1 非线性系统和平衡点非线性系统自治与非自治系统平衡点常规运动 3.2 稳定性的概念稳定性与非稳定性渐进稳定性和指数稳定性局部和全局稳定性 3.3 线性化和局部稳定性3.4 Lyapunov直接法正定函数和Lyapunov函数平衡点理论全局稳定性的Lyapunov理论不变集理论局部不变…

react svg 实现体温单 三测单

技术栈:react svg 效果图: 开发电子病历可以用此控件

从头到脚说单测——谈有效的单元测试(下篇)

导读 在《从头到脚说单测——谈有效的单元测试(上篇)》中主要介绍了:金字塔模型、为何要做单测、单测的阶段及指标,在下篇中我们主要介绍关于mock、和如何不要滥用mock、用例编写的策略等更多精彩内容,让我们赶紧来看…

Eureka Series : Nursing Sheet

三测单 基本生命体征护理单 首页护理记录单var goTop = function() {document.body.scrollTop = document.documentElement.scrollTop = 0; }; var fixedFloat = function(data, bits = 2) {var result = 0.0;result = parseFloat(data).toFixed(bits);return re…

使用vue+zrender绘制体温单 三测单(1)

先上预览地址 http://132.232.99.217:8090/#/ 1.创建项目 使用vue init webpack temperaure 创建一个vue项目 然后安装axios zrender 命令分别是 npm install axios -S npm install zrender安装这2个组件 2.创建公共文件 在以后的使用中会出现本地调试和先上地址这是我们就…

springboot框架开发医院云HIS 住院医生站、住院护士站功能实现

住院医生站主模块:包括医嘱管理、病案首页、分配入科、住院清单、我的质控等子模块 (1)医嘱管理功能简介 ①住院患者开立医嘱、支持医嘱复制、停止、作废等操作; ②医嘱类型含药品、项目、材料、嘱托; ③支持住院各…

我的测试(三)

2014年因部门有管理上变动,我成为部门负责人/我的第一任师傅的副理,协助他进行测试技术团队的管理。前两年的时候主要还是在自动化测试方向,直到2016年的一些变动之后,才开始全面接管这个团队。在那两年里,我们开始正式…

从头到脚说单测——谈有效的单元测试(上篇)

一. 为单元测试“正名” 我曾经认为,单元测试面向的是一个函数。任何走出一个函数的测试,都不是单元测试。 其实,对“单元”的定义取决于自己。如果你正在使用函数式编程,一个单元最有可能指的是一个函数。你的单元测试将使用不…

从头到脚说单测——谈有效的单元测试

在我们谈到单元测试,大都清楚是测试函数符合预期,国外很多大公司都将单测执行的很好,国内成功的案例则相对有限。在本文中,笔者将在腾讯新闻项目中亲身经历单测从无到有的实践过程梳理为可读可参考的经验分享出来。在实践的过程我…

测试-3-测试分类

测试分类 一. 按开发阶段分1. 单元测试2. 集成测试3. 系统测试4. 验收测试 二. 按测试实施组织1. α测试2. β测试3. 第三方测试 三. 按是否运行划分1. 静态测试2. 动态测试 四. 按是否手工划分1. 手工测试2. 自动化测试 五. 按是否查看代码划分1. 黑盒测试2. 白盒测试3. 灰盒测…

vue 绘制体温单与三测单组件 实现前端js打印

更新: 代码开源 https://github.com/mydaoyuan/my-development 有帮助请帮忙点个 start 。企鹅:1534815114 新上 麻醉单 和 患者时间轴 在下面地址就可以看到。 ------------------------------------------------------------ 新的一个版本完全重…

mysql中mvcc实现机制和原理

目录 1.什么是mvcc? 2.mvcc中的快照读和当前读有什么区别和联系? 3.mvcc的作用是什么? 4.mvcc的实现机制和原理是什么? 1.什么是mvcc? mvcc全称是(Multi-Version Concurrency Control) 多版本并发控制,是数据库管理过程中的一种并发控制…

MVCC的实现原理

什么是MVCC? MVCC MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。 mvcc - 百度百科 MVCC在My…

mysql的MVCC机制详解

文章目录 1. 什么是MVCC机制?2. MVCC机制底层是怎么实现的2.1 undo日志版本链2.2 read view机制 3. undo版本链和read-view的对比规则4. 结合案例解释mvcc机制实现可重复读过程 1. 什么是MVCC机制? 首先来重新认识一下可重复读和串行化: 可…

认真学习MySQL中的MVCC机制

什么是MVCC?MVCC(Multiversion Concurrency Control),多版本并发控制。顾名思义,MVCC是通过数据行的多个版本管理来实现数据库的并发控制。这项技术使得在InnoDB的事务隔离级别下执行一致性操作有了保证。换言之&#…

MVCC的含义,如何实现的?

欢迎大家关注我的公众号【老周聊架构】,Java后端主流技术栈的原理、源码分析、架构以及各种互联网高并发、高性能、高可用的解决方案。 一、MVCC简介 1、什么是MVCC MVCC(Multi Version Concurrency Control的简称),代表多版本并发控制。与MVCC相对的&…

MySQL的MVCC机制

系列文章:关系型/非关系型【数据库】知识脉络 目录 MVCC翻译成中文是? MVCC(Multi-Version Concurrency Control) 回顾事务 MVCC是单打独斗吗? undo日志版本链 read view机制详解 MVCC机制是拿undo日志链和read-view对比 比对规则&…

什么是MVCC机制?

什么是MVCC机制? 什么是MVCC多版本并发控制机制 之前我们讲到,事务在并发环境下会带来脏读、脏写、不可重复读等诸多问题,为了解决这些问题,保证事务的ACID特性,出现了诸多隔离级别去解决这些问题,mysql默…

MySQL InnoDB的MVCC实现机制

MySQL InnoDB的MVCC实现机制 1.MVCC概述2.MVCC的实现原理隐式字段undo日志Read View(读视图)RR隔离级别的Read View方案 1.MVCC概述 什么是MVCC? MVCC,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现…

MVCC原理以及隔离机制

1、mysql是如何进行数据回滚的 mysql使用了大量的 undo日志、trx_id 字段以及 roll_pointer 字段来实现的数据回滚。版本链比对规则图: 查询 ​ 当mysql开启一个查询时 遇到的select语句会创建一个 read-view 一致性视图,这个视图里面保存 一个未提交…