89456418961 2022-02-28 16:33 采纳率: 84.6%
浏览 716
已结题

MATLAB fsolve:串联的矩阵的维度不一致,如何解决?

a=9;
d=0.6;
xr1=1;
xg1=1;
xb1=1.2;

x0=[2,2,2,2,2,2,0.6];      % 初始参考点

fun=@(x)[

(x(1)+x(2)+x(1)+2*x(7))-a ,...

(x(2)*3^0.5+d+(x(2)*3^0.5+d)/2)-a   ,...
   
(3^0.5*(x(1)*x(2)+x(2)*x(2)/2)/a/a)/(3^0.5*(x(3)*x(4)+x(4)*x(4)/2)/a/a)-xr1/xg1 ,...
(3^0.5*(x(3)*x(4)+x(4)*x(4)/2)/a/a)/(3^0.5*(x(5)*x(6)+x(6)*x(6)/2)/a/a)-xg1/xb1 ,...
(3^0.5*(x(1)*x(2)+x(2)*x(2)/2)/a/a)/(3^0.5*(x(5)*x(6)+x(6)*x(6)/2)/a/a)-xr1/xb1 ,...
    ];
x=fsolve(fun,x0);   %调用函数

Lr1=x(1)
Lr2=x(2)
Lg1=x(3)
Lg2=x(4)
Lb1=x(5)
Lb2=x(6)
Ld =x(7)

错误使用 vertcat
串联的矩阵的维度不一致。

出错 fsolve (line 230)
fuser = feval(funfcn{3},x,varargin{:});

出错 SIX (line 41)
x=fsolve(fun,x0); %调用函数

原因:
Failure in initial objective function evaluation.
FSOLVE cannot continue.

  • 写回答

1条回答 默认 最新

  • joel_1993 2022-02-28 19:11
    关注

    你好,把函数句柄里面的逗号改成分号就行

    a=9;
    d=0.6;
    xr1=1;
    xg1=1;
    xb1=1.2;
     
    x0=[2,2,2,2,2,2,0.6];      % 初始参考点
     
    fun=@(x)[
    (x(1)+x(2)+x(1)+2*x(7))-a ;...
    (x(2)*3^0.5+d+(x(2)*3^0.5+d)/2)-a   ;...
    (3^0.5*(x(1)*x(2)+x(2)*x(2)/2)/a/a)/(3^0.5*(x(3)*x(4)+x(4)*x(4)/2)/a/a)-xr1/xg1 ;...
    (3^0.5*(x(3)*x(4)+x(4)*x(4)/2)/a/a)/(3^0.5*(x(5)*x(6)+x(6)*x(6)/2)/a/a)-xg1/xb1 ;...
    (3^0.5*(x(1)*x(2)+x(2)*x(2)/2)/a/a)/(3^0.5*(x(5)*x(6)+x(6)*x(6)/2)/a/a)-xr1/xb1 ;...
        ]; % 把函数句柄里面的逗号改成分号就行
    x=fsolve(fun,x0);   %调用函数
     
    Lr1=x(1)
    Lr2=x(2)
    Lg1=x(3)
    Lg2=x(4)
    Lb1=x(5)
    Lb2=x(6)
    Ld =x(7)
    
    

    结果

    
    Lr1 =
    
       1.722973255909702
    
    
    Lr2 =
    
       3.117691453619087
    
    
    Lg1 =
    
       2.367819755812734
    
    
    Lg2 =
    
       2.738056112727723
    
    
    Lb1 =
    
       2.522158681936574
    
    
    Lb2 =
    
       3.038179617322688
    
    
    Ld =
    
       1.218181017277643
    

    有帮助望采纳哟,谢谢啦

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月9日
  • 已采纳回答 3月1日
  • 创建了问题 2月28日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测