您当前的位置:首页 >  品牌资讯 >> 
用共轭梯度法求函数_共轭梯度法的MATLAB程序 全球微动态

时间:2023-06-04 16:56:43    来源 : 互联网


(资料图片)

1、共轭梯度法function f=conjugate_grad_2d(x0,t)%please input this:conjugate_grad_2d([2,2],0.05)x=x0;syms xi yi af=xi^2-xi*yi+3*yi^2;fx=diff(f,xi);fy=diff(f,yi);fx=subs(fx,{xi,yi},x0);fy=subs(fy,{xi,yi},x0);fi=[fx,fy];count=0;while double(sqrt(fx^2+fy^2))>ts=-fi;if count<=0s=-fi;elses=s1;endx=x+a*s;f=subs(f,{xi,yi},x);f1=diff(f);f1=solve(f1);if f1~=0ai=double(f1);elsebreakx,f=subs(f,{xi,yi},x),countendx=subs(x,a,ai);f=xi^2-xi*yi+3*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*s;count=count+1;fx=fxi;fy=fyi;endx,f=subs(f,{xi,yi},x),count。

本文到此分享完毕,希望对大家有所帮助。

标签:

热门推荐

X 关闭

X 关闭