电磁场仿真matlab.docx

上传人:牧羊曲112 文档编号:3664119 上传时间:2023-03-14 格式:DOCX 页数:3 大小:37.30KB
返回 下载 相关 举报
电磁场仿真matlab.docx_第1页
第1页 / 共3页
电磁场仿真matlab.docx_第2页
第2页 / 共3页
电磁场仿真matlab.docx_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《电磁场仿真matlab.docx》由会员分享,可在线阅读,更多相关《电磁场仿真matlab.docx(3页珍藏版)》请在三一办公上搜索。

1、电磁场仿真matlab电磁场边值问题求解 一、实验目的 一个二维静电场,电位函数为j(x,y),边界条件如题4.29图所示,将正方形场域分成20个正方形网格。有16个内部网格点。假定16个网格点的初始值都定为零,试用超松弛法确定16个内网格点的电位值。 二、实验程序 100V Matlab 程序如下: M=6; N=6; %网格节点数6*6=36个 U1=ones(N,M); %行列二维数组 0V m=5,n=5; %横纵向网格数 U1(1,:)=ones(1,M)*50; %条件边界值 U1(N,:)=ones(1,M)*100; for i= 1:N U1(i,1)=0; U1(i,M)=

2、100; end 50V t1=(cos(pi/m)+cos(pi/n)/2; w=2/(1+sqrt(1-t1*t1); U2=U1; P=1;T=0; %初始化 k=0 while(P1e-5) %由v1迭代,算出v2,迭代精度1e-5 k=k+1; %计算迭代次数 P=0; for i=2:N-1; %行循环 for j=2:M-1; %列循环 U2(i,j)=U1(i,j)+(U1(i,j+1)+U1(i+1,j)+U2(i-1,j)+U2(i,j-1)-4*U1(i,j)*w/4; %差分方程 T=abs(U2(i,j)-U1(i,j); if (TP) P=T; end end e

3、nd U1=U2; end subplot(1,2,1),mesh(U2); %三维图 axis(0,6,0,6,0,100); subplot(1,2,2),contour(U2,15); %等电位线 hold on; x=1:1:M; y=1:1:N xx,yy=meshgrid(x,y); %栅格 Gx,Gy=gradient(U2,0.6,0.6); %梯度 quiver(xx,yy,Gx,Gy,-1.0,r); %根据梯度画箭头 axis(-1.5,M+2.5,-2,13); %坐标边框设置 plot(1,1,M,M,1,1,N,N,1,1,K); %画导体边框 text(M/2-0

4、.5,N+0.4,100V,fontsize,6);%上标注 text(M/2,0.3,50V,fontsize,6);%下标注 text(-0.3,N/2,0V,fontsize,5);%左标注 text(M+0.1,N/2,100V,fontsize,5);%右标注 hold off 三、程序运行结果: 1、场域内等电位线、电场线分布图 所求16个内网格点电位值如下表 四、实验总结 通过这次使用matlab编写程序求解电磁场的实验,对电磁场这门课程的我有了更加直观的图形理解和计算机求解的认识。实验用超松弛法求解有界电场内的16个内网格点的过程让我亲身实践了电磁场理论计算的形象化结果,加深了我对电磁场边值问题的理解,特别是超松弛方法和简单迭代的运用。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号