恋秋倾心 2022-04-10 15:10 采纳率: 0%
浏览 161

为什么报错说串联的矩阵维度不一致啊??

function[gamma,Y,G]=LMI_01()
%%程序参数初始化
   C1=[0 0 1 0;0 0 0 1];
   C=[0 1 0];
   Mr=10;
   R=[1 0 0;0 1 0;0 0 1];
   Q=[1 0 0;0 1 0;0 0 1];
   A1=[-0.0004 0.00006 0 0;0.00046 2.87 0 0;3 0 0 3;0 1 0 0];4×4的矩阵
   Gpr=[0 -1 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0];11×2的矩阵
   Ar=[0 1 0 0 0 0 0 0 0 0 0;0 0 1 0 0 0 0 0 0 0 0;0 0 0 1 0 0 0 0 0 0 0;0 0 0 0 1 0 0 0 0 0 0;0 0 0 0 0 1 0 0 0 0 0;0 0 0 0 0 0 1 0 0 0 0;0 0 0 0 0 0 0 1 0 0 0;0 0 0 0 0 0 0 0 1 0 0;0 1 0 0 0 0 0 0 0 1 0;0 1 0 0 0 0 0 0 0 0 1;0 0 0 0 0 0 0 0 0 0 0];11×11的矩阵
   M=C1*A1;
   M=[3 0 0 3;0 1 0 0];4×2的矩阵
   A=[A1 0 0;M 0 Gpr;0 0 Ar];该位置报错了
   B1=[0.0002 0;0.0005 0.00065;0 0;-1.03 0];
   B=[B1 C1*B1 0];
   
%%描述矩阵不等式
  setlims([]);%初始化LMI系统
  
  G=lmivar(1,[3,1]);%n阶对称正定矩阵
  Y=lmivar(2,[3,3]);%m×n阶正定矩阵
  gamma=limvar(1,[1,1]);%γ是一个标量
  
  lmiterm([-1,1,1,G],1,1);%矩阵1行1列
  lmiterm([-1,2,1,G],A);%矩阵2行1列
  lmiterm([-1,2,1,Y],B,C);%矩阵2行1列
  lmiterm([-1,2,2,G],1,1);%矩阵2行2列
  lmiterm([-1,3,1,G],Q^0.5,1);%矩阵3行1列,Q的0.5次方
  lmiterm([-1,3,3,gamma],1,1);%矩阵3行3列
  lmiterm([-1,4,1,Y],R^0.5,C);%矩阵4行1列
  lmiterm([-1,4,4,gamma],1,1);%矩阵4行4列
  
  lmiterm([-2,1,1,G],1,1);%G是正定的
  lmiterm([-3,1,1,Y],1,1);%Y是正定的
  
  lmisys=getlmis;%获取lmi信息
%%求解LMI
  [tmin,xfeas]=feasp(lmisys);%可行解
  if(tmin<0)
      disp('Feasible');
      G=dec2mat(lmisys,xfeas,G);
      Y=dec2mat(lmisys,xfeas,Y);
  else
      G=nan;
      Y=nan;
  end
%cell
end

  • 写回答

1条回答 默认 最新

  • 流比 2023-01-18 23:30
    关注

    您的错误提示是 "串联的矩阵维度不一致",这意味着在 A、M、Gpr、Ar 矩阵连接起来时,它们的维度不匹配。解决方法是确保所有矩阵的维度都匹配才能成功连接。

    评论

报告相同问题?

问题事件

  • 创建了问题 4月10日

悬赏问题

  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决