王礼祥
(西南民族大学预科教育学院 四川 成都 610041)
众所周知,电场是既看不见又摸不着,但它却客观实实在在地存在,是存在于电荷周围的一种特殊物质(源、场与空间密不可分,因此电场就是一种特殊的空间),它的特殊性就表现为能对电荷施力和能对电荷做功;换句话说电场既具有力的性质又有能量的性质.电场的这种特殊性决定了对电场的研究和描述也得从特殊空间的构成(电荷周围空间的特殊物质)出发,引入描述电场力性质的电场强度矢量和描述电场能量性质的电势,由点、线、面、体全面把握电场的性质和规律;以电场线与等势面(线)直观形象反映电场在空间的细微分布与相邻场变化规律;结合电场线与等势面(线)在空间的分布疏密程度,就能进一步从几何上直观形象地由定性到定量对电场的空间分布进行科学刻画,全面把握电场的电场空间特性和规律.
本文由MATLAB编程[1,2]首先绘制出均匀带电直线段激发电场的分布电场线与等势面(线),然后将其推广应用于多个均匀带电直线段及其任意组合带电直线段激发的电场的电场线与等势面(线)MATLAB编程仿真模拟[3~6],得到几种任意带电直线段及其组合的电场空间分布场图.
设均匀带电直线段长2L,线电荷密度为λ,位于x轴上并依y轴对称,其端点为(-L,0),(L,0);根据对称特性,电场在过对称轴(x轴,带电直线段)的任意平面上分布完全相同,因此三维问题可降为二维问题来处理;以对称轴为x轴建立平面直角坐标xOy,则可简易导出均匀带电直线段在xOy平面上电势表达式为
(1)
(2)
在xOy平面中用MATLAB二维等值线指令contour画相邻电势差为0.25的等势线并保持所绘制出的全部图形得带电直线段电场的电势分布图;用MATLAB中的梯度指令gradient从已知电势表达式计算电场强度分量结合流线指令streamline绘制电场线,同样保持所有绘制出的流线图得带电直线段电场的场强分图.
MATLAB源代码是:
clear
xm=4; x=linspace(-xm,xm);
ym=3; y=linspace(-ym,ym);
[X,Y]=meshgrid(x,y);
U=log((X+1+R1)./(X-1+R2));
U(U>6)=6;
u=0.5:0.25:3;
figure
C=contour(X,Y,U,u,′LineWidth′,2);
[C,h]=contour(X,Y,U,u);
axis equal tight
hold on
plot([-xm;xm],[0;0],′LineWidth′,1)
plot([-1;1],[0;0],′k′,′LineWidth′,5)
[Ex,Ey]=gradient(-U);
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1));
x0=-1:0.1:1;
y0=0.05*ones(size(x0));
h=streamline(X,Y,Ex,Ey,x0,y0);
set(h,′LineWidth′,1)
h=streamline(X,-Y,Ex,-Ey,x0,-y0);
set(h,′LineWidth′,1)
运行以上程序得图1,图中添加等势线数据标志.
图1 带电直线段电场图(有电势数值标志)
另一方法:由电势表达式(1)易得带电直线段在xOy平面上的等势线方程是
(3)
又根据电势与电场场强矢量关系E=-U,
有
(4)
而由电场线的正切向为电场强度矢量方向,可导出电场线微分方程是
(5)
解式(5)得电场线方程
(6)
取l=1,采用MATLAB隐函数绘制指令ezplot可通过循环绘图与保持图形得空间电场线图和等势线图,如图2.
MATLAB程序代码:
syms x y
for C=-3:0.2:3.0
hold on;
end
for C1=-4:0.2:4
hold on;
end
plot([-5;5],[0;0],′color′,′k′,′LineWidth′,1);
x=-1:0.01:1;y=0.*x;
plot(x,y,′k′,′linewidth′,5)
图2 均匀带电线段电场图(无电势数值)
两种方法编程绘制得到的电场图完全一致.
两三段甚至于多段均匀带电直线激发产生的电场空间分布场线图与等势线图,由场与源的叠加关系在单个带电直线段MATLAB绘制场图通用程序基础上适当修改并运行可得相应场图.
应用电势叠加原理易得坐标原点在对称中心x轴平行于两等长平行均匀带电直线段的电势表达式
(7)
U=log((X+1+R1)./(X-1+R2))+log((X+1+R3)./(X-1+R4));
U(U>10)=10;
u=0.5:0.30:10;
figure
C=contour(X,Y,U,u,′LineWidth′,1);
[C,h]=contour(X,Y,U,u);
axis equal tight
……
并注意电场线的起始位置与对称关系,运行程序得其电场线与等势面(线)图3.由图可见:电场空间分布呈现上下对称和左右对称,坐标原点处的场强一定为零.
图3 两平行等长带电直线段的电场图
类似于两平行等长带电直线段的电场图的处理方法,L型带电直线段组合的电场图也可由叠加关系简单给出,这里重点电场线绘制程序代码:
……
plot([0;2],[0;0],′k′,′LineWidth′,5)
plot([0;0],[0;2],′k′,′LineWidth′,5)
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1));
x0=0:0.2:2; y0=0.05*ones(size(x0));
h=streamline(X,Y,Ex,Ey,x0,y0);
set(h,′color′,′black′,′LineWidth′,1)
h=streamline(X,Y,Ex,Ey,x0,-y0);
set(h,′color′,′black′,′LineWidth′,1)
y1=0:0.2:2; x1=0.05*ones(size(x0));
h=streamline(X,Y,Ex,Ey,x1,y1);
set(h,′color′,′black′,′LineWidth′,1)
h=streamline(X,Y,Ex,Ey,-x1,y1)
set(h,′color′,′black′,′LineWidth′,1)
运行得L型带电组合直线段的电场线和等势线图,如图4.
图4 L型带电直线段的电场图
Y型带电直线段的电场图采用空间电势应用点电荷电势叠加法数值计算并用国际单位制电学量数值模拟.
代码:
clear
E0=8.85e-12; C0=1/4/pi/E0;
xm=3; ym=4;
x=linspace(-xm,xm,600);
y=linspace(-ym,ym,600);
[X,Y]=meshgrid(x,y);
U=0;u=0.1e-5:0.7e-5:8e-5; q=Q/299;
a=linspace(-2,2,300);c=linspace(-3,0,300);
for k=1:299
U1=C0*q./R1; U3=C0*q./R3;U=U+U1+U3;
end
figure
grid on
contour(X,Y,U,u,′:′)
hold on
m=linspace(-2,2,3000);
plot(m,abs(m),′color′,′k′,′LineWidth′,5)
a =[0 0];b =[-3 0];plot(a,b,′color′,′k′,′LineWidth′,5)
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1));
r0=0.1;
for i1=-2:0.3:2
x1=i1;y1=abs(x1)+r0;
t=streamline(X,Y,Ex,Ey,x1,y1)
set(t,′color′,′black′,′LineWidth′,1)
s=streamline(X,Y,Ex,Ey,x1,y1-2*r0)
set(s,′color′,′black′,′LineWidth′,1)
end
for i3=-3:0.3:0
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1));
x1=r0;y1=i3;
h=streamline(X,Y,Ex,Ey,x1,y1)
set(h,′color′,′black′,′LineWidth′,1)
p=streamline(X,Y,Ex,Ey,x1-2*r0,y1)
set(p,′color′,′black′,′LineWidth′,1)
end
运行以上程序得图5.Y型带电直线段的电场图理应严格左右对称,但数值计算绘制所得图形稍微偏差,原因是分离取值不对称.
图5 Y型带电直线段的电场图
参考文献
1 周群益,侯兆阳,刘让英.MATLAB可视化大学物理学.北京:清华大学出版社,2011
2 陈永春.MATLAB M语言高级编程.北京:清华大学出版社,2004
3 林国华,王永顺.运用MATLAB程序演示点电荷系的等势面.物理通报,2003(12):27~28
4 陈德智.典型静电场场图的解析解.电气电子教学学报,2012(06):102~106
5 杨能彪,唐晋生. 带电荷的细圆环的电场解的可视化.青海师范大学学报(自然科学版),2005(04):41~42
6 刘耀康. 用计算机绘制点电荷对的电场线. 大学物理,2005(08):59~63