电磁场与波课设-关于多点电荷的电力线与等位面的matlab计算仿真

本文详细介绍了使用MATLAB进行电磁场与波课程设计的过程,特别是关于多点电荷系统中电力线和等位面的计算和仿真。首先展示了三极子(两个正电荷和一个负电荷)的电势和电场线的绘制,接着分别对等量同种四极子和异种四电荷的电场线与等势线进行了仿真。通过代码实现了电势计算、等势线绘制以及电场线的起点设定,从而直观展示电荷配置对电场的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

电磁场与波课设-关于多点电荷的电力线与等位面的matlab计算仿真

本文章记录了电磁场与波的课程设计-关于多点电荷的电力线与等位面的matlab计算仿真

三极子的仿真

直接进入正题三个电荷分布在正电荷(-1,0)、正电荷(1,0)、负电荷(0、1)位置处,其中正电荷电量为q,负电荷电量为2q,matlab仿真电势和电场线代码如下:

clear %清除变量
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.^2+(Y-1).^2); %第二个点电荷到场点的距离
R3=sqrt((X+1).^2+Y.^2); %第三个点电荷到场点的距离
U=1./R1-2./R2+1./R3; %计算电势
u=-4:0.5:4; %等势线的电势向量
figure %创建图形窗口
contour(X,Y,U,u,'--') %画等势线
hold on %保持图像
plot(-1,0,'o','MarkerSize',16) %画第一个点电荷
plot(0,1,'o','MarkerSize',12) %画第二个点电荷
plot(1,0,'o','MarkerSize',16) %画第三个点电荷
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1)); %用电势梯度求场强的两个分量
r0=0.1; %电场线起点半径
a=20; %设置电场线角度间隔
b=(a:a:360-a)*pi/180; %第一个点电荷电场线的始末角度和步长
x1=r0*cos(b)-1; %第一个点电荷电场线的起点横坐标
y1=r0*sin(b); %第一个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x1,y1) %画第一个点电荷电场线
d=(-180-a:a:180-a)*pi/180; %第三个点电荷电场线的始末角度和步长 
x3=r0*cos(d)+1; %第三个点电荷电场线的起点横坐标
y3=r0*sin(d); %第三个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x3,y3) %画第三点电荷电场线
axis equal tight %使坐标刻度相等
title('三极子的电场线和等势线','fontsize',16) %显示标题
xlabel('\itx/r (电势单位:kq/r=1) ','fontsize',12) %显示横坐标
ylabel('\ity/r','fontsize',12) %显示纵坐标

由于电场线从正电荷发出而终止于负电荷所以只需要从正电荷处画电场线。
代码实现后图像如下:在这里插入图片描述
三个电荷分布在正电荷(-1,0)、正电荷(1,0)、负电荷(0、0)位置处,其中正电荷电量为q,负电荷电量为2q,matlab仿真电势和电场线代码如下:

clear %清除变量
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.^2+Y.^2); %第二个点电荷到场点的距离
R3=sqrt((X+1).^2+Y.^2); %第三个点电荷到场点的距离
U=1./R1-2./R2+1./R3; %计算电势
u=-4:0.5:4; %等势线的电势向量
figure %创建图形窗口
contour(X,Y,U,u,'--') %画等势线
hold on %保持图像
plot(-1,0,'o','MarkerSize',16) %画第一个点电荷
plot(0,0,'o','MarkerSize',12) %画第二个点电荷
plot(1,0,'o','MarkerSize',16) %画第三个点电荷
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1)); %用电势梯度求场强的两个分量
r0=0.1; %电场线起点半径
a=20; %设置电场线角度间隔
b=(a:a:360-a)*pi/180; %第一个点电荷电场线的始末角度和步长
x1=r0*cos(b)-1; %第一个点电荷电场线的起点横坐标
y1=r0*sin(b); %第一个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x1,y1) %画第一个点电荷电场线
d=(-180-a:a:180-a)*pi/180; %第三个点电荷电场线的始末角度和步长 
x3=r0*cos(d)+1; %第三个点电荷电场线的起点横坐标
y3=r0*sin(d); %第三个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x3,y3) %画第三点电荷电场线
axis equal tight %使坐标刻度相等
title('三极子的电场线和等势线','fontsize',16) %显示标题
xlabel('\itx/r (电势单位:kq/r=1) ','fontsize',12) %显示横坐标
ylabel('\ity/r','fontsize',12) %显示纵坐标

在这里插入图片描述

四极子的仿真

四个等量同种正电荷位于正方形的四角其电势与电场仿真如下:

clear %清除变量
q=1; %电量比
xm=4.5; %横坐标范围
ym=4; %横坐标范围
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).^2); %第二个点电荷到场点的距离
R3=sqrt((X+1).^2+Y.^2); %第三个点电荷到场点的距离
R4=sqrt((X+1).^2+(Y+2).^2); %第四个点电荷到场点的距离
U=1./R1+1./R2+1./R3+1./R4; %计算电势
u=-4:0.5:4; %等势线的电势向量
figure %创建图形窗口
contour(X,Y,U,u,'--') %画等势线
hold on %保持图像
plot(-1,0,'o','MarkerSize',12) %画第一个点电荷
plot(-1,-2,'o','MarkerSize',16) %画第二个点电荷
plot(1,0,'o','MarkerSize',16) %画第三个点电荷
plot(1,-2,'o','MarkerSize',12) %画第四个点电荷
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1)); %用电势梯度求场强的两个分量
r0=0.1; %电场线起点半径
a=20; %设置电场线角度间隔
b=(a:a:360-a)*pi/180; %第一个点电荷电场线的始末角度和步长
x1=r0*cos(b)-1; %第一个点电荷电场线的起点横坐标
y1=r0*sin(b); %第一个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x1,y1) %画第一个点电荷电场线
c=(-180-a:a:180-a)*pi/180; %第二个点电荷电场线的始末角度和步长
x2=r0*cos(c)-1; %第二个点电荷电场线的起点横坐标
y2=r0*sin(c)-2; %第二个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x2,y2) %画第二个点电荷电场线
d=(-180-a:a:180-a)*pi/180; %第三个点电荷电场线的始末角度和步长 
x3=r0*cos(d)+1; %第三个点电荷电场线的起点横坐标
y3=r0*sin(d); %第三个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x3,y3) %画第三点电荷电场线
e=(a:a:360-a)*pi/180; %第四个点电荷电场线的始末角度和步长
x4=r0*cos(e)+1; %第四个点电荷电场线的起点横坐标
y4=r0*sin(e)-2; %第四个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x4,y4) %画第四个点电荷电场线
axis equal tight %使坐标刻度相等
title('等量同种四极子的电场线和等势线','fontsize',16) %显示标题
xlabel('\itx/r (电势单位:kq/r=1) ','fontsize',12) %显示横坐标
ylabel('\ity/r','fontsize',12) %显示纵坐标

在这里插入图片描述
异种四电荷电势与电场线分布:

clear %清除变量
q=1; %电量比
xm=4.5; %横坐标范围
ym=4; %横坐标范围
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).^2); %第二个点电荷到场点的距离
R3=sqrt((X+1).^2+Y.^2); %第三个点电荷到场点的距离
R4=sqrt((X+1).^2+(Y+2).^2); %第四个点电荷到场点的距离
U=1./R1-1./R2-1./R3+1./R4; %计算电势
u=-4:0.5:4; %等势线的电势向量
figure %创建图形窗口
contour(X,Y,U,u,'--') %画等势线
hold on %保持图像
plot(-1,0,'o','MarkerSize',12) %画第一个点电荷
plot(-1,-2,'o','MarkerSize',16) %画第二个点电荷
plot(1,0,'o','MarkerSize',16) %画第三个点电荷
plot(1,-2,'o','MarkerSize',12) %画第四个点电荷
[Ex,Ey]=gradient(-U,x(2)-x(1),y(2)-y(1)); %用电势梯度求场强的两个分量
r0=0.1; %电场线起点半径
a=20; %设置电场线角度间隔
b=(a:a:360-a)*pi/180; %第一个点电荷电场线的始末角度和步长
x1=r0*cos(b)-1; %第一个点电荷电场线的起点横坐标
y1=r0*sin(b); %第一个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x1,y1) %画第一个点电荷电场线
c=(-180-a:a:180-a)*pi/180; %第二个点电荷电场线的始末角度和步长
x2=r0*cos(c)-1; %第二个点电荷电场线的起点横坐标
y2=r0*sin(c)-2; %第二个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x2,y2) %画第二个点电荷电场线
d=(-180-a:a:180-a)*pi/180; %第三个点电荷电场线的始末角度和步长 
x3=r0*cos(d)+1; %第三个点电荷电场线的起点横坐标
y3=r0*sin(d); %第三个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x3,y3) %画第三点电荷电场线
e=(a:a:360-a)*pi/180; %第四个点电荷电场线的始末角度和步长
x4=r0*cos(e)+1; %第四个点电荷电场线的起点横坐标
y4=r0*sin(e)-2; %第四个点电荷电场线的起点纵坐标
streamline(X,Y,Ex,Ey,x4,y4) %画第四个点电荷电场线
axis equal tight %使坐标刻度相等
title('异种四极子的电场线和等势线','fontsize',16) %显示标题
xlabel('\itx/r (电势单位:kq/r=1) ','fontsize',12) %显示横坐标
ylabel('\ity/r','fontsize',12) %显示纵坐标

在这里插入图片描述
初次创作如有错误请指出。

参考文献:王明美.点电荷系电场的计算机模拟[J].广西物理 ,2012,33(3).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值