⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tank.m

📁 初学者可以参考一下 作为MATLAB的入门教程与实践
💻 M
字号:
L=8; r=2.5; V=pi*r*r*L; dV=5; n=floor(V/dV); 
i=0; x=0;  mark=zeros(n,1);
for i=1:n
   x1=x; x2=r+r; y=1; v=i/L*dV;
   for j=1:47
      x=(x1+x2)/2;
      y=r*r*acos((r-x)/r)-(r-x)*sqrt(x*(r+r-x))-v;
      y1=r*r*acos((r-x1)/r)-(r-x1)*sqrt(x1*(r+r-x1))-v;
      y2=r*r*acos((r-x2)/r)-(r-x2)*sqrt(x2*(r+r-x2))-v;
      if y*y1>0, x1=x; end
      if y*y2>0, x2=x; end
   end
   mark(i)=x;disp([num2str(i*dV),'    ',num2str(x)])
end
s=ones(size(mark))*0.1;
s(2:2:n)=0.2; s(20:20:n)=0.4;% s(100:100:n)=0.4; 
s=[-s,s];
t=0:pi/180:2*pi; xr=r*cos(t); yr=r*sin(t)+r;
H=plot(s',[mark,mark]','k');set(H,'linewidth',0.5)
axis([-r-.1 r+.1 -0.1 2*r+.1]),axis square, axis off, hold on
H=plot(xr,yr,'k');set(H,'linewidth',2),plot([0 0],[0 2*r],'k')
z=floor(n/4);
yy=mark(4:4:n,1);
for i=1:z,h=text(0.55,yy(i),[num2str(i*20)]);set(h,'fontsize',8),end
hold off
print -deps -r600 tank600

⌨️ 快捷键说明

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