利用MATLAB模拟点电荷的电场分布

一、实验目的:

1.熟悉点电荷的电场分布情况;

2.学会使用Matlab绘图;

二、实验内容:

1.根据库伦定律,利用Matlab强大的绘图功能画出单个点电荷的电场分布情况,包括电力线和等势面。

2.根据库伦定律,利用Matlab强大的绘图功能画出一对点电荷的电场分布情况,包括电力线的分布和等势面。

3.实验内容1中,可以在正电荷和负电荷中任选一组画出其电场分布,实验内容2中,可以在一对正电荷,一对负电荷和一正一负一对电荷中选择一组画出其电场分布情况。

三、实验步骤:

一.对于单个点荷的电力线和等势线:

真空中点电荷的场强大小是:

img (式1)

其中k=img为静电力恒量,q为点电荷的电量,r为点电荷到场点img(x,y)的距离。电场呈球对称分布,本实验中,取点电荷为正电荷,电力线是以电荷为起点的射线簇。以无穷远处为零势点,点电荷的电势为:

img (式2)

当U取常数时,此式就是等势面方程。等势面是以电荷中心,以r为半径的球面。

(1) 平面电力线的画法:

在平面上,电力线是等角平分布的射线簇,取射线的半径为img=0.12。其程序如下:

r0=0.12; % 射线的半径

th=linspace(0,2*pi,13); % 电力线的角度

[x,y]=pol2cart(th,r0); % 将极坐标转化为直角坐标

x=[x;0.1*x]; % 插入x的起始坐标

y=[y;0.1*y]; % 插入y的起始坐标

plot(x,y,‘b’) % 用蓝色画出所有电力线

grid on % 加网格

Hold on % 保持图像

plot(0,0,‘o’,‘MarkerSize’,12) % 画电荷

xlabel(‘x’,‘fontsize’,16) % 用16号字体标出X轴

ylabel(‘y’,‘fontsize’,16) % 用16号字体标出Y轴

title(‘正电荷的电力线’,‘fontsize’,20) % 添加标题

img

图1 正电荷的电力线

(2)平面等势面的画法

在过电荷的截面上,等势线就是以电荷为中心的圆簇。此实验中,由于r0=0.12,k=9x109,考虑到电势的大小,取q=1x10-9C,且最大的等势线的半径应该比射线的半径小一点,取r0=0.1,其电势为img。等势线共取7条,且最大的电势为最小电势的3倍。在电场线的基础上画出点电荷的等势线图,可以省略一些基本参数的设置,其图如图2所示,其程序如下:

k=9e9; % 设定k值

q=1e-9; % 设定电荷电量

r0=0.1; % 设定最大等势线的半径

u0=k*q/r0; % 算出最小的电势

u=linspace(1,3,7)*u0; % 求出各条等势线的电势大小

x=linspace(-r0,r0,100); % 将X坐标分成100等份

[X,Y]=meshgrid(x); % 在直角坐标中形成网格坐标

r=sqrt(X.2+Y.2); % 各个网格点到电荷点的距离

U=k*q./r; % 各点的电势

contour(X,Y,U,u) % 画出点电荷的电势面

title(‘正电荷的电场线和等势线’,‘fontsize’,20) %显示标题

img
图2 正电荷的电场线和等势线

(3) 点电荷的立体电力线

点电荷的立体等势线呈球形发射状的射线簇,因此要先形成三维单位球面坐标,参数还是用前面画平面图的参数。因此其程序如下:

r0=0.12 % 重新设定电力线的半径

[X,Y,Z]=sphere(8); % 形成三维单位球面坐标,绕Z轴一周有8条电力线

x=r0*X(😃'; % 将X化成行向量

y=r0*Y(😃'; % 将Y化成行向量

z=r0*Z(😃'; % 将Z化成行向量

x=[x;zeros(size(x))]; % 对x坐标插入原点

y=[y;zeros(size(y))]; % 对y坐标插入原点

z=[z;zeros(size(z))]; % 对z坐标插入原点

plot3(x,y,z,‘b’) % 画出所有电力线

Hold on % 保持图像

xlabel(‘x’,‘fontsize’,16) % 用16号字体标出X轴

ylabel(‘y’,‘fontsize’,16) % 用16号字体标出Y轴

zlabel(‘z’,‘fontsize’,16) % 用16号字体标出Z轴

title(‘正电荷电场线的三维图形’,‘fontsize’,20) % 添加标题

其图形如下:

img
图3 正电荷电场线的三维图形

(4) 点电荷的等势面

画等势面时同样要先形成球面,不同的等势面对应不同的半径,而坐标所形成的一个一维的行向量,而三维单位球面的每一维都是21*21的网格矩阵,矩阵的维度不一样,不能直接相乘。因此为减少计算量,只画5条等势面。其程序如下:

u=linspace(1,3,5)*u0; % 计算各面的电势

r=k*q./u; % 计算各等势面的半径

[X,Y,Z]=sphere; % 形成三维的单位球

Z(X<0&Y<0)=nan; % 把球面的四分之一设为非数,便于观察

surf(r(1)*X,r(1)*Y,r(1)*Z); % 画最外面的等势面

hold on; % 保持图形

surf(r(2)*X,r(2)*Y,r(2)*Z);

hold on;

surf(r(3)*X,r(3)*Y,r(3)*Z);

hold on;

surf(r(4)*X,r(4)*Y,r(4)*Z);

hold on;

surf(r(5)*X,r(5)*Y,r(5)*Z);

shading interp % 将各球面的颜色设置成浓淡变化的

xlabel(‘x’,‘fontsize’,16) % 标记X坐标轴

ylabel(‘y’,‘fontsize’,16) % 标记X坐标轴

zlabel(‘z’,‘fontsize’,16) % 标记X坐标轴

title(‘正电荷等势面的三维图形’,‘fontsize’,20) % 添加标题
img

图四 正电荷等势面的三维图形

二.对于一对点电荷的电力线与等势线

到于两个点电荷的电场分布,比一个点电荷的电场分布要复杂得多,电场线的切线为该点电场强度E的方向。因此画电场线需要先计算出当前点的电场强度E方向,而E又是一个矢量,没有像电势U那样可以直接进行标量计算。因此对于多个点电荷的电场来说,先画出其等势线会更方便一些。

(1) 一对点电荷的平面等势线

对于两个点电荷,不妨取,正在这里插入图片描述
电荷在x轴的正方向,负电荷在x轴的负方向,它们到原点的距离定为a=0.02;假设平面的范围为img=0.05,在这里插入图片描述
=0.04。则其程序如下:

q1=1e-9; % 设置正电荷电量

q2=-1e-9; % 设置负电荷电量

a=0.02; % 设置电荷到原点的距离

xx0=0.05; % 设置X轴的范围

yy0=0.04; % 设置Y轴的范围

x=linspace(-xx0,xx0,20); % 将X轴进行20等分

y=linspace(-yy0,yy0,50); % 将Y轴进行50等分

[X,Y]=meshgrid(x); % 形成网格坐标

r1=sqrt((X-a).2+Y.2); % 各点到正电荷的距离

r2=sqrt((X+a).2+Y.2); % 各点到负电荷的距离

U=kq1./r1+kq2./r2; % 各点的电势

u0=500; % 设定最大电势的大小

u=linspace(u0,-u0,11); % 计算各等势线的电势

contour(X,Y,U,u,‘k-’); % 画出所有的等势线

Grid on % 形成网格

Hold on % 保持图形

plot(0,0,‘o’,‘MarkerSize’,12) % 画电荷

xlabel(‘x’,‘fontsize’,16) % 用16号字体标出X轴

ylabel(‘y’,‘fontsize’,16) % 用16号字体标出Y轴

title(‘一对相异电荷的等势线图’,‘fontsize’,20) % 添加标题

img

图五 一对相异电荷的等势线图

(2) 一对点电荷的平面电场线

各点的电场强度方向代替电力线。根据电势的梯度可以求出各点的场强的两个分量再在此方向上标上箭头。其程序如下所示:

[Ex,Ey]=gradient(-U); % 各点的场强的两个分量

E=sqrt(Ex.2+Ey.2); % 各点的合场强

Ex=Ex./E; % 为使箭头等长,将场强归一化

Ey=Ey./E;

quiver(X,Y,Ex,Ey); % 标出各网点的电场强度方向

title(‘一对相异电荷的等势线图和电场线图’,‘fontsize’,20); 标出标题

其图如图六所示:img

图六 一对相异电荷的等势线图和电场线图

四、 实验总结:

1、以上方法同样适合不同极性和大小的电荷的组合,只需要按要求设置不同的电荷电量即可。

2、以Matlab强大的数值计算和绘图功能,将抽象的电场形象化,大大增加了我们对电场的感性认识,为今后的学习打了牢固的基础。

3、由于对Matlab 的不熟悉,对多点电荷的三维电场分布情况,无法将具体的思路转化成实际的程序语言,所以无法绘出它的三维图形。今后一定要多学习Matlab这方面的知识。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/726049.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小型园区配置示例——华为

小型园区配置示例 组网图形 图1 小型园区组网图 组网需求数据规划配置思路操作步骤业务验证 组网需求 某企业划分为A、B两个部门&#xff0c;企业中的用户可以相互访问&#xff0c;并且企业中的用户可访问Internet。 如图1所示&#xff0c;在小型园区中&#xff0c;S2700…

idea2023版使用废弃类没有删除线处理方法

idea2023版使用废弃类没有删除线处理方法 新版Idea使用废弃类时,默认是黄色警告处理方法1. 打开file -> setting2. 编辑(Editor) -> 检查(Inspections) -> 搜索Deprecated API usage 新版Idea使用废弃类时,默认是黄色警告 处理方法 1. 打开file -> setting 2. 编…

单点登录是怎么工作的?

本文转自 公众号 ByteByteGo&#xff0c;如有侵权&#xff0c;请联系&#xff0c;立即删除 单点登录是怎么工作的&#xff1f; 今天来聊聊单点登录&#xff08;Single Sign On&#xff09;。 01 单点登录的主要参与者 用户 - 申请访问应用程序的个人身份供应商&#xff08;I…

浪潮服务器使用ARCCONF查看RAID配置信息

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、获取ARCCONF二、使用步骤1.Windows Server 20221.查看RAID控制器2.查询控制器属性3.查询虚拟磁盘属性4.查询物理硬盘属性 2.Ubuntu-22.043.CentOS7 三、配置…

matlab读取hdf5格式的全球火灾排放数据库Global Fire Emissions Database(GFED)数据

1.引言 火灾是大气中痕量气体和气溶胶的重要来源&#xff0c;并且是全球尺度上最重要的干扰因素。此外&#xff0c;森林砍伐和热带泥炭地火灾以及火灾频率增加的地区&#xff0c;都会增加大气中二氧化碳的积累。烧毁面积提供了生物质燃烧事件期间受火灾影响土地的估算&#xff…

300分钟吃透分布式缓存-20讲:Redis如何处理文件事件和时间事件?

Redis 事件驱动模型 事件驱动模型 Redis 是一个事件驱动程序&#xff0c;但和 Memcached 不同的是&#xff0c;Redis 并没有采用 libevent 或 libev 这些开源库&#xff0c;而是直接开发了一个新的事件循环组件。Redis 作者给出的理由是&#xff0c;尽量减少外部依赖&#xff…

Flink:Temporal Table 的两种实现方式 Temporal Table DDL 和 Temporal Table Function

博主历时三年精心创作的《大数据平台架构与原型实现&#xff1a;数据中台建设实战》一书现已由知名IT图书品牌电子工业出版社博文视点出版发行&#xff0c;点击《重磅推荐&#xff1a;建大数据平台太难了&#xff01;给我发个工程原型吧&#xff01;》了解图书详情&#xff0c;…

WordPress建站入门教程:phpMyAdmin4.8.5出现Fatal error: Unparenthesized错误怎么办?

我们在本地电脑使用小皮面板phpstudy安装phpMyAdmin4.8.5成功后&#xff0c;但是点击【管理】功能打开时却出现如下错误&#xff1a; Fatal error: Unparenthesized a ? b : c ? d : e is not supported. Use either (a ? b : c) ? d : e or a ? b : (c ? d : e) in D:\…

基于springboot的精准扶贫管理系统论文

精准扶贫管理系统 摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了精准扶贫管理系统的开发全过程。通过分析精准扶贫管理系统管理的不足&#xff0c;创建了一个计算机管理精准扶贫管理系统的方案。文章介绍了精…

深度学习的应用实例:从自然语言处理到计算机视觉的突破

深度学习在各个领域中展现出了强大的应用潜力&#xff0c;特别是在自然语言处理、计算机视觉、语音识别和机器翻译等方向&#xff0c;其取得的成果令人瞩目。 一、自然语言处理&#xff1a;深度学习的革命性影响 自然语言处理&#xff08;NLP&#xff09;一直是人工智能领域的…

【新书推荐】16.2 显示中断

本节内容&#xff1a;屏幕显示的实现——显示I/O中断处理程序。显示器通过显示适配卡与系统相连&#xff0c;显示适配卡是显示输出的接口。早期显示适配卡是CGA和EGA等&#xff0c;目前常见的适配卡是VGA、TVGA、DVI、DP、Mini HDMI和Micro HDMI接口等。它们都支持两类显示方式…

简洁实用的wordpress外贸网站模板

坚果蜜饯wordpress跨境电商模板 木瓜干、菠萝干、夏威夷果、芒果干、椰片、巴旦木等wordpress跨境电商模板。 https://www.jianzhanpress.com/?p3944 珠宝手饰wordpress外贸网站模板 金银手饰、珍珠手饰、翡翠手饰、钻石手饰、玉石珠宝手饰wordpress外贸网站模板。 https:…

个人商城系统开源(登录)

原文地址&#xff1a;个人商城系统开源&#xff08;登录&#xff09; - Pleasure的博客 下面是正文内容&#xff1a; 前言 由于近期实在没有什么话题可写和一些有趣的项目教程可以分享。所以我只能决定将我自己亲手编写的一个迷你迷你商城系统进行开源。 也就是放在我博客右边…

小程序Taro框架 自定义底部Tabbar,处理自定义Tab栏切换卡顿、闪烁

最终效果 最近在用Taro框架开发一个小程序&#xff0c;有一个自定义底部Tabbar的需求&#xff0c;最终效果如下 起步 这页是我第一次接触自定义小程序底部Tabbar&#xff0c;所有第一选择必然是相看官方文档&#xff1a;微信小程序自定义 Tabbar | Taro 文档 &#xff08;如果…

上海亚商投顾:沪指震荡微涨 AI手机、军工板块集体走强

上海亚商投顾前言&#xff1a;无惧大盘涨跌&#xff0c;解密龙虎榜资金&#xff0c;跟踪一线游资和机构资金动向&#xff0c;识别短期热点和强势个股。 一.市场情绪 沪指昨日低开后震荡回升&#xff0c;黄白二线分化明显&#xff0c;银行等权重板块走势较强。AI手机概念股持续…

欧科云链:角力Web3.0,香港如何为合规设线?

在香港拥抱Web3.0的过程中,以欧科云链为代表的合规科技企业将凸显更大重要性。 ——据香港商报网报道 据香港明报、商报等媒体报道&#xff0c;港区全国政协兼香港选委界立法会议员吴杰庄在日前召开的全国两会上提出在大湾区建设国际中小企业创新Web3融资平台等提案&#xff0…

Android SDK2 (实操三个小目标)

书接上回&#xff1a;Android SDK 1&#xff08;概览&#xff09;-CSDN博客 今天讲讲三个实际练手内容&#xff0c;用的是瑞星微的sdk。 1 实操编译Android.bp 首先还是感叹下&#xff0c;现在的系统真的越搞越复杂&#xff0c;最早只有gcc&#xff0c;后面多了make&#xf…

Flink StreamGraph生成过程

文章目录 概要SteramGraph 核心对象SteramGraph 生成过程 概要 在 Flink 中&#xff0c;StreamGraph 是数据流的逻辑表示&#xff0c;它描述了如何在 Flink 作业中执行数据流转换。StreamGraph 是 Flink 运行时生成执行计划的基础。 使用DataStream API开发的应用程序&#x…

Netty权威指南——基础篇4 网络通信基础 备份

1 TCP粘包/拆包 TCP是个“流”协议&#xff0c;所谓流&#xff0c;就是没有界限的一串数字。可以想象河里流水&#xff0c;是连成一片的&#xff0c;其间没有分界线。TCP底层并不了解上层业务数据的具体含义&#xff0c;它会根据TCP缓冲区的实际情况进行包的划分&#xff0c;一…

OpenHarmony教程指南—Navigation开发 页面切换场景范例

简介 在应用开发时&#xff0c;我们常常遇到&#xff0c;需要在应用内多页面跳转场景时中使用Navigation导航组件做统一的页面跳转管理&#xff0c;它提供了一系列属性方法来设置页面的标题栏、工具栏以及菜单栏的各种展示样式。除此之外还拥有动态加载&#xff0c;navPathSta…