matlab lmi两个未知数,Matlab复杂LMI仿真实例

2023-12-05 19:40

本文主要是介绍matlab lmi两个未知数,Matlab复杂LMI仿真实例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(1)仿真的论文题目:

A PD-Like Protocol With a Time Delay to Average Consensus Control for Multi-Agent Systems Under an Arbitrarily Fast Switching Topology

Dong Wang, Ning Zhang, Jianliang Wang, Senior Member, IEEE, and Wei Wang

(2)仿真内容:其中提出的Theorem 1,固定时滞下的一种Lyapunov方程

01d73c2a2efea7306bcea84adb8d5a01.png

64f5a56ad44ab5cd134635176a6031b4.png

(3)这个式子中的第一个 LMI 比较复杂,一般的 LMI 描述方式难以描述。

分析:矩阵P的大小是3n*3n,将R,W,Q,Y,S都是n*n的,ra 和T矩阵都是4n*3n的。

1.将P矩阵转化为3*3分块矩阵,ra和T分割为4*3的分块矩阵。 块矩阵都是n*n的:

%把P定义为9个n*n的子块矩阵

[P11,~,SP11]=lmivar(1,[10 1]);

[P22,~,SP22]=lmivar(1,[10 1]);

[P33,~,SP33]=lmivar(1,[10 1]);

[P12,~,SP12]=lmivar(2,[10 10]);

[P13,~,SP13]=lmivar(2,[10 10]);

[P23,~,SP23]=lmivar(2,[10 10]);

[P21,~,SP21]=lmivar(3,SP12');

[P31,~,SP31]=lmivar(3,SP13');

[P32,~,SP32]=lmivar(3,SP23');

%P是3n*3n的

[P,~,SP]=lmivar(3,[SP11,SP12,SP13;SP21,SP22,SP23;SP31,SP32,SP33]);

RA=cell(4,3);

T =cell(4,3);

%把RA和T分成分块矩阵

for i=1:4

for j=1:3

RA{i,j}=ra(10*i-9:10*i,10*j-9:10*j);%[1 2 4;1 1 1;2 3 4;]

T{i,j}=t(10*i-9:10*i,10*j-9:10*j);

end

end

2.将P,RA,T的分块矩阵带入第一个矩阵不等式乘开:(下面是ra*P*T'的乘开的结果)

f3da7b1424d584bc238e2bdc292dda5f.png

00718274519f3768ba31758f839bddf5.png

3.同理乘开T*P*ra'

4.之后就可以用一般的LMI方法输入第一个LMI的转化结果和其他的LMI,然后求解。

这篇关于matlab lmi两个未知数,Matlab复杂LMI仿真实例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG

C++操作符重载实例(独立函数)

C++操作符重载实例,我们把坐标值CVector的加法进行重载,计算c3=c1+c2时,也就是计算x3=x1+x2,y3=y1+y2,今天我们以独立函数的方式重载操作符+(加号),以下是C++代码: c1802.cpp源代码: D:\YcjWork\CppTour>vim c1802.cpp #include <iostream>using namespace std;/*** 以独立函数

实例:如何统计当前主机的连接状态和连接数

统计当前主机的连接状态和连接数 在 Linux 中,可使用 ss 命令来查看主机的网络连接状态。以下是统计当前主机连接状态和连接主机数量的具体操作。 1. 统计当前主机的连接状态 使用 ss 命令结合 grep、cut、sort 和 uniq 命令来统计当前主机的 TCP 连接状态。 ss -nta | grep -v '^State' | cut -d " " -f 1 | sort |

两个月冲刺软考——访问位与修改位的题型(淘汰哪一页);内聚的类型;关于码制的知识点;地址映射的相关内容

1.访问位与修改位的题型(淘汰哪一页) 访问位:为1时表示在内存期间被访问过,为0时表示未被访问;修改位:为1时表示该页面自从被装入内存后被修改过,为0时表示未修改过。 置换页面时,最先置换访问位和修改位为00的,其次是01(没被访问但被修改过)的,之后是10(被访问了但没被修改过),最后是11。 2.内聚的类型 功能内聚:完成一个单一功能,各个部分协同工作,缺一不可。 顺序内聚:

matlab读取NC文件(含group)

matlab读取NC文件(含group): NC文件数据结构: 代码: % 打开 NetCDF 文件filename = 'your_file.nc'; % 替换为你的文件名% 使用 netcdf.open 函数打开文件ncid = netcdf.open(filename, 'NC_NOWRITE');% 查看文件中的组% 假设我们想读取名为 "group1" 的组groupName

Java Websocket实例【服务端与客户端实现全双工通讯】

Java Websocket实例【服务端与客户端实现全双工通讯】 现很多网站为了实现即时通讯,所用的技术都是轮询(polling)。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发 出HTTP request,然后由服务器返回最新的数据给客服端的浏览器。这种传统的HTTP request 的模式带来很明显的缺点 – 浏 览器需要不断的向服务器发出请求,然而HTTP

利用matlab bar函数绘制较为复杂的柱状图,并在图中进行适当标注

示例代码和结果如下:小疑问:如何自动选择合适的坐标位置对柱状图的数值大小进行标注?😂 clear; close all;x = 1:3;aa=[28.6321521955954 26.2453660695847 21.69102348512086.93747104431360 6.25442246899816 3.342835958564245.51365061796319 4.87

C# double[] 和Matlab数组MWArray[]转换

C# double[] 转换成MWArray[], 直接赋值就行             MWNumericArray[] ma = new MWNumericArray[4];             double[] dT = new double[] { 0 };             double[] dT1 = new double[] { 0,2 };

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群

828华为云征文|华为云Flexus X实例docker部署rancher并构建k8s集群 华为云最近正在举办828 B2B企业节,Flexus X实例的促销力度非常大,特别适合那些对算力性能有高要求的小伙伴。如果你有自建MySQL、Redis、Nginx等服务的需求,一定不要错过这个机会。赶紧去看看吧! 什么是华为云Flexus X实例 华为云Flexus X实例云服务是新一代开箱即用、体