电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

用Matlab实现直线插补计算程序VIP免费

用Matlab实现直线插补计算程序_第1页
1/5
用Matlab实现直线插补计算程序_第2页
2/5
用Matlab实现直线插补计算程序_第3页
3/5
姓名:学号:班级:用Matlab实现直线插补计算程序clear;F=0;x=0;y=0;dx=0.5;dy=0.6;xe=-5;ye=-6;K=ye/xe;xx(1)=x;yy(1)=y;index=2;while(1)if(F>=0)if(xe>0)x=x+dx;elsex=x-dx;endy=y;F=abs(xe*y)-abs(ye*x);elseif(ye>0)y=y+dy;elsey=y-dy;endx=x;F=abs(xe*y)-abs(ye*x);endif(abs(F)<=0.01)F=0;endxx(index)=x;yy(index)=y;index=index+1;if((abs(x)+abs(y))>=(abs(xe)+abs(ye)))break;endendif(xe>0)xxx=0:0.01:xe;elsexxx=0:-0.001:xe;endyyy=K*xxx;if(xe>0)plot(xx,yy,'g>',xxx,yyy,'b');elseplot(xx,yy,'g-<',xxx,yyy,'b');endgridon;-5-4.5-4-3.5-3-2.5-2-1.5-1-0.50-6-5-4-3-2-10x轴y轴图表1当dx=0.5;dy=0.6;xe=-5;ye=-6;时,结果如图表1所示。0123456700.511.522.533.54图表2当dx=0.6;dy=0.4;xe=6;ye=4;时结果如图标2所示,结果显示多走了一步,原因是matlab在倒数第二步计算if((abs(x)+abs(y))>=(abs(xe)+abs(ye)))时,结果不为0,仍需继续走一步。可以对程序做进一步修改:加入条件dmin=min(dx,dy)/2;并把if((abs(x)+abs(y))>=(abs(xe)+abs(ye)))修改成if(abs(abs(x)+abs(y)-abs(xe)-abs(ye))

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

用Matlab实现直线插补计算程序

确认删除?
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群