1、电路中电流流向例如图首先创立坐标系,再关闭坐标抽显示,用plot函数搭建好电路图及相关元 件,并绘制箭头表示电流的流向。运行程序时,在开关闭合之后,灯泡发出黄色 光,箭头开始沿导线移动一圈后停止,开关也相应断开,灯泡黄色光逐渐熄灭。 figureCname1基本电路的模拟。;axis(-32Q0);%建立坐标系hold on %保持当前图形的所有特性axis(off); %关闭所有轴标注和控制%下面是画电池的过程fill(-l.5,-15151.5UL551y,);%确定坐标轴范围并填充 fill(-0.5,-0.5/0.5,0.5,5,5.5,5.5,5;k,); %确定坐标轴范围并填充 t
2、ext(-0.5,l.5/负极,);在坐标上标注说明文字text(-0.5,3/电池);在坐标上标注说明文字text(-0.5,45正极,);在坐标上标注说明文字%下面是画导电线路的过程plot(0;0U5.5;6.7,Eolor1,匕,1访651丫心,-1,linewidth1,4);% 绘制二维图形线竖实心红 色plot(0;446.7;6,刀coloElinestyleJTIinewidthM); %绘制二维图形线实心红 色为导线_a=line(4;5/6.7;7.7,color,b,linestyle,-7linewidth,4,erasemode,7,xor,);% 画开关 蓝色pl
3、ot(5.2;9.2U67;6.刀,color,匕,linestyle,-,Ilinewidth,4);%绘制图导线为红色 plot(9.2;9.2,67;3.7;color7r7linestyle7-7linewidth4);% 绘制图导线竖线为红 线plot(9.2;9.7U3.7;3.7colorrVlinestylHElinewidth,4); % 绘制图导线横线为红 色plot(0;0/l;0color,匕linestyle-linewidth,4);% 如上画红色竖线 plot(0;10,0;0,color,7,r,llinestyle,-,linewidth,/4);%$nJLi
4、ii11t plot(10;10U0;3color,r,linestyle,ulinewidth,4);% 画竖线%下面是画灯泡的过程fill(9.7,10310L33333L,k,);% 确定填充范围,color,b:,linestyle,-linewidth,0.5);% 绘制灯 泡外形线为蓝 色plot(103403,33A45,color,b,linestyle,J,,linewidth,0.5); %绘制灯泡外形线 为蓝色%以下为绘圆乂二97个50:10.3;%绘圆plot(x,4.3+0.l*sin(40*pi*(x-9.7),color,b,linestyle,/linewidt
5、hO.5); %绘圆t=0:pi/60:2*pi; %绘圆plot(10+0.7*cos(t),4.3+0.6*sin(t),color1,b); %绘圆%下面是箭头及注释的显示text(4510电流运动方向,);在坐标上标注说明文字line(4.5;6.6/9.4;9,4,color,lr,llinestyle,-,,,linewidth,/47,erasemodel,xor,);%lJ W 头横线line(6.7,9.4,color,b,linestyle,erasemode,xor/markersize,10);% %绘制箭头三 角形pause(l);%下面是开关闭合的过程t=0;y=7
6、.7;while y6.7 %电路总循环控制开关动作条件x=4+sqrt(2)*cos(pi/4*(l-t);y=6.7+sqrt(2)*sin(pi/4*(l-t);set(axdataJ4;xydata46.7;y);drawnow;t=t+0.1;end%下面是开关闭合后模拟大致电流流向的过程pause(l);light=line(10,4.3,olor/y,marker1,VmarkersizeO/erasemode/xor);% 画灯丝发 出的光:黄色%画电流的各局部h=line(l;l,5.2;5.6,color/,r,linestyle7-,linewidth,4,erasemo
7、de,xor,);g=line(l,5.7,color,b,linestyle,,A,,erasemode,xor,markersize,10);%给循环初值t=0;m2=5.7;n=5.7;while n6.3;%确定电流竖向循环范围m=l;n=0.05*t+5.7;set(h,xdata,m;m,ydata,n-0.5;n-0.1);setfg/xdatam/ydatan);t=t+0.01;drawnow;endt=0;while t2;%在转角处的停顿时间m=1.2-0.2*cos(pi/4)*t);n=6.3+0.2*sin(pi/4)*t);set(hxdata/m-0.5;m-0
8、.lydata/n;n);set(g,xdata,m,ydata,n);t=t+0.05;drawnow;endt=0;while t,markersize,10,erasemode,xor,); % 绘制 第二个箭头set(gxdata,1.2ydata,6.5);drawnow;endpause(0.5);t=0;while m8%确定第二个箭头的循环范围m=l.l+0.05*t;n=6.5;set(gxdata,m+0.lydata,6.5);set(hxdata/m-0.4;mydata16.5;6.5);t=t+0.05;drawnow;endt=0;while t2 %在转角后的停
9、顿时间m=8.1+0.2*cos(pi/2-pi/4*t);n=6.3+0.2*sin(pi/2-pi/4*t);set(g/xdata,/m/ydata,n);set(hxdataJm;mydataJn+O.l;n+O,5);t=t+0.05;drawnow;endt=0;while t,markersize,10,erasemode,xor,);g=line(8.3,6.3,color,b/linestyle/v/markersize,10,erasemode,xor);set(g/xdata,/8.3/ydata,6.3);drawnow;endpause(0.5);t=0;while
10、nl %确定箭头的运动范m=8.3;n=6.3-0.05*t;setfg/xdatam/ydatan);set(h,xdata,m;m,ydata,/n+0.1;n+0.5);t=t+0.04;drawnow;endt=0;while t2 %箭头的起始时间m=8.1+0.2*cos(pi/4*t);n=l-0.2*sin(pi/4*t);setfg/xdatam/ydatan);set(hxdataJm+0.l;m+0.5ydatan;n);t=t+0.05;drawnow;endt=0;while t0.5t=t+0.5;%绘制第四个箭头g=line(8.1,0.8,color,7,b,l
11、inestyle,v,markersize,10,erasemode,xor,); g=line(8.1,0.8,color,b,linestyle,/1.2 %箭头的运动范围m=8.1-0.05*t;n=0.8;setfg/xdatam/ydatan);set(h/xdata,m+0.1;m+0.5/ydata,n;n);t=t+0.04;drawnow;endt=0;while t2 %停顿时间m=1.2-0.2*sin(pi/4*t);n=l+0.2*cos(pi/4*t);set(g,xdata/m,ydata,n);set(hxdataIm;m+0.5ydatan-0.l;n-0.5
12、);t=t+0.05;drawnow;endt=0;while t0.5 %画第五个箭头t=t+0.5;g=line(l,l,color,b,linestyle/markersize,10,erasemode/xor);g=line(l,1,,color,b,linestyle,/A,,markersize,10,erasemodeVxor);setfg/xdatal/ydata,!);drawnow;endt=0;while n6.3 %循环范围m=l;n=l+0.05*t;setfg/xdatam/ydatan);set(hxdataJm;mydata1n-0.5;n-0.l);t=t+0.04;drawnow;end%下面是开关断开后的情况t=0;y=6.7;while y7.7 %开关的断开x=4+sqrt(2)*cos(pi/4*t);y=6.7+sqrt(2)*sin(pi/4*t);set(axdata,4;x/ydata46.7;y);drawnow;t=t+0.1;endpause(0.5);%开关延时作用nolight=line(10,4.3/color,y,marker/./markersizeO/erasemode/xor); end