利用MATLAB仿真静电场
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题分析
对于由无限长的均匀截面电荷,可以把它分解成无数无限长线电荷的集合体。从而,我们 可以认为它产生的电场是平行平面场。所以,只需要研究其在 XOY 平面上的分布,就可以了解 其在整个空间的分布。那么,分别计算出每一条线电荷在其周围产生的电场,再进行叠加即可 得到整个区域内的电场分布。 对于无限长线电荷,其场强公式 E
题目一
1
问题描述
截面为正方形的无限长线电荷如下图所示。设电荷面密度为 2 0 ,边长 a=2。x 轴上有 A、B、C 三点,其坐标为 1.5a, 5a, 10a。所有单位均取国际单位制。
图 1 正方形无限长线电荷截面图
(1)画出电力线分布示意图; (2)采用数值方法计算A、B、C 三点处的电场强度。以A点为例,说明计算步骤; (3)对于远离正方形无限长电荷的观察点,是否有简化的计算方法,以 C 点为例,予以说 明,给出简化方法的计算结果;讨论能够采用简化计算方法的条件。
4
plot(X,Y,'r',-X,Y,'r'), end end hold off;
其中,fx与fy分别求取x和y方向电场强度积分式的值。 得到图形如下:
10 8 6 4 2 0 -2 -4 -6 -8 -10 -10
-8
-6
-4
-2
0
2
4
6
8
10
图 2 题目 1 电场线分布
我们取正方形截面的边界上的40个点作为起点,区域边界(坐标系边界)为终点。这样画 出的电场线与理论分析在一定程度上一致,在步长取值合适时可以准确的表征区域内任意点的 场强方向。但这种绘图方法并不能准确描述某点电场的强弱,例如x轴上并无电场线,但是其 场强并不是0,电场线较密的区域的场强也不一定比其他区域要大。 值得说明的是,本题的特殊情况在于无异种电荷,所以设置的终止条件在一般问题中并不 完整。 数值法求电场强度 从题目中知道,建立直角坐标系后,所求三点均位于 x 轴上。不妨令一般点 P(x0, 0),那么由之前的对称性分析可以知道,其电场强度的 y 轴分量为 0(或者也可以利用二重 积分的性质,正负相消,此处略去)。那么,容易得到所求场强 Ep 的表达式为
E p E px
S
( x0 x)dxdy ( x x)dxdy 0 2 r ( x0 x)2 y 2 S
对于此二重积分,利用 MATLAB 求其数值解, 假设求解 A 点,那么 x0=3,程序如下
5
EA=dblquad('(3-x)./((3-x).^2+y.^2)',-1,1,-1,1) EA = 1.329014306625494
所得场强结果随观测点与线电荷之间的距离增大而减小,与放射状的电场的强度变化趋势 一致。 简化计算方法 在绘制电场线时,发现当观察点距离电荷较远时,电场线的扩散形状与点电荷的电场分布 十分相似。从上一问求解区域内点的场强的过程知道,当 x0 趋于无穷时,则有
x0 x x0 ,( x0 x)2 y 2 x02
那么
E p E px
S
( x0 x)dxdy dxdy a 2 r2 x x0 0 S
也就是说,计算简化的条件是 x0 足够大,也就是所求区域内的点距离电荷足够远。这从 定性的角度比较容易理解:当距离足够远时,截面为正方形的线电荷可以等效为忽略截面形状 和大小的线电荷,因此通过化简的等式计算也足够准确。 下面,从理论上计算此种近似处理算法的精度。设误差为 E p ,那么
E p (
S
x0 x 1 )dxdy x0 ( x0 x)2 y 2
对其进行不等式变换,
E p (
S
x x 1 1 1 0 )dxdy ( )dxdy 2 x0 ( x0 x) x x0 x0 S
式子右侧的二重积分可以通过直接积分法给出结果,即
同样的方法,可以得到
EB=dblquad('(10-x)./((10-x).^2+y.^2)',-1,1,-1,1) EB = 0.399989334748447 EC=dblquad('(20-x)./((20-x).^2+y.^2)',-1,1,-1,1) EC = 0.199999666669431
dxdy ^ r dE r dxdy 2 0 r 2 0 r 2
设 P(xp,yp),由于已知
2 0 ,那么
dE
r 2 0 r
dxdy 2
( x p x, y p y) ( x p x) 2 ( y p y ) 2
xp x
dxdy
2
分布并不均匀,具体表现为电场线不严格的放射状分布,而会具有一定的不均匀特性。但在远 离电荷的区域,可以将电荷看做一无限长线电荷,电场线沿放射状分布,可以近似认为是直 线。 欲求 XOY 平面内任意点 P 的电场矢量 E,可以先求所有组成线电荷的“小截面”无限长线 电荷在 P 点产生的电场矢量 dE,再叠加即可。利用无限长线电荷的场强公式,可以知道坐标 为(x,y)的小截面对应线电荷 dxdy 在 P 点产生的场强
clear; axis([-10,10,-10,10]); %规定区域 grid; hold on; dx=1e-1;dy=1e-1; %限定步长 a=1; n=9; X0=[linspace(-a,a,n),a*ones(1,n),-linspace(-a,a,n),-a*ones(1,n)]; Y0=[-a*ones(1,n),linspace(-a,a,n),a*ones(1,n),-linspace(-a,a,n)]; %定义截面边界点 tol=1e-4; for i=1:4*n %每次for循环画出一条电场线 x0=X0(i); y0=Y0(i); X=x0; Y=y0; k=1; while (-10<x0 && x0<10 && -10<y0 && y0<10) Ex=dblquad(@fx,-1,1,-1,1,tol,[],x0,y0); Ey=dblquad(@fy,-1,1,-1,1,tol,[],x0,y0); %二重积分计算出电场强度的x和y分量 if (Ex^2+Ey^2<tol) %超出范围,中止 break; elseif (abs(Ex)>=abs(Ey)) x0=x0+sign(Ex)*dx; y0=y0+(Ey/Ex)*sign(Ex)*dx; else y0=y0+sign(Ey)*dy; x0=x0+(Ex/Ey)*sign(Ey)*dy; %通过判断场强大小,决定规定步长的增长方向,减小误差 %场强的正负代表当前场强的方向,应考虑其符号,即sign end; X(k+1)=x0;Y(k+1)=y0; %每次while循环,画出一个点,存入数组 k=k+1; end switch rem(i,6) %画出六种不同颜色的线条 case 0 plot(X,Y,'y',-X,Y,'y'), case 1 plot(X,Y,'r',-X,Y,'r'), case 2 plot(X,Y,'b',-X,Y,'b'), case 3 plot(X,Y,'k',-X,Y,'k'), case 4 plot(X,Y,'c',-X,Y,'c'), case 5 plot(X,Y,'g',-X,Y,'g'), otherwise
电磁场基础第一次仿真报告
程序于 MATLAB 7.11.0 测试通过
目录
题目一 ........................................................................ 1 问题描述 .................................................................. 2 问题分析 .................................................................. 2 问题的数值解决 ............................................................ 3 画电力线分布图 ........................................................ 4 数值法求电场强度 ...................................................... 5 简化计算方法 .......................................................... 6 实验结论 .................................................................. 7 题目二 ........................................................................ 7 问题描述 .................................................................. 7 理论分析 .................................................................. 8 算法实现: ................................................................ 9 代码编写: ............................................................ 9 绘制方法的实现原理: .................................................. 11 精度控制和编程体会.................................................... 12 实验收获与体会 ............................................................... 13
取三阶,略去三次方以后的项,带入误差公式得到,
1 1 1 E p o x 4 x0 ( x0 1 ) 2 3 0 ( ) a a 2 a
所以,误差关于 1/x0 三阶收敛于 0,也就是说,近似的简化公式关于 x0 具有三阶精度。 以 C 点为例,也就是 x0=10a=20 时,简化计算结果为 0.2,而精确数值计算结果如上问所示。 那么,其绝对误差为 3.3333*10 ,而相对误差为 1.6667*10 %。简化公式计算结果比数值计 算结果偏大。并且其实际误差的数量级比估计误差的数量级依然高两个数量级,表明在 C 点已 经可以用简化公式代替原公式进行计算。
Fra Baidu bibliotek
将 x 方向和 y 方向的电场矢量分别处理,得到
dEx
( x p x) 2 ( y p y ) 2
dxdy
dE y
yp y ( x p x) 2 ( y p y ) 2
dxdy
将两方向上的电场对于电荷截面在 XOY 平面上的平面 S(-a/2<x<a/2,-a/2<y<a/2)进行二 重积分,得到 P 点在原线电荷作用下的场强的 x 分量和 y 分量
^ r r 2 0 r 2 0 r 2
,可以知道场强与从电荷到观察
点的矢径共线。又因为所给线电荷截面的对称性,可以得到电场在 XOY 平面上的分布也是对称 的。通过定性分析,该电荷在 XOY 平面上既关于 x 轴和 y 轴对称,同时也关于四个象限的角平 分线分别对称。由于截面为正方形,并不具有严格的旋转对称性,所以电场在靠近电荷的区域
Ex
S
xp x ( x p x) ( y p y )
2 2
dxdy dxdy
E y
S
yp y ( x p x) ( y p y )
2 2
问题的数值解决
3
画电力线分布图 通过二重积分函数,求解区域一点上 Ex 和 Ey,利用其比值通过欧拉法画出电场线。程序 代码如下,
6
E p a(ln(1
当 x 趋于 0 时,由泰勒展开式
2a 1 1 1 ) ) a(ln(1 ) ) x0 1 2 x a x0 x0 a 2
1 1 1 ln(1 x) x x 2 x3 ... (1)k 1 x k ... 2 3 k