今天你学习了吗. 2021-10-24 22:57 采纳率: 83.3%
浏览 29
已结题

各位,用matlab阻尼牛顿法求优化问题出现syms不能转化为logic,该怎么解决呀

img


syms x1 x2 n;
x=[x1 x2]';
f=3x1^2-4x1x2+x2^2+x1-3x2+8;
g=[6x1-4x2+1,-4x1+2x2-3]';
h=[6,-4;-4,2];
h0=inv(h);
eps=0.01;
k=0;
tol=1;
x0=[0,0]';
while tol>eps
g0=subs(g,x,x0);
m=eval(norm(g0));
if m<eps
minf=subs(f,{x1,x2},{x0(1,1),x0(2,1)});
x=x0
break
else
d0=-h0g0;
fn=subs(f,x,x0);
dfn=diff(fn);
n0=solve(dfn);
[r,s]=size(n0);
d2fn=diff(fn,2);
for i=1:s
I(i)=limit(d2fn,n,n0(i));
temp=double(I(i));
if temp>0
n=n0;
end;
end;
end;
x0=x0+n
d0;
tol=m;
k=k+1;
end

  • 写回答

2条回答 默认 最新

  • 技术专家团-Joel 2021-10-25 20:33
    关注

    帮你整理了一下,整个代码逻辑比较混乱

    syms x1 x2 n;
    x=[x1 x2]';
    f=3*x1^2-4*x1*x2+x2^2+x1-3*x2+8;
    g=[6*x1-4*x2+1,-4*x1+2*x2-3]';
    h=[6,-4;-4,2];
    h0=inv(h);
    eps1=0.01;
    k=0;
    tol=1;
    x0=[0,0]';
    while tol>eps1
        g0=subs(g,[x1,x2],[0,0]);
        m=eval(norm(g0));
        if m<eps1
            minf=subs(f,{x1,x2},{x0(1,1),x0(2,1)});
            x=x0
            break
        else
            d0=-h0*g0;
            fn=subs(f,[x1,x2],[0,0]);
            dfn=diff(fn);
            n0=solve(dfn);
            [r,s]=size(n0);
            d2fn=diff(fn,2);
            for i=1:s
                I(i)=limit(d2fn,n,n0(i));
                temp=double(I(i));
                if temp>0
                    n=n0;
                end;
            end;
        end;
        x0=x0+n*d0;
        tol=m;
        k=k+1;
    end
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月3日
  • 已采纳回答 4月25日
  • 创建了问题 10月24日

悬赏问题

  • ¥50 MATLAB APP 制作出现问题
  • ¥15 wannier复现图像时berry曲率极值点与高对称点严重偏移
  • ¥15 利用决策森林为什么会出现这样·的问题(关键词-情感分析)
  • ¥15 DispatcherServlet.noHandlerFound No mapping found for HTTP request with URI[/untitled30_war_e
  • ¥15 使用deepspeed训练,发现想要训练的参数没有梯度
  • ¥15 寻找一块做为智能割草机的驱动板(标签-stm32|关键词-m3)
  • ¥15 信息管理系统的查找和排序
  • ¥15 基于STM32,电机驱动模块为L298N,四路运放电磁传感器,三轮智能小车电磁组电磁循迹(两个电机,一个万向轮),怎么用读取的电磁传感器信号表示小车所在的位置
  • ¥15 如何解决y_true和y_predict数据类型不匹配的问题(相关搜索:机器学习)
  • ¥15 PB中矩阵文本型数据的总计问题。