永发信息网

matlab 迭代?急啊!

答案:1  悬赏:0  手机版
解决时间 2021-10-13 01:57
  • 提问者网友:雨不眠的下
  • 2021-10-12 04:40
matlab 迭代?急啊!
最佳答案
  • 五星知识达人网友:风格不统一
  • 2021-10-12 05:03
%迭代公式 x(k+1)=(sum(r*w*xi)/di(k))/(sum(r*w*xi));% y(k+1)=(sum(r*w*yi)/di(k))/(sum(r*w*xi));% di(k+1)=sqrt((x(k)-xi)^2+(y(k)-yi)^2);r=0.8;w=[6398014.98,6525900.99,3752178.53,1400985.31,2495271.42,1506266.52,1953408.82];xi=[117.00,118.05,117.13,116.29,115.97,118.03,118.49]; yi=[36.65,36.78,36.18,37.45,36.45,37.36,37.46]; n=0;W=0.01 % W 为x,y的迭代精度假设为0.01x0=117.34;y0=36.75; %初值 while (1) di=sqrt((x0-xi).^2+(y0-yi).^2); x=(sum(r*w.*xi./di))./(sum(r.*w.*xi)) y=(sum(r*w.*yi./di))./(sum(r.*w.*xi)) if abs(x-x0)>W && abs(y-y0)>W %若不满足迭代终止条件则继续迭代 x0=x;y0=y;n=n+1; continue; else disp('迭代次数为:') n disp('x的迭代值为:'); x break; %满足后输出结果并退出 endend%问题还是有些不清楚的,sum那个地方,我改了一下,不知道是你要表达的意思
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯