欢迎来到天天文库
浏览记录
ID:51306343
大小:13.23 KB
页数:3页
时间:2020-03-21
《最优化—基于matlab的共轭梯度法.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、共轭梯度算法程序:functionf=conjugate_gradient(x0,t)x=x0;symsxiyiaf=(xi-2)^2+(yi-4)^2;fx=diff(f,xi);fy=diff(f,yi);fx=subs(fx,{xi,yi},x0);fy=subs(fy,{xi,yi},x0);fi=[fx,fy];n=0;whiledouble(sqrt(fx^2+fy^2))>ts=-fi;ifn<=0s=-fi;elses=s1;endx=x+a*s;f=subs(f,{xi,yi},
2、x);f1=diff(f);f1=solve(f1);iffi~=0ai=double(f1);elsebreakx,f=subs(f,{xi,yi},x),nendx=subs(x,a,ai);f=xi-xi^2+2*xi*yi+yi^2;fxi=diff(f,xi);fyi=diff(f,yi);fxi=subs(fxi,{xi,yi},x);fyi=subs(fyi,{xi,yi},x);fii=[fxi,fyi];d=(fxi^2+fyi^2)/(fx^2+fy^2);s1=-fii+d*
3、s;n=n+1;fx=fxi;fy=fyi;endx,f=subs(f,{xi,yi},x),n运行结果为:>>conjugate_gradient([00],0.0001)x=0.2500-0.2500f=0.1250n=10ans=0.1250
此文档下载收益归作者所有