您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > matlab在电磁场与电磁波中的应用
源程序%用简单跌代法求矩形平行电容板内的电位分布hx=37;hy=80;%设置网格节点数v1=ones(hy,hx);%设置行列二维数组%上下两行的Dirichlet边界条件值v1(hy,:)=ones(1,hx)*100;v1(1,:)=zeros(1,hx);%左右两行的Dirichlet边界条件值fori=1:hyv1(i,hx)=0;endfori=1:hy/2v1(i,1)=0;endfori=hy/2:hyv1(i,1)=100;endv2=v1;maxt=1;t=0;%初始化k=0while(maxt1e-6)k=k+1%计算迭代次数maxt=0;fori=2:hy-1forj=2:hx-1v2(i,j)=(v1(i,j-1)+v1(i,j+1)+v1(i-1,j)+v1(i+1,j))/4;t=abs(v2(i,j)-v1(i,j));if(tmaxt)maxt=t;endendendv1=v2endsubplot(1,2,1),mesh(v2)%画三维曲面图xlabel('x')ylabel('y')zlabel('v')subplot(1,2,2),contour(v2,15)%画等位线图holdonx=1:1:hx;y=1:1:hy[xx,yy]=meshgrid(x,y);%形成栅格[Gx,Gy]=gradient(v2,0.6,0.6);%计算梯度quiver(xx,yy,Gx,Gy,-0.8,'r')%设置坐标边框plot([1,1,hx,hy,1],[1,hy,hy,1,1],'k')%画导体边框text(hx/2,0.3,'0v','fontsize',11);%下标注text(hx/2-0.5,hy+0.5,'100v','fontsize',11);%上标注text(-0.5,hy/2,'0v','fontsize',11);%左标注text(hx+0.3,hy/2,'0v','fontsize',11);%右标注holdoff分离变量法:[x,y]=meshgrid(0:0.1:10,0:0.1:10);%建立网格U0=100;a=10;z=0;%设定参数forn=1:100;j=U0/pi.*(((-1)^n)/n).*sin(2*n*pi.*y/a).*exp(-2*n*pi.*x/a);z=z+j;endsubplot(1,2,1),mesh(v2)%画三维曲面图xlabel('x')ylabel('y')zlabel('v')subplot(1,2,2),contour(v2,15)%画等位线图%用超松弛法求矩形平行电容板内的电位分布hx=37;hy=80;%设置网格节点数v1=ones(hy,hx);%设置行列二维数组m=36;n=79;%上下两行的Dirichlet边界条件值v1(hy,:)=ones(1,hx)*100;v1(1,:)=zeros(1,hx);%左右两行的Dirichlet边界条件值fori=1:hyv1(i,hx)=0;endfori=1:hy/2v1(i,1)=0;endfori=hy/2:hyv1(i,1)=100;end%计算松弛因子t1=(cos(pi/m)+cos(pi/n))/2;w=2/(1+sqrt(1-t1*t1));v2=v1;maxt=1;t=0;%初始化k=0while(maxt1e-6)k=k+1%计算迭代次数maxt=0;fori=2:hy-1forj=2:hx-1v2(i,j)=v1(i,j)+(v1(i,j+1)+v1(i+1,j)+v2(i-1,j)+v2(i,j-1)-4*v1(i,j))*w/4;t=abs(v2(i,j)-v1(i,j));if(tmaxt)maxt=t;endendendv1=v2endsubplot(1,2,1),mesh(v2)%画三维曲面图xlabel('x')ylabel('y')zlabel('v')subplot(1,2,2),contour(v2,15)%画等位线图holdonx=1:1:hx;y=1:1:hy[xx,yy]=meshgrid(x,y);%形成栅格[Gx,Gy]=gradient(v2,0.6,0.6);%计算梯度quiver(xx,yy,Gx,Gy,-0.8,'r')%设置坐标边框plot([1,1,hx,hy,1],[1,hy,hy,1,1],'k')%画导体边框text(hx/2,0.3,'0v','fontsize',11);%下标注text(hx/2-0.5,hy+0.5,'100v','fontsize',11);%上标注text(-0.5,hy/2,'0v','fontsize',11);%左标注text(hx+0.3,hy/2,'0v','fontsize',11);%右标注holdoff
本文标题:matlab在电磁场与电磁波中的应用
链接地址:https://www.777doc.com/doc-2887296 .html