电磁场的Matlab仿真

合集下载

电磁场的Matlab仿真.

电磁场的Matlab仿真.

Matlab 与电磁场模拟一单电荷的场分布:单电荷的外部电位计算公式:qφ=4πε0r等位线就是连接距离电荷等距离的点,在图上表示就是一圈一圈的圆,而电力线就是由点向外辐射的线。

MATLAB 程序:theta=[0:.01:2*pi]'; r=0:10;x=sin(theta*r; y=cos(theta*r; plot(x,y,'b' x=linspace(-5,5,100; for theta=[-pi/4 0 pi/4] y=x*tan(theta; hold on ; plot(x,y; end grid on单电荷的等位线和电力线分布图:二多个点电荷的电场情况:模拟一对同号点电荷的静电场设有两个同号点电荷, 其带电量分别为 +Q1和+Q2(Q1、Q2>0 距离为 2a 则两电荷在点P(x, y处产生的电势为:由电场强度可得E = -∇U, 在xOy 平面上, 电场强度的公式为:为了简单起见, 对电势U 做如下变换:。

Matlab 程序:q=1; xm=2.5; ym=2;x=linspace(-xm,xm; y=linspace(-ym,ym; [X,Y]=meshgrid(x,y;R1=sqrt((X+1.^2+Y.^2; R2=sqrt((X-1.^2+Y.^2; U=1./R1+q./R2; u=1:0.5:4; figure contour(X,Y,U,u grid onlegend(num2str(u' hold onplot([-xm;xm],[0;0] plot([0;0],[-ym;ym]plot(-1,0,'o' , 'MarkerSize' ,12 plot(1,0,'o' , 'MarkerSize' ,12 [DX,DY] = gradient(U; quiver(X,Y,-DX,-DY; surf(X,Y,U;同号电荷的静电场图像为:50403020100-22同理,将程序稍作修改,便可以得到异号电荷的静电场图像:403020100-10-20-30-4022.5三、线电荷产生的电位:设电荷均匀分布在从z=-L到z=L,通过原点的线段上,其密度为q(单位C/m,求在xy 平面上的电位分布。

应用MATLAB设计电磁场与电磁波模拟仿真实验

应用MATLAB设计电磁场与电磁波模拟仿真实验

第39卷 第9期 高 师 理 科 学 刊 Vol. 39 No.9 2019年 9月 Journal of Science of Teachers′College and University Sep. 2019文章编号:1007-9831(2019)09-0052-04应用MATLAB设计电磁场与电磁波模拟仿真实验凌滨,郭也,刘文川(东北林业大学 机电工程学院,黑龙江 哈尔滨 150040)摘要:由于电磁场与电磁波课程在电磁波传播部分授课中的理论和概念抽象,难以理解.利用MATLAB语言编程技术,针对电磁场和电磁波传播2个方面,设计2个模拟仿真实验:均匀平面波在无界空间中的传播和设定各参数实验数据获得分界面上波形的变化.2个具体仿真实验形象地再现了均匀平面电磁波在自由空间传播状态和在2个媒介边界上的变化特征,通过实验有助于学生对电磁场和电磁波基本规律的掌握.关键词:电磁场与电磁波;MATLAB;仿真实验;均匀平面波中图分类号:O441.4 文献标识码:A doi:10.3969/j.issn.1007-9831.2019.09.014Application of MATLAB to design electromagnetic field andelectromagnetic wave simulation experimentLING Bin,GUO Ye,LIU Wen-chuan(School of Mechanical and Electrical Engineering,Northeast Forestry University,Harbin 150040,China)Abstract:The theoretical and conceptual abstraction of the electromagnetic field and electromagnetic wave course in the teaching of electromagnetic wave propagation is difficult to understand.Using MATLAB language programming technology,two simulation experiments were designed for electromagnetic field and electromagnetic wave propagation,the propagation of uniform plane wave in unbounded space and setting experimental data of each parameter to obtain the waveform change on the interface.Two specific simulation experiments vividly reproduced the variation characteristics of uniform plane electromagnetic waves in free space and the boundary of two media.The experiment helps students master the basic laws of electromagnetic fields and electromagnetic waves.Key words:electromagnetic field and electromagnetic wave;MATLAB;simulation experiment;uniform plane wave电磁场与电磁波作为电子信息和通信工程的专业基础课之一,通过实验课程的环节来加深对电磁场理论知识的理解,并且可以将课堂上所学到的理论知识在实验课中进行验证,加深理解[1-2].由于目前教学过程中受到实验室的硬件环境的限制,在实验教学环节中以仿真验证为主,利用MATLAB软件对所学的理论知识进行实验,通过理论知识来指导实践.将两者相结合,可以达到提高学生发现并分析问题,利用所学知识解决问题能力的目的,进一步将所学的理论知识完善巩固,更加全面地了解电磁场与电磁波的概念[3-5].MATLAB仿真软件的数据分析和数据计算的能力十分强大,将实验数据以图形的形式进行展示,提供了一个数据可视化的平台[6].本文在电磁场与电磁波的实验教学中,利用MATLAB模拟了2种情况下的仿收稿日期:2019-04-10基金项目:东北林业大学教育教学研究课题项目(JG2016008)作者简介:凌滨(1962-),男,黑龙江哈尔滨人,副教授,硕士,从事电磁场与电磁波研究.E-mail:756595015@第9期 凌滨,等:应用MATLAB 设计电磁场与电磁波模拟仿真实验 53真实验,分别是自由空间和媒质空间中均匀平面电磁波传播波形的变化以及2种介质分界面上电磁波波形的变化.1 均匀平面波在真空和媒质中的传播仿真实验由麦克斯韦方程组可知,变化的电场和磁场相互作用下,产生的电磁波以光速在真空中传播;电磁波在理想介质中是横波,电场和磁场的方向与波的传播方向相互垂直,另外,电场方向与磁场方向也相互垂直[7].理想介质中均匀平面电磁波的波动方程可以由麦克斯韦方程组推理得到220022200200E E tH H t e m e m ì¶Ñ-=ïï¶í¶ïÑ-=ï¶îu vu v uu v uu v (1) 若电场为线极化方式,且电磁波沿x 轴方向,可以得到22000022(()E H H Ex t t x x tm m e m ¶¶¶¶¶¶=-=-=¶¶¶¶¶¶ (2) 同理220022H Hx te m ¶¶=¶¶,这2个公式都属于波动方程.电场与磁场的传播速度,也就是电磁波在真空中的传播速度,即81/310m/s c =»´.由此可见,电磁波的传播速度(在真空中)与光速等值,理论数据和实验数据一致,这为光的电磁波理论提供了一个重要的理论依据.由波动方程 220022220022E E x tH H x t e m e m ì¶¶=ïï¶¶í¶¶ï=ï¶¶î (3) 在真空中当平面电磁波的电场强度和磁场强度的频率和相位相同时,2个波动方程的瞬时表达式为m (,)cos()x x E z t e E t z w b =-r r(4)m (,)cos()x y E H z t e t z w b h=-r r (5) 其中:m x E 是电场强度振幅;w 是电磁波的圆频率;b 是相位常数;h 是本征阻抗.设计的仿真均匀平面波形波动见图 1.均匀平面波在导电媒质中具有传播特性:电媒质的典型特征是电导率 0s ¹;电磁波在导电媒质中传播时,由于传导电流J E s =的存在,同时还伴随着电磁能量的损耗;电磁波的传播特性与非导电介质中的传播特性有所不同[8-10].电场E 、磁场H 瞬时值形式m (,)e cos()z x x E z t e E t z a w b -=-v r(6) m (,)e cos()z x y cEH z t e t z a w b j h -=--r r (7)在导电媒质中衰减常数a 、相位常数b 和本征阻抗c h分别为a = (8)b = (9)54 高 师 理 科 学 刊 第39卷1arctg 2e j c c s weh h === (10)通过改变介电参数e 、磁导率m 、电导率s 和波的频率w ,电磁波在传播中是不断变化的,设计的仿真实验波形变化见图2.应用仿真实验可以形象直观地看到均匀平面波的传播特征,并通过改变介质各参数来观察电磁波的波形变化特性.2 均匀平面波的传播、反射及透射的仿真实验电磁波在入射到不同媒质分界面上时,一部分波会在分界面上进行反射,一部分波会透过分界面.入射波(已知)+反射波(未知)= 透射波(未知) (1) 0z <中,导电媒质1的参数为111s e m ,,;(2) 0z >中,导电媒质2的参数为222s e m ,,.沿x 方向极化的均匀平面波从媒质1 垂直入射到与导电媒质2 的分界平面上,电场和磁场的变化见图3. 媒质1中的入射波 1i im ()e zx E z e E g -=r r (11)1im i 1()e z y cEH z e g h -=r r (12)媒质1中的反射波1r rm ()e z x E z e E g -=r r(13) 1rm r 1()e z y cEH z e g h -=r r (14)媒质1中的合成波11im rm 1i r 12()()()e e z z y y c cE E H z H z H z e e g g h h --=+=-r r r r r H (15)111i r im rm ()()+()e e z z x x E z E z E z e E e E g g --==+r r r r r(16)其中传播常数1g 和波阻抗1c h为11211)j j s g we =- (17)11211c j s h we -==- (18) 媒质2中的透射波第9期 凌滨,等:应用MATLAB 设计电磁场与电磁波模拟仿真实验 5522tm t tm t 2()e ,()e zz x y cE E z e E H z e g g h --==r r r r (19)其中:传播常数2g 和波阻抗2c h为12222)j j s g we =- (20)12222c j s h we -=- (21) 改变各参数的数值,介质1,2为不同媒质时,设计的仿真实验波形见图4.改变各参数的数值,介质1为非导电媒质、2为导电媒质时,设计的仿真实验波形见图5.改变各参数的数值,介质1,2为相同电媒质时,设计的仿真实验波形见图6.通过该仿真实验系统操作,设定各参数实验数据,即获得分界面上波形的变化特征.对实验结果进行分析和解释,得到合理有效的结论.3 结束语本文提出了利用MATLAB 来完成电磁场与电磁波的仿真实验,通过仿真实验将理论教学有效地运用到实践教学中,能够使学生更加有效地理解所学的理论知识.电磁场与电磁波的仿真实验练习可以让学生对自己所学的知识有更深地理解,可以用更加灵活的方式掌握专业技能,并对所学专业的应用领域和前景有进一步的了解.在鼓励学生自己利用所学知识解决实际问题的同时,将书本知识与工程实践相结合,将复杂的电磁波问题简化,可以有效地提高授课效果. 参考文献:[1] 谢处方,饶克谨.电磁场与电磁波[M].北京:高等教育出版社,2006[2] 刘亮元,贺达江.电磁场与电磁波仿真实验教学[J].实验室研究与探索,2010,29(5):30-32[3] 王明军.MATLAB 在电磁场与电磁波课程教学中的应用[J].咸阳师范学院学报,2009,24(2):89-91 [4] 郭瑜,虞致国.电磁场与电磁波仿真实验教学研究[J].无锡职业技术学院学报,2018,17(2):28-31[5] 杨明珊,谭凤杰,李志中,等.电磁场与电磁波实验仿真系统[J].郑州大学学报:理学版, 2013,45(2):64-67 [6] 乔世坤.Matlab 在通信课程中的仿真应用[M].哈尔滨:东北林业大学出版社,2017 [7] 马冰然.电磁场与微波技术[M].广州:华南理工大学出版社,1999[8] William Hayt,John Buck.Engineering Electromagnetics[M].Beijing:Tsinghua University Press,2011[9] 万棣,范懿.电磁场与电磁波虚拟仿真系统的设计与开发[J].电气电子教学,2017,39(4):141-144[10]邓红涛,刘巧,田敏.利用仿真软件优化电磁场与电磁波教学[J].电脑知识与技术,2014,10(4):792-794。

华科电磁场matlab仿真作业

华科电磁场matlab仿真作业

电磁场作业电气1202 XXX U201200000一.作业一1.程序框图2.程序clear;col = 61; %第一行点数row = col; %行数span = 0.3/(col-1); %步长End = ones(1,col)*col; %每一行的终止点Start = ones(1,col); %每一行的起始点A = zeros(row,col); %A矩正存储每点电势for i = (col-1)/3+1:(col-1)*2/3+1for j = (col-1)/3+1:(col-1)*2/3+1A(i,j) =100;endend %初始化电势完毕temp = A;for n= 1:500 %迭代次数for i = 2:row-1if ( i<((col-1)/3+1)||i>( (col-1)*2/3+1 ) )for j = Start(i)+1:End(i)-1temp(i,j)=(A(i-1,j) +A(i+1,j) +A(i,j-1) +A(i,j+1))/4;endelsefor j = 2:(col-1)/3temp(i,j)=(A(i-1,j) +A(i+1,j) +A(i,j-1) +A(i,j+1))/4;endfor j = 2*(col-1)/3+2:col-1temp(i,j)=(A(i-1,j) +A(i+1,j) +A(i,j-1) +A(i,j+1))/4;endendA = temp;endendX = row:-1:1;Y = col:-1:1;[X,Y] = meshgrid(X,Y);figure(1);surf(rot90(A,2));figure(2);contour(rot90(A,2));hold on;[Gx,Gy] = gradient(A,1,1);quiver(Gx,Gy);3.计算机绘图二.作业二1.程序框图2.程序100V0Vclear;col=101;row=101;A=zeros(row,col);for i=11:101A(i,11)=100;endfor j=11:101A(11,j)=100;endfor i=2:10A(i,col)=10*i-10;endfor j=2:10A(row,j)=10*j-10;endA1=A;x=1;t=0;while x>0.1x=0;for i=2:100for j=2:100if (i>1&&i<11)||(j>1&&j<11)A1(i,j)=(A(i,j-1)+A(i,j+1)+A(i-1,j)+A(i+1,j))/4;t=abs(A(i,j)-A1(i,j));if (t>x)x=t;endendendendA=A1;endX = 1:1:row;Y = 1:1:col;[X,Y] = meshgrid(X,Y);figure(1);surf(rot90(A,4));figure(2);contour(rot90(A,4));hold on;[Gx,Gy] = gradient(A,1,1);quiver(Gx,Gy);3.计算机绘图三.作业三1.程序框图2.程序clear;N = 41; %第一行点数h = 0.2/(N-1); %步长row = (N+1)/2; %行数E = N:-1:N-row+1;%每一行的终止点S = 1:1:N-row+1;%每一行的起始点A = zeros(row,N); %A矩阵存储每点电势A(1,:)=ones(1,E(1))*100; %初始化电势for i = 1:rowA(i,S(i)) = 0;A(i,E(i)) = 0;end %初始化电势完毕temp = A;for n= 1:600 %迭代次数for i = 2:rowfor j = S(i):E(i)if j ==S(i) || j==E(i)temp(i,j)=0;elsetemp(i,j)=(3*A(i-1,j) +3*A(i+1,j) +A(i,j-1) +A(i,j+1))/8;endendendA = temp;endX = row:-1:1;Y = N:-1:1;[X,Y] = meshgrid(X,Y);figure(1);surf(rot90(A,2));figure(2);contour(rot90(A,2));3.计算机绘图。

电磁波传播的matlab仿真教学实践

电磁波传播的matlab仿真教学实践

电磁波传播的matlab仿真教学实践
Matlab仿真实践教学——电磁波传播
Matlab是用于科学计算和可视化仿真的一款专业软件,其电磁波传播
仿真功能可能会广泛应用到电波传播理论的教学实践中,因此本文将
通过一个实例来展示如何使用Matlab进行电磁波传播的仿真。

一、准备工作
(一)安装Matlab软件,安装Matlab。

可以从Mathworks网站下载安
装Matlab软件。

(二)熟悉Matlab的基本操作,包括如何使用Matlab编辑器、命令行、代码窗口以及如何可视化。

二、仿真过程
(一)定义数据,定义包括电磁波方向、频率、和速度在内的各种参
数作为条件输入到Matlab中进行仿真;
(二)设置初始条件,调整环境条件(空气温度、大气压力等),并
考虑物理地形的影响。

(三)开始仿真,通过Matlab的仿真功能可以获得电磁波的时频响应
曲线,以及不同方向上的信号发射特性等;
(四)完成仿真,观察电磁波在空间传播、穿过物体和大气层时以及解读不同场景下实现仿真信号传播特性,得出最终仿真结果。

三、总结
通过本文展示的Matlab实现电磁波传播仿真的实例,可以更好地理解电磁波传播理论,利用Matlab进行仿真实验教学,进一步提高教学效果,加深学生对相关理论的理解。

带电粒子在电磁场中运动的MATLAB仿真 (1)

带电粒子在电磁场中运动的MATLAB仿真 (1)

目录第一章概述 (1)第二章基本原理 (2)2.1 带电粒子在电磁场中运动的原理 (2)2.2质量较大的带电微粒在复合场中的运动 (2)第三章算法及仿真结果 (4)3.1具体算法 (4)3.2结果 (5)第四章结论 (7)参考文献 (8)附录 (9)第一章概述MATLAB(矩阵实验室)是MATrix LABoratory的缩写,是一款由美国The MathWorks公司出品的商业数学软件。

MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。

除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++和FORTRAN)编写的程序。

MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB具有其他高级语言难以比拟的一些优点,如编写简单、编程效率高、易学易懂等,因此MATLAB 语言也被通俗地称为演算纸式科学算法语言。

MATLAB是当今最优秀的科技应用软件之一,它以强大的科学计算与可视化功能、简单易用、开放式可扩展环境,特别是所附带的30 多种面向不同领域的工具箱支持,使得它在许多科学领域中成为计算机辅助设计和分析、算法研究和应用开发的基本工具和首选平台。

而其强大的图像绘制功能也使得它广泛用于各种数据背后现象的模拟仿真。

计算机数值模拟的研究方法已成为继实验研究和理论分析之外的第三种研究手段,在基础物理学习中适当引入计算机数值方法,有助于将一些高深的物理知识深入浅出、生动形象地学习。

随着计算机的普及,MATLAB在基础物理中的应用日益广泛。

在控制、通信、信号处理及科学计算等领域中,MATLAB 都被广泛地应用,已经被认为能够有效提高工作效率、改善设计手段的工具软件。

第二章 基本原理2.1带电粒子在电磁场中运动的原理带电粒子在磁场中运动时会受到洛伦兹力的作用,且随着初始运动方向和磁场分布的不同,其运动轨迹会发生不同的变化。

matlab模拟的电磁学数值技术代码

matlab模拟的电磁学数值技术代码

一、概述电磁学作为物理学的一个重要分支,其研究对象涉及电场、磁场和电磁波等内容。

在现代科学技术的发展中,电磁学的应用范围愈发广泛,然而电磁学问题的解决往往需要大量的数值计算和模拟。

其中,利用Matlab等软件进行电磁学数值模拟已经成为一种常见的技术手段。

本文将从电磁学数值模拟的原理、技术和代码编写等方面展开探讨。

二、电磁学数值模拟的原理电磁学数值模拟是利用计算机对电磁学问题进行模拟和计算。

其原理是基于Maxwell方程组进行离散化处理,将连续性的数学模型转化为适合计算机处理的离散模型,然后通过数值算法求解相关方程,得到电磁场的分布情况。

常见的数值算法包括有限差分法、有限元法、边界元法等。

这些数值算法的选择和设计对于模拟结果的精确性和计算效率具有重要影响。

三、电磁学数值模拟的技术1. 有限差分法有限差分法是一种常见的电磁学数值模拟技术,其基本思想是将空间连续的电磁场分布离散化为有限个点,并通过有限差分近似求解Maxwell方程组。

有限差分法主要包括差分格式的选取、边界条件的处理和数值稳定性的分析等内容。

在Matlab中,可以通过编写相应的有限差分法程序来实现电磁场模拟。

2. 有限元法有限元法是另一种常用的数值模拟技术,其基本思想是将连续的电磁场分布离散化为有限个基函数的线性组合,并通过有限元插值和数值积分求解Maxwell方程组。

有限元法适用于比较复杂的几何结构和边界条件,能够精确地描述电磁场在非均匀介质中的分布情况。

3. 边界元法边界元法是一种基于格林函数的数值模拟技术,其基本思想是将电磁问题转化为边界积分方程,并利用格林函数求解边界上的电磁场分布。

边界元法对于处理边界条件和界面问题有独特优势,能够有效地模拟电磁场在复杂边界下的分布情况。

四、Matlab模拟的电磁学数值技术代码编写1. 有限差分法的Matlab编写在使用Matlab进行有限差分法的电磁学数值模拟时,首先需要确定问题的空间离散化和时间离散化等参数,然后编写相应的差分格式和边界条件处理程序。

电磁场中matlab仿真实现工具箱

电磁场中matlab仿真实现工具箱

实验六:使用偏微分方程工具箱对电磁场的仿真一、实验目的与要求1.掌握微分方程工具箱的使用方法;2.掌握使用偏微分方程工具箱分析电磁场。

二、实验类型设计三、实验原理及说明偏微分方程的工具箱(PDE toolbox)是求解二维偏微分方程的工具,MA TLAB专门设计了一个应用偏微分方程的工具箱的演示程序以帮助使用者快速地了解偏微分方程的工具箱的基本功能。

操作方法是在MA TLAB的指令窗口键入pdedemos,打开Command Line Demos窗口,如图所示。

只要单击任意键就会使程序继续运行,直至程序运行结束。

单击信息提示按钮(Info)是有关演示窗口的帮助说明信息。

8个偏微分方程的演示程序分别是泊松方程、亥姆霍兹方程、最小表面问题、区域分解方法、热传导方程、波动方程、椭圆型方程自适应解法和泊松方程快速解法。

(一)偏微分方程的工具箱的基本功能偏微分方程的工具箱可以求解一般常见的二维的偏微分方程,其基本功能是指它能解的偏微分方程的类型和边值条件。

用户可以不必学习编程方法仅仅在图形用户界面窗口进行操作,就能得到偏微分方程的数值解。

1.工具箱可解方程的类型定义在二维有界区域Ω上的下列形式的偏微分方程,可以用偏微分方程工具箱求解:椭圆型()f au u c =+∇∙∇- 抛物型()f au u c tu d =+∇∙∇-∂∂ 双曲型()f au u c tu d =+∇∙∇-∂∂22 本征值方程()du au u c λ=+∇∙∇-式中,u 是偏微分方程的解;c 、a 、d 、f 是标量复函数形式的系数,在抛物型和双曲型方程中,它们也可以是t 的函数,λ是待求的本征值。

当c 、a 、f 是u 的函数时,称之为非线性方程,形式为()()()()u f u u a u u c =+∇∙∇-也可以用偏微分方程工具箱求解。

2.工具箱可解方程的边值条件解偏微分方程需要的边值条件一般为下面两种之一:狄里赫利(Diriclet)边值条件 hu=r广义诺曼(Generalized Neumann)边值条件 ()g qu u c n =+∇∙式中,n为边界外法向单位向量;h 、q 、r 、g 是在边界上定义的复函数。

MATLAB实验电磁实验仿真

MATLAB实验电磁实验仿真

实验四 电磁实验仿真 —点电荷电场分布的模拟一. 实验目的电磁场是一种看不见摸不着但又客观存在的物质,通过使用Matlab 仿真电磁场的空间分布可以帮助我们建立场的图景,加深对电磁理论的理解和掌握。

按照矢量分析,一个矢量场的空间分布可由其矢量线(也称力线)来形象表示。

点电荷的电场就是一个矢量场,模拟其电力线的分布可以得到电场的空间分布。

通过本次上机实验希望达到以下目的:1. 学会使用MATLAB 绘制电磁场力线图和矢量图的方法;2. 熟悉二维绘图函数contour 、quiver 的使用方法。

二. 实验原理根据库仑定律,真空中的一个点电荷q 激发的电场3r E q r=v v (高斯制) (1) 其中r 是观察点相对电荷的位置矢量。

考虑相距为d 的两个点电荷q 1和q 2,以它们的中点建立坐标(如图),根据叠加原理,q 1和q 2激发的电场为:12123312r r E q q r r =+v v v (2) 由于对称性,所有包含电荷的平面上,电场的分布一样,所以只需要考虑xy 平面上的电场分布,故121233331212(/2)(/2)ˆˆˆˆ()[]x y E E q x q x q y d q y d E j j r r r r i i -+==++++v (3)其中12 r r ==。

根据电动力学知识(参见谢处方,《电磁场与电磁波》,1.4.1节),电场矢量线(或电力线)满足微分方程: yx E dydx E = (4) 代入(3)式解得电力线满足的方程 1212(/2)(/2)q y d q y d r r C -++= (5) 其中C 是积分常数。

每一个C 值对应一根电力线。

电场的分布也可以由电势U 的梯度(gradient ,为矢量)的负值计算,根据电磁学知识,易知两点电荷q 1和q 2的电势1212q q U r r =+(6)那么电场为 E gradU U =-=-∇v (7)或者 ()(),x y x y E U E U =-∇=-∇ (8)在Matlab 中,提供了计算梯度的函数gradient()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Matlab 与电磁场模拟
一 单电荷的场分布:
单电荷的外部电位计算公式:
等位线就是连接距离电荷等距离的点,在图上表示就是一圈一圈的圆,而电力线就是由点向外辐射的线。

MATLAB 程序:
theta=[0:.01:2*pi]'; r=0:10; x=sin(theta)*r; y=cos(theta)*r; plot(x,y,'b') x=linspace(-5,5,100); for theta=[-pi/4 0 pi/4] y=x*tan(theta); hold on ; plot(x,y);
end grid on
单电荷的等位线和电力线分布图:
r q
04πεφ=
二多个点电荷的电场情况:
模拟一对同号点电荷的静电场
设有两个同号点电荷,其带电量分别为+Q1和+Q2(Q1、Q2>0 )距离为2a则两电荷在点P(x, y)处产生的电势为:
由电场强度可得E = -∇U,在xOy平面上,电场强度的公式为:
为了简单起见,对电势U做如下变换:。

Matlab程序:
q=1;
xm=;
ym=2;
x=linspace(-xm,xm);
y=linspace(-ym,ym);
[X,Y]=meshgrid(x,y);
R1=sqrt((X+1).^2+Y.^2);
R2=sqrt((X-1).^2+Y.^2);
U=1./R1+q./R2;
u=1::4;
figure
contour(X,Y,U,u)
grid on
legend(num2str(u'))
hold on
plot([-xm;xm],[0;0])
plot([0;0],[-ym;ym])
plot(-1,0,'o','MarkerSize',12) plot(1,0,'o','MarkerSize',12) [DX,DY] = gradient(U);
quiver(X,Y,-DX,-DY);
surf(X,Y,U);
同号电荷的静电场图像为:
-2
010
20
30
40
50
同理,将程序稍作修改,便可以得到异号电荷的静电场图像:
-2.5
-40-30-20-10010203040
三、线电荷产生的电位:
设电荷均匀分布在从z=-L 到z=L,通过原点的线段上,其密度为q(单位C/m),求在xy 平面上的电位分布。

点电荷产生的电位可表示为
是一个标量。

其中r 为电荷到测量点的距
dL 。

每段上电荷为q*dL,看作集中在中点的点电荷,它产生的电位为 然后对全部电荷求和即可。

把xy 平面分成网格,因为xy 平面上的电位仅取决于离原点的垂直距离R ,所以可以省略一维,只取R 为自变量。

把R 从0到10米分成Nr+1点,对每一点计算其电位。

Matlab 程序: clear all;
L=input(‘线电荷长度L = ’); N=input(‘分段数N = ’); Nr=input(‘分段数Nr = ’); q=input(‘电荷密度q= ’);
E0=; 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);
for k=1:Nr+1
04
Rk=sqrt(Lm.^2+R(k)^2);
Vk=C0*dL*q./Rk;
V(k)=sum(Vk);
end
[max(V),min(V)]
plot(R,V),grid
线电荷产生的静电位分布图:
四计算平面上N个电荷之间的库伦引力1 建模:
由库仑定律:
先输入电荷的数目,各电荷的坐标及电荷量,再选一个电荷,求其它电荷对它的作用力,叠加求合力。

再选下一个电荷,依次类推。

Matlab程序:
clear all;
N = input('ÊäÈëµçºÉÊýÄ¿N=:');
for ic = 1:N
fprintf('----/n¸öµçºÉ#%g\n',ic);
rc = input('ÊäÈëµçºÉλÖÃ[x,y]£¨Ã×£©:');
x(ic) = rc(1);
y(ic) = rc(2);
q(ic) = input('ÊäÈëµçºÉÁ¿£¨¿âÂØ£©£º');
end
E0 = ;
C0 = 1/(4*pi*E0);
for ic = 1:N
Fx = ;Fy = ;
for jc = 1:N
if(ic ~= jc)
xij = x(ic)-x(jc);yij = y(ic)-y(jc);
Rij = sqrt(xij^2+yij^2);
Fx=Fx+C0*q(ic)*q(jc)*xij/Rij^3;
Fy=Fy+C0*q(ic)*q(jc)*yij/Rij^3;
end
end
fprintf('ÆäËüµçºÉ×÷ÓÃÔÚµçºÉ#%gÉϵĺÏÁ¦Îª£º\n',ic);
fprintf('x-·ÖÁ¿:%e\n',Fx);
fprintf('y-·ÖÁ¿:%e\n',Fy);
end
五有限差分法处理电磁场问题Matlab程序:
m=40
for k=1:m
for j=1:m
if k==1
V(j,k)=1;
elseif((j==1)|(j==m)|(k==m))
V(j,k)=0;
else
V(j,k)=;
end
end
end
cha=;
delta=0;
n=0;
while(1)
n=n+1;
for k=2:m-1
for j=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));
if d>delta
delta=d;
end
V(j,k)=Vnew(j,k);
end
end
if delta>cha
break; end
if(n>100)
break; end
delta=0.; end
结果为:。

相关文档
最新文档