主要内容

使用LMI Editor GUI指定LMI

LMI编辑器lmiedit是一种图形用户界面(GUI),以直接的符号方式指定LMI系统。打字

lmiedit

调用一个带有几个可编辑文本区域和各种按钮的窗口。

更详细地说,要指定您的LMI系统,

  1. 在工作表的上半部分声明每个矩阵变量(名称和结构)。该结构的特点是它的类型(年代对于对称块对角线,R对于非结构化,和G对于其他结构)和一个额外的“结构”矩阵。这个矩阵包含关于结构的特定信息,并且对应于的第二个参数lmivar(见指定LMI变量详情)。

    请使用每个矩阵变量一行在文本编辑区域。

  2. 将lmi指定为MATLAB®工作表下半部分中的表达式。例如,LMI

    一个 T X + X 一个 X B B T X < 0

    通过键入输入

    (一个“* x + x * * b;B '*x -1] < 0

    如果x矩阵变量的名字是给定的吗X在工作表的上半部分。lmi的左右两侧应该是有效的MATLAB表达式。

完成LMI系统的指定后,点击相应的按钮即可执行以下任务:

  • 可视化的顺序lmivar/lmiterm描述此LMI系统所需的命令(查看命令按钮)。相反,LMI系统由特定的序列定义lmivar/lmiterm命令可以显示为MATLAB表达式,通过点击描述……按钮。

    初学者可以使用这个工具作为入门教程lmivarlmiterm命令。

  • 保存LMI系统的符号描述(保存按钮)。此描述可以在稍后通过单击负载按钮。

  • 读一系列的lmivar/lmiterm文件中的命令(按钮)。然后你可以点击描述矩阵变量描述lmi可视化由这些命令指定的LMI系统的符号表达式。该文件应该描述单个LMI系统,但也可以包含任何MATLAB命令序列。

    此特性对于代码验证和调试非常有用。

    在文件中写入的序列lmivar/lmiterm描述特定LMI系统所需的命令(按钮)。

    这有助于基于LMI实验室开发MATLAB函数的代码和原型。

  • 通过单击生成LMI系统的内部表示创建。结果写入以LMI系统命名的MATLAB变量中(如果“LMI系统的名称”设置为)mylmi,内部表示是用MATLAB变量编写的mylmi)。注意,在这个阶段,所有与lmi相关的数据都应该在MATLAB工作空间中定义。

    内部表示可以直接传递给LMI求解器或任何其他LMI Lab功能。

键盘快捷键

lmiterm,您可以在键盘上输入LMI表达式时使用各种快捷键。例如,零块可以简单地输入为0并且不需要量纲化。同样,单位矩阵可以输入为1没有尺寸。最后,上斜LMI块不需要完全指定。相反,你可以输入()来代替每个这样的块。

限制

虽然很普遍,lmiedit是不是灵活如lmiterm并应注意以下限制:

  • 不能在矩阵变量周围使用括号。例如,表达式

    (a*x+b)'*c + c'*(a*x+b)

    是无效的x是一个变量名。相比之下,

    (a + b) *x+x‘* (a + b)

    完全有效。

  • 循环和如果语句将被忽略。

  • 当把lmiterm命令转换为LMI系统的符号描述时,如果的第一个参数为lmiterm不能求值。提供的LMI和变量标识符newlmilmivar避免这样的困难。

lmivar和lmiterm如何管理LMI表示

熟悉MATLAB的用户可能想知道如何lmivarlmiterm物理地更新内部表示LMISYSLMISYS不是这些函数的参数。事实上,所有更新都是通过全局变量执行的,以获得最大的速度。这些全局变量由setlmis,由getlmis,并且在工作空间中不可见。即使从用户的角度来看,这个工件是透明的,也要确保:

  • 调用getlmis只有一次,并在完全指定LMI系统之后。

  • 禁止使用该命令明确的全球在LMI系统描述以。结束之前getlmis

相关的话题