1.熟悉单个点电荷的电场分布情况;
2.学会使用 Matlab 进行数值计算,并绘出相应的图形;
1、画单个点电荷的平面电场线与等势线
其代码如下:
%单个点电荷的平面电场线与等势线
a=0.2;
k=9*10^9; %比例常数
q=1.6*10^(-19); %元电荷电量
r0=0.1; %电场线起点半径
theta=linspace(0,2*pi,13);
[x,y]=pol2cart(theta,a);
x=[x;0.05*x];
y=[y;0.05*y];
quiver(x,y,0.5*x,0.5*y)
plot(x,y)
hold on
u=k*q/r0;
u1=linspace(1,3,7)*u;
x=linspace(-0.1,0.1,100);
[X,Y]=meshgrid(x);
r1=sqrt(X.^2+Y.^2);
U=k.*q./r1;
contour(X,Y,U,u1)
title('单个点电荷的平面电场线与等
势线','fontsize',20)%显示标题
xlabel('r','fontsize',16)
%显示横坐标
ylabel('E(U)','fontsize',16)
%显示纵坐标
2、画一对点电荷的平面电场线与等势线
程序代码如下:
%同号点电荷对的电场线和等势线
clear %清除变量
q=1; %电量比(绘制不同电量比点电荷对的电场线和等势线只需改变 q 值即可)
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 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) %画第二个正电荷
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1));%用电势梯度求场强的两个分量
dth1=20; %左边电场线角度间隔
th1=(dth1:dth1:180-dth1)*pi/180; %电场线的起始角度
r0=0.1; %电场线起点半径
x1=r0*cos(th1)-1; %电场线的起点横坐标
y1=r0*sin(th1); %电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x1,y1) %画左上电场线
streamline(X,-Y,Ex,-Ey,x1,-y1) %画左下电场线
dth2=dth1/q; %右边电场线角度间隔
th2=(180-dth2:-dth2:dth2)*pi/180; %电场线的起始角度
x2=r0*cos(th2)+1; %电场线的起点横坐标
y2=r0*sin(th2); %电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x2,y2) %画右上电场线
streamline(X,-Y,Ex,-Ey,x2,-y2) %画右下电场线
axis equal tight %使坐标刻度相等
title('等量同号点电荷的电场线和等势线','fontsize',20)%显示标题
xlabel('r','fontsize',16) %显示横坐标
ylabel('E(U)','fontsize',16) %显示纵坐标
txt=['电荷比:\itQ\rm_2/\itQ\rm_1=' num2str(q)];%电荷比文本
text(-xm,-ym-0.3,txt,'fontsize',16) %显示电荷比
取q=1和q=2作出点电荷对的电场线和等势线如图 2 所示:
(1)单个电荷的立体电场分布如图 3 所示
程序代码如下:
%单个电荷立体电场分布
k=9*10^9;q=10^(-9);r0=0.1;u0=k*q/r0;
[X,Y,Z]=sphere(8);x=r0*X(:)';y=r0*Y(:)';z=r0*Z(:)';
x=[x;zeros(size(x))];y=[y;zeros(size(y))];z=[z;zeros(size(z))];
plot3(x,y,z); hold on
u=linspace(1,3,5)*u0;[X,Y,Z]= sphere;r=k*q./u;
Z(X<0&Y<0)=nan;
for i=1:5
surf(r(i)*X,r(i)*Y,r(i)*Z)
end
shading interp
title('单个电荷立体电场分布','fontsize',20)%显示标题
xlabel('x','fontsize',16) %显示横坐标
ylabel('y','fontsize',16) %显示纵坐标
zlabel('z','fontsize',16) %显示竖坐标