%...D少年 2021-09-25 15:19 采纳率: 100%
浏览 316
已结题

lqr运行报错求解决方案

matlab运行lqr命令时会报错The simulation inputs mat be specified as a vector of doubles怎么解决,昨天换了一个matlab版本跑通了,但第二天又出现了这个错误,不知道怎么解决。

img

img

  • 写回答

1条回答 默认 最新

  • CSDN专家-Matlab_Fans 2021-09-25 15:32
    关注
    
    %% 
    cf=-110000;
    %% 
    cr=cf;
    m=1412;
    Iz=1536.7;
    a=1.015;
    b=2.910-1.015;
    k=zeros(5000,4);
    Q=eye(4);
    R=10;
    for i=1:5000
        vx=0.01*i;
        A=[0,1,0,0;
            0,(cf+cr)/(m*vx),-(cf+cr)/m,(a*cf-b*cr)/(m*vx);
            0,0,0,1;
            0,(a*cf-b*cr)/(m*vx),-(cf+cr)/Iz,(a*a*cf+b*b*cr)/(Iz*vx)];
        B=[0;
            -cf/m;
            0;
            -a*cf/Iz];
        k(i,:) = lqr(A,B,Q,R);
    end
    

    2020b版本运行正常,结果:

    
    k =
    
        0.3162    0.0004    3.4888    0.0003
        0.3162    0.0008    3.4888    0.0006
        0.3162    0.0012    3.4888    0.0009
        0.3162    0.0016    3.4888    0.0012
        0.3162    0.0020    3.4888    0.0015
        0.3162    0.0024    3.4888    0.0018
    省略 ........
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月4日
  • 已采纳回答 9月26日
  • 创建了问题 9月25日