newtontype.asv

来自「使用惩罚函数法对机械设计中的问题进行优化处理」· ASV 代码 · 共 21 行

ASV
21
字号
function [xbest,ymin]=newtontype(x0,r)
e=0.1;
syms a;
xk=x0;
h=punishhessian(x0,xk,r);
dk=-inv(h)*punish1(x0,xk,r);
xk1=xk+a*dk;
amin=trying(xk1,a,r);
xk1=xk+amin*dk;
x=xk1-xk;
while(sqrt(x'*x)>=e)
    xk=xk1;    
    h=punishhessian(x0,xk,r);
    dk=-inv(h)*punish1(x0,xk,r);
    xk1=xk+a*dk;
    amin=trying(xk1,a,r);
    xk1=xk+amin*dk;
    x=xk1-xk;
end
xbest=xk1;
ymin=punish(xxbest,r);

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?