资源描述:
《物联谢鑫实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、物联一班谢鑫20100740123实验六:使用m语言对电磁场的仿真一、实验目的与要求1.掌握m文件调试方法;2.掌握利用m语言仿真分析电磁场分布。二、实验原理及说明半径为a的环形载流回路周围空间的磁场分布设载流圆环中流过的电流为I,则圆环在空间任意一点P(x,y,z)产生的磁感应强度矢量为由于r2=x2+y2+z2则R2=a2+r2-2×a×r×cosβ=a2+r2-2×a×ρ=a2+r2-2×a×(x×cosα+y×sinα)=a2+x2+y2+z2-2a×x×cosα-2a×y×sinα=(x-a×cosα)2+(y-a×sinα)2+z2得由可求出磁感应强度矢量在x,y,z方向的分量
2、分别为三、实验内容和步骤(一)应用MATLAB对半径为a的环形载流回路周围空间的磁场分布进行仿真分析令B的三个分量中的x=0,仅考虑圆环电流在yoz平面上产生的磁场的分布,而不必考虑Bx分量,则可编写出下面的描绘二维磁场分布的程序:clear;figure(1)a=0.3;y=-1:0.04:1;the=0:pi/20:2*pi;I=1;u0=4*pi*1e-7;K0=I*u0/4/pi;[Y,Z,T]=meshgrid(y,y,the);r=sqrt((a*cos(T)).^2+Z.^2+(Y-a*sin(T)).^2);r3=r.^3;dby=a*Z.*sin(T)./r3;by=K0
3、*trapz(dby,3);dbz=a*(a-Y.*sin(T))./r3;bz=K0*trapz(dbz,3);subplot(121);[bSY,bSZ]=meshgrid([0:0.05:0.2],0);h1=streamline(Y(:,:,1),Z(:,:,1),by,bz,bSY,bSZ,[0.1,1000]);h2=copyobj(h1,gca);rotate(h2,[1,0,0],180,[0,0,0]);h3=copyobj(allchild(gca),gca);rotate(h3,[0,1,0],180,[0,0,0]);title('磁场的二维图','fontsize
4、',15);forkk=1:4[bSY,bSZ]=meshgrid(0.2+kk*0.02,0);streamline(Y(:,:,1),Z(:,:,1),by,bz,bSY,bSZ,[0.02/(kk+1),4500]);streamline(-Y(:,:,1),Z(:,:,1),-by,bz,-bSY,bSZ,[0.02/(kk+1),4500]);end(三)要求设计编写程序,如果B的三个分量均考虑,编写程序绘出电流环的三维磁力线图。源代码如下:clearall;figure(1)a=0.3;y=-1:0.04:1;the=0:pi/20:2*pi;I=1;u0=4*pi*1e-7;
5、K0=I*u0/4/pi;[Y,Z,T]=meshgrid(y,y,the);r=sqrt((a*cos(T)).^2+Z.^2+(Y-a*sin(T)).^2);r3=r.^3;dby=a*Z.*sin(T)./r3;by=K0*trapz(dby,3);dbz=a*(a-Y.*sin(T))./r3;bz=K0*trapz(dbz,3);subplot(121);[bSY,bSZ]=meshgrid([0:0.05:0.2],0);h1=streamline(Y(:,:,1),Z(:,:,1),by,bz,bSY,bSZ,[0.1,1000]);h2=copyobj(h1,gca);r
6、otate(h2,[1,0,0],180,[0,0,0]);h3=copyobj(allchild(gca),gca);rotate(h3,[0,1,0],180,[0,0,0]);title('磁场的二维图','fontsize',15);forkk=1:4[bSY,bSZ]=meshgrid(0.2+kk*0.02,0);streamline(Y(:,:,1),Z(:,:,1),by,bz,bSY,bSZ,[0.02/(kk+1),4500]);streamline(-Y(:,:,1),Z(:,:,1),-by,bz,-bSY,bSZ,[0.02/(kk+1),4500]);end[X
7、,Y,Z]=meshgrid(-0.5:0.04:0.5);r2=X.^2+Y.^2+Z.^2;fork=1:81phi=K0*(k-1);costh=cos(phi);sinth=sin(phi);R3=(r2+a^2-2*a*(X*costh+Y*sinth)).^(3/2);Bx0(:,:,:,k)=a*Z*costh./R3;By0(:,:,:,k)=a*Z*sinth./R3;Bz0(:,:,:,k)=a*(a