度《电磁场与电磁波》仿真实验.docx
- 文档编号:26457607
- 上传时间:2023-06-19
- 格式:DOCX
- 页数:24
- 大小:1.12MB
度《电磁场与电磁波》仿真实验.docx
《度《电磁场与电磁波》仿真实验.docx》由会员分享,可在线阅读,更多相关《度《电磁场与电磁波》仿真实验.docx(24页珍藏版)》请在冰豆网上搜索。
度《电磁场与电磁波》仿真实验
《电磁场与电磁波》仿真实验
2016年11月
《电磁场与电磁波》仿真实验介绍
《电磁场与电磁波》课程属于电子信息工程专业基础课之一,仿真实验主要目的在于使学生更加深刻的理解电磁场理论的基本数学分析过程,通过仿真环节将课程中所学习到的理论加以应用。
受目前实验室设备条件的限制,目前主要利用MATLAB仿真软件进行,通过仿真将理论分析与实际编程仿真相结合,以理论指导实践,提高学生的分析问题、解决问题等能力以及通过有目的的选择完成实验或示教项目,使学生进一步巩固理论基本知识,建立电磁场与电磁波理论完整的概念。
本课程仿真实验包含五个内容:
一、电磁场仿真软件——Matlab的使用入门
二、单电荷的场分布
三、点电荷电场线的图像
四、线电荷产生的电位
五、有限差分法处理电磁场问题
一、电磁场仿真软件——Matlab的使用入门……………................................................4
二、单电荷的场分布………………………………………………………………………………………………10
三、点电荷电场线的图像………………………………………………………………………………………12
四、线电荷产生的电位……………………………………………………………………………….…………14
五、有限差分法处理电磁场问题……………………………………………………………………………17
实验一电磁场仿真软件——Matlab的使用入门
一、实验目的
1.掌握Matlab仿真的基本流程与步骤;
2.掌握Matlab中帮助命令的使用。
二、实验原理
(一)MATLAB运算
1.算术运算
(1).基本算术运算
MATLAB的基本算术运算有:
+(加)、-(减)、*(乘)、/(右除)、\(左除)、
^(乘方)。
注意,运算是在矩阵意义下进行的,单个数据的算术运算只是一种特例。
(2).点运算
在MATLAB中,有一种特殊的运算,因为其运算符是在有关算术运算符前面加点,所以叫点运算。
点运算符有.*、./、.\和.^。
两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵的维参数相同。
例1:
用简短命令计算并绘制在0≤x≦6范围内的sin(2x)、sinx2、sin2x。
程序:
x=linspace(0,6)
y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;
plot(x,y1,x,y2,x,y3)
(二)几个绘图命令
1.doc命令:
显示在线帮助主题
调用格式:
doc函数名
例如:
docplot,则调用在线帮助,显示plot函数的使用方法。
2.plot函数:
用来绘制线形图形
plot(y),当y是实向量时,以该向量元素的下标为横坐标,元素值为纵坐标画出一条连续曲线,这实际上是绘制折线图。
plot(x,y),其中x和y为长度相同的向量,分别用于存储x坐标和y坐标数据。
plot(x,y,s)
contour函数:
用来绘制等高线图形
ezplot函数:
对于显式函数f=f(x),在默认范围[-2π 对于隐式函数f=f(x,y),在默认的平面区域[-2π 3.具有两个纵坐标标度的图形 在MATLAB中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy绘图函数。 调用格式为: plotyy(x1,y1,x2,y2) 其中x1,y1对应一条曲线,x2,y2对应另一条曲线。 横坐标的标度相同,纵坐标有两个,左纵坐标用于x1,y1数据对,右纵坐标用于x2,y2数据对。 4.三维曲线 plot3函数与plot函数用法十分相似,其调用格式为: plot3(x1,y1,z1,选项1,x2,y2,z2,选项2,…,xn,yn,zn,选项n) 其中每一组x,y,z组成一组曲线的坐标参数,选项的定义和plot函数相同。 当x,y,z是同维向量时,则x,y,z对应元素构成一条三维曲线。 当x,y,z是同维矩阵时,则以x,y,z对应列元素绘制三维曲线,曲线条数等于矩阵列数。 5.legend命令: 为绘制的图形加上图例 调用格式: legend('string1','string2',...) 例如: legend('电信161班','学号: 05401111','张三','Location','best'); 6.xlabel命令: 给X轴加标题 调用格式: xlabel('string') 例如: xlabel('x'); 三、实验内容 1.在命令窗口中运行一个加法程序; 2.在命令窗口中练习帮助命令(doc命令)的使用。 3.建立第一个M文件,并运行,观察并保存运行结果。 四、实验步骤 1.在命令窗口中运行一个加法程序 (1)点击桌面上matlab7.0快捷方式图标,如图1.1所示,启动该软件。 图1.1matlab7.0快捷方式图标 (2)在打开的界面右方,是命令窗口(CommandWindows),如图1.2所示,在闪动光标处可以写入命令; 图1.2Matlab的命令窗口 (3)在光标处写入如图1.3所示的命令(注意: 前两个语句后面有分号,最后一个语句没有分号);按回车键,则得到运行结果为50,如图1.4所示。 图1.3在命令窗口输入命令 图1.4按回车键执行命令得到正确运行结果 2.在命令窗口中练习帮助命令(doc命令)的使用。 在命令窗口光标处输入命令: docplot;回车,则进入在线帮助文件,显示plot命令的使用方法页面,如图1.5所示。 图1.5plot命令的在线帮助页面 3.建立第一个M文件,并运行,观察并保存运行结果。 (1)点击图标,如图1.6中红色圆圈所示,即创建了一个新的M文件,如图1.7所示。 图1.6红色圆圈的图标用于创建新的M文件 图1.7创建的空白M文件 (2)在空白M文件中输入“二、实验原理”例子的程序,保存,运行,得到运行结果如图1.8所示。 要求: 在E盘建立新文件夹,命名为Fiele_Wave_simulation_2012_10_27;将M文件保存在Fiele_Wave_simulation_2012_10_27目录下,命名为Exp_1.m; 特别说明两点: a.M文件名及保存的路径名均应为英文,否则运行出错; b.程序中的所有字符均应为英文状态下输入,特别注意单引号,逗号,空格,这些细节会导致运行报错,又极难发现。 图1.8M文件的保存、运行按键及运行结果 五、实验工具 1.计算机1台 2.MATLAB仿真软件1套 六、实验报告要求 1.写出仿真程序源代码。 2.在同一窗口用不同的线性绘制y=sinx,y=cosx在[0,2*pi]上的图像,并加标注。 3.在同一窗口用不同的线性绘制y=sin2x,y=cos2x在[-2*pi,2*pi]上的图像,并加标注。 (要在图中绘制出姓名与学号) 实验二单电荷的场分布 一、实验目的 1.掌握MATLAB仿真的基本流程与步骤; 2.学会绘制单电荷的等位线和电力线分布图。 二、实验原理 1.基本原理 单电荷的外部电位计算公式: 等位线就是连接距离电荷等距离的点,在图上表示就是一圈一圈的圆,而电 力线就是由点向外辐射的线,比较简单,这里就不再赘述。 2.参考程序 theta=[0: 0.01: 2*pi]';%创建向量theta,确定theta的范围为0到2*pi,步距为0.01 r=0: 10;%半径分别为r=0,1,2,...,10 x=sin(theta)*r; y=cos(theta)*r; plot(x,y,'b')%绘制10个圆 x=linspace(-5,5,100);%创建线性空间向量x,从-5到5,等间距分为100个点 fortheta=[-pi/40pi/4] y=x*tan(theta);%分别绘制y=x*tan(theta)的三条直线,其中theta分别取-pi/4,0,pi/4 holdon;%Hold住绘制的图形 plot(x,y);%绘制y=x*tan(theta)的三条直线 end gridon %axistight %legend('电信本162班','学号: 16401111','张三','Location','best');legend('boxoff');%加上图例 %xlabel('x');%加上横坐标标题 %ylabel('y');;%加上纵坐标标题 %holdon; 3.程序参考运行结果 运行程序,获得图像大致如图2.1所示。 图2.1单电荷的等位线和电力线分布图 三、实验内容 绘制单电荷的等位线和电力线分布图。 四、实验步骤 1.在E盘建立新文件夹,命名为Fiele_Wave_simulation_2012_10_27; 2.打开Matlab软件,新建一个空白的M文件,保存在Fiele_Wave_simulation_2012_10_27目录下,命名为Exp_2.m; 3.将源程序拷贝到M文件中,保存; 4.点击运行按钮,观察程序运行结果。 五、实验工具 1.计算机1台 2.MATLAB仿真软件1套 六、实验报告要求 1.写出仿真程序源代码。 2.绘制单电荷的等位线和电力线分布图。 (要在图中绘制出姓名与学号) 实验三点电荷电场线的图像 一、实验目的 学会由解析表达式进行数值求解的方法。 二、实验原理 1.基本原理 考虑一个三点电荷系所构成的系统。 如图所示,其中一个点电荷-q位于坐标原点,另一个-q位于y轴上的点,最后一个+2q位于y轴的-点,则在xoy平面内,电场强度应满足 任意条电场线应该满足方程: (1) 求解 (1)式可得: (2) 这就是电场线满足的方程,常数C取不同值将得到不同的电场线。 2.参考程序 解出y=f(x)的表达式再作图是不可能的。 用Matlab语言即能轻松的做到这 一点。 其语句是: symsxy%设置x,y变量; forC=0: 0.1: 3.0 ezplot(2*(y+1)/sqrt((y+1)^2+x^2)-y/sqrt(y^2+x^2)- (y-1)/sqrt((y-1)^2+x^2)-C,[-5,5,0.1]);%其中取了a=1,C=0,0.1,0.2,……,3.0 holdon; end 3.程序参考运行结果 运行程序,获得图像大致如图3.1所示。 图3.1点电荷电场线的图像 三、实验内容 根据给出的三点电荷系所构成的系统电场线满足的方程,绘制其图像。 四、实验步骤 1.在E盘建立新文件夹,命名为Fiele_Wave_simulation_2012_10_27; 2.打开Matlab软件,新建一个空白的M文件,保存在Fiele_Wave_simulation_2012_10_27目录下,命名为Exp_3.m; 3.将源程序拷贝到M文件中,保存; 4.点击运行按钮,观察程序运行结果。 五、实验工具 1.计算机1台 2.MATLAB仿真软件1套 六、实验报告要求 1.写出仿真程序源代码。 2.绘制三点电荷系所构成的系统电场线的图像。 (要在图中绘制出姓名与学号) 实验四线电荷产生的电位 一、实验目的 理解交互式程序运行的过程。 二、实验原理 1.基本原理 设电荷均匀分布在从z=-L到z=L,通过原点的线段上,其密度为q(单位C/m), 求在xy平面上的电位分布。 点电荷产生的电位可表示为 是一个标量。 其中r为电荷到测量点的距离。 线电荷所产生的电位可用积分或叠 加的方法来求。 为此把线电荷分为N段,每段长为dL。 每段上电荷为q*dL,看作 集中在中点的点电荷,它产生的电位为 然后对全部电荷求和即可。 2.参考程序 把xy平面分成网格,因为xy平面上的电位仅取决于离原点的垂直距离R,所 以可以省略一维,只取R为自变量。 把R从0到10米分成Nr+1点,对每一点计算其电位。 clearall; L=input(‘线电荷长度L=: ’); N=input(‘分段数N=: ’); Nr=input(‘分段数Nr=: ’); q=input(‘电荷密度q=: ’); E0=8.85e-12; C0=1/4/pi/E0; L0=linspace(-L,L,N+1); L1=L0(1: N);L2=L0(2: N+1); Lm=(L1+L2)/2;dL=2*L/N; R=linspace(0,10,Nr+1); fork=1: Nr+1 Rk=sqrt(Lm.^2+R(k)^2); Vk=C0*dL*q./Rk; V(k)=sum(Vk); end [max(V),min(V)] plot(R,V),grad 3.程序参考运行结果 输入: 线电荷长度L=: 5 分段数N=: 50 分段数Nr=: 50 电荷密度q=: 1 可得最大值和最小值为: ans= 1.0e+010*[9.31990.8654] 图像大致如图4.1所示。 图4.1点电荷电场线的图像 三、实验内容 根据给出的线电荷产生的电位方程,绘制电位图像。 四、实验步骤 1.在E盘建立新文件夹,命名为Fiele_Wave_simulation_2012_10_27; 2.打开Matlab软件,新建一个空白的M文件,保存在Fiele_Wave_simulation_2012_10_27目录下,命名为Exp_4.m; 3.将源程序拷贝到M文件中,保存; 4.点击运行按钮,观察程序运行结果。 五、实验工具 1.计算机1台 2.MATLAB仿真软件1套 六、实验报告要求 1.写出仿真程序源代码。 2.绘制线电荷产生的电位的图像。 (要在图中绘制出姓名与学号) 实验五有限差分法处理电磁场问题 一、实验目的 理解有限差分法处理电磁场问题。 二、实验原理 1.基本原理 在很多实际情况下,往往我们不知道电荷的分布情况,而只知道边界的电位。 例如在静电场中的导体,边界是等位面,但是表面上的电荷分布往往不一样,而且很难求得。 如果我们想求导体附近的电场,这里就介绍用差分法解电场的方法。 如果我们想求导体附近的电场,这里就介绍用差分法解电场的方法。 解决这个问题的关键是对电位使用以下结论: 在一个没有电荷的区域,给出一个 点的电位等于周围点的电位数值的平均值。 我们使用高斯定律以及以下公式来证 明这个结论: (根据电压V的电场分量)(5.1) 我们将集中讨论该情况,其中电位只取决于两个坐标,x和y。 一个例子是一个带电的长圆柱体。 在一个点的电势只依赖于这一点在平面垂直于圆柱体的轴线,而不是z坐标。 对于这样一个二维的情况下,考虑一个点P的坐标(x,Y,Z),并在一个由高斯表面封闭的立方体的一面长度是2Δl,中心在P(图T8.1)。 如果立方体的内部没有电荷,通过立方体的电通量ΦE等于零。 由方程(T8.1)可知Z轴的电场分量为零,因为电势V并不是z的函数。 因此,并没有通过高斯表面的平行于xy-平面的电通量。 由于是一个小的立方体,通过其他四个面每通量有一个良好的逼近,等于在每面的中心和每一面的(2Δl)2的E的垂直分量的乘积。 总流量(等于0)可以表示为; (5.2) 在一个没有电荷的区域,点P的电位数值等于P点周围电位值的平均值。 图5.1没有电荷的区域,点P的电位的求解示意图 使用式5.1,我们可以近似的写出电场的各分量: (5.3) 我们可以得到P点的电位是: (5.4) 总之,P点的电位值等于P点周围点的电位值的平均值,前提是 非常小。 2.计算机绘图算法 3.参考程序 计算场点电压值程序如下: m=12 fork=1: m forj=1: m ifk==1 V(j,k)=1; elseif((j==1)|(j==m)|(k==m)) V(j,k)=0; else V(j,k)=0.5; end end end cha=0.01; delta=0; n=0; while (1) n=n+1; fork=2: m-1 forj=2: m-1 Vnew(j,k)=1/4*(V(j+1,k)+V(j-1,k)+V(j,k+1)+V(j,k-1)); d=abs((Vnew(j,k)-V(j,k))/V(j,k)); ifd>delta delta=d; end V(j,k)=Vnew(j,k); end end ifdelta break; end if(n>100) break; end delta=0.; end 代入m=22 绘图程序: k=1: m; j=1: m; [DX,DY]=gradient(V,.4,.4); holdon quiver(k,j,DX,DY,2) holdoff k=1: m; j=1: m; [DX,DY]=gradient(V,.4,.4) A=(DX.^2+DY.^2).^0.5; [DA,DB]=gradient(A,.4,.4); holdon quiver(k,j,DA,DB,2) holdoff 3.程序参考运行结果 电场图和电力线图分别如图5.2、图5.3所示。 图5.2电场线的图像 图5.3电力线的图像 三、实验内容 有限差分法绘制带电长圆柱体的电位和电力线图像。 四、实验步骤 1.在E盘建立新文件夹,命名为Fiele_Wave_simulation_2012_10_27; 2.打开Matlab软件,新建一个空白的M文件,保存在Fiele_Wave_simulation_2012_10_27目录下,命名为Exp_5.m、Exp_5_1.m; 3.将源程序拷贝到M文件中,保存; 4.点击运行按钮,观察程序运行结果。 五、实验工具 1.计算机1台 2.MATLAB仿真软件1套 六、实验报告要求 1.写出仿真程序源代码。 2.绘制带电长圆柱体的电位和电力线图像。 (要在图中绘制出姓名与学号)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电磁场与电磁波 电磁场 电磁波 仿真 实验