物联谢鑫实验报告2doc.docx
- 文档编号:30724735
- 上传时间:2023-08-19
- 格式:DOCX
- 页数:18
- 大小:726.39KB
物联谢鑫实验报告2doc.docx
《物联谢鑫实验报告2doc.docx》由会员分享,可在线阅读,更多相关《物联谢鑫实验报告2doc.docx(18页珍藏版)》请在冰豆网上搜索。
物联谢鑫实验报告2doc
物联一班谢鑫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方向的分量分别为
三、实验内容和步骤
(一)应用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*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',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;
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);
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',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,Y,Z]=meshgrid(-0.5:
0.04:
0.5);
r2=X.^2+Y.^2+Z.^2;
fork=1:
81
phi=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-X*costh-Y*sinth)./R3;
end
Bx=pi/40*trapz(Bx0,4);
By=pi/40*trapz(By0,4);
Bz=pi/40*trapz(Bz0,4);
subplot(122);
v=[-0.2,-0.1,0,0.1,0.2];
[Vx,Vy,Vz]=meshgrid(v,v,0);
plot3(Vx(:
),Vy(:
),Vz(:
),'r*');
streamline(X,Y,Z,Bx,By,Bz,Vx,Vy,Vz,[0.01,2000]);
holdon
axis([-0.5,0.5,-0.5,0.5,-0.5,0.5]);
view(-35,45);
boxon;
title('磁场的三维图','fontsize',15);
t=0:
pi/100:
2*pi;
plot(a*exp(i*t),'r-','LineWidth',3);
holdoff;
实验七:
使用偏微分方程工具箱对电磁场的仿真
一、实验目的与要求
3.掌握微分方程工具箱的使用方法;
4.掌握使用偏微分方程工具箱分析电磁场。
二、实验原理及说明
偏微分方程的工具箱(PDEtoolbox)是求解二维偏微分方程的工具,MATLAB专门设计了一个应用偏微分方程的工具箱的演示程序以帮助使用者快速地了解偏微分方程的工具箱的基本功能。
操作方法是在MATLAB的指令窗口键入pdedemos,打开CommandLineDemos窗口,只要单击任意键就会使程序继续运行,直至程序运行结束。
单击信息提示按钮(Info)是有关演示窗口的帮助说明信息。
8个偏微分方程的演示程序分别是泊松方程、亥姆霍兹方程、最小表面问题、区域分解方法、热传导方程、波动方程、椭圆型方程自适应解法和泊松方程快速解法。
(一)偏微分方程的工具箱的基本功能
偏微分方程的工具箱可以求解一般常见的二维的偏微分方程,其基本功能是指它能解的偏微分方程的类型和边值条件。
用户可以不必学习编程方法仅仅在图形用户界面窗口进行操作,就能得到偏微分方程的数值解。
1.工具箱可解方程的类型
定义在二维有界区域Ω上的下列形式的偏微分方程,可以用偏微分方程工具箱求解:
椭圆型
抛物型
双曲型
本征值方程
式中,u是偏微分方程的解;c、a、d、f是标量复函数形式的系数,在抛物型和双曲型方程中,它们也可以是t的函数,λ是待求的本征值。
当c、a、f是u的函数时,称之为非线性方程,形式为
也可以用偏微分方程工具箱求解。
2.工具箱可解方程的边值条件
解偏微分方程需要的边值条件一般为下面两种之一:
狄里赫利(Diriclet)边值条件hu=r
广义诺曼(GeneralizedNeumann)边值条件
式中,
为边界外法向单位向量;h、q、r、g是在边界上定义的复函数。
狄里赫利(Diriclet)边值条件也称为第一类边值条件,广义诺曼(GeneralizedNeumann)边值条件则称为第三类边值条件,如果q=0则称为第二类边值条件。
对于偏微分方程组而言,狄里赫利(Diriclet)边值条件是
h11u1+h12u2=r1
h21u1+h22u2=r2
(二)用工具箱解偏微分方程的步骤
用偏微分方程工具箱解偏微分方程有两种方法:
一是在它的图形用户界面中进行操作。
另一是利用偏微分方程工具箱提供的指令编程计算。
工具箱解偏微分方程的步骤如下:
1.设置定解问题。
使用偏微分方程工具箱的用户界面中的三个模式:
Draw模式,画出求解方程的区域,如矩形、正方形、圆形、椭圆或它们的组合;
Boundary模式,定义求解的边值条件;
PDE模式,定义求解所用的偏微分方程,主要是设定方程的类型及系数c、a、d、f。
对不同的子区域和媒质要设置不同的系数加以区别。
2.解偏微分方程。
主要用到如下两个模式:
Mesh模式,将求解区域划分为三角形网格,网格的参数根据要求可以改变;
Solve模式,求解偏微分方程。
3.将结果可视化。
在Plot模式下实现计算结果的可视化。
实验内容和步骤
问题1
截面为正方形的无限长线电荷如下图所示。
设电荷面密度为
;边长
。
请采用Matlab的PDETool工具箱仿真区域oABC的电磁场分布。
说明场的边值问题,给出边界oA、AB、BC、Co上的边界条件。
问题1求解
由对称性知,边界Co上的边界条件是
,边界oA上的边界条件是
。
当区域oABC足够大时,边界AB、BC可视为距离线电荷无穷远,边界条件也是
。
因此可以根据边界条件利用Matlab的PDETool工具箱仿真区域oABC的电场分布。
如图,矩形R1表示处于区域oABC中的部分线电荷,以20×20的矩形R2表示区域oABC。
则R1内有电荷,设为泊松方程:
R2-R1内无电荷,设为拉普拉斯方程:
再分别设置AB、BC、Co上的边界条件为
:
设置oA上的边界条件为
:
再经过剖分求解,得到以下仿真结果。
以上结果是假设区域oABC的大小为20×20得出的,可以看出Co、oA上的电场线分布是符合实际的,但不能确定在20×20的大小内AB、BC是否已经距离线电荷足够远以至可以认为
,因此,再仿真一个大小为100×100的结果进行对比:
可以看出,在20×20的范围内AB、BC上的边界条件并不满足
的条件。
所以对于本题,区域oABC越大,仿真结果与实际越相符。
问题2
请采用Matlab的PDETool工具箱对下列场进行仿真。
问题2求解
(a)解:
边界条件一为导体表面的第一类边界条件:
;
墙壁上以及无穷远处的的第二类边界条件:
电场在由墙壁所构成的区域内满足拉普拉斯方程
。
用Matlab仿真,结果如下:
增大无限远的范围,电场的分布基本不变,所以可以认为仿真结果近似符合实际情况。
未归一化的图:
在墙壁和无限远处的电位均为0,所以由于:
可知在无限长导体和墙壁间隙较近的部位,电场强度较大。
分析结论:
靠近直角的等势线接近于直角及平行平面,直至远离导体到无穷远处;无限长导体与墙壁间隙较近的部位,电场强度较大;离导体远的区域,电场强度小,因此等势线稀疏,靠近处电力线稠密;由以上分析可得,仿真结果正确。
(b)解:
边界条件即为两个墙壁上的第一类边界条件:
.
左上和右下边界上的第二类边界条件:
(左上),
(右下)
在区域内电场满足拉普拉斯方程
。
用Matlab仿真,结果如下:
未归一化:
分析结论:
以上两图体现了电力线满足从内向外,且在两个导体面间近似于平行平面场;电场线垂直于边界;在拐角处电场强度较小;仿真结果正确。
(c)解:
边界条件一为导体表面的第一类边界条件:
;
墙壁上的第二类边界条件:
电场在由墙壁所构成的区域内满足拉普拉斯方程
。
用Matlab仿真,结果如下:
未归一化:
分析结论:
导体棒周围满足电力线均匀向外发散,图中紧挨导体周围的部分等势线是一系列同心圆;在边界处,电力线和边界形状近似;离导体远的区域,电场强度小,因此等势线稀疏,靠近处电力线稠密;导体棒附近区域电场强度大;由此,仿真结果正确。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 物联谢鑫 实验 报告 doc