《MATLAB静电场电场电势PPT幻灯片课件》由会员分享,可在线阅读,更多相关《MATLAB静电场电场电势PPT幻灯片课件(21页珍藏版)》请在金锄头文库上搜索。
1、 用MATLAB解决电磁场中的问题 王运霞鞠萌费佳成 1 问题引入 静电场中的电场线 等势线 等势面等图形是一种抽象的模型 在现实世界不具可视化的空间场的物体 所以 形象的模拟出以上问题的图形 对于更进一步学习与研究电场知识有很大的意义 静电场的问题学习与理解起来具有一定的特殊性 它既有理论数值的计算 又有图形图像的辅助处理与理解 例如 形象的模拟出电场线 等势线 等势面 这能在教学中解决教师的授课难题 又能解决学生的理解上的困难 近年来 一直有人在不断的探索这方面的问题 并且取得一定的成绩 但还存在一定的缺陷 而Matlab恰好解决了这些问题 这使得这些抽象问题能有一门精确的工具软件来处理完
2、成 这正是Matlab在图像方面问题处理的应用 2 问题一 等量同号点电荷的电场线的绘制 问题分析 根据库仑定律 在真空中 两个静止的点电荷之间的作用力与这两个电荷的电量乘积成正比 与它们之间距离的平方成反比 作用力的方向在两个电荷的连线上 两电荷同号为斥力 异号为吸力 他们之间的力F满足 由电场强度E的定义可知 3 对于点电荷 根据场论基础中的定义 有势场E的势函数为 在matlab中 由以上公式算出各点的电势U 电场强度E后 可以用matlab自带的库函数绘出一对点电荷的电场线和等势线 4 源程序 q 0 5 xm 2 5 ym 2 x linspace xm xm 横坐标向量y lins
3、pace 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 5 contour X Y U u 画等势线gridon 有网格holdon 设置图形保持状态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
4、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 电场线的起点纵坐标 6 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 电场线的起点纵坐标stream
5、line X Y Ex Ey x2 y2 画右上电场线streamline X Y Ex Ey x2 y2 画右下电场线axisequaltight 纵横坐标轴采用等长刻度title 题目xlabel x fontsize 16 X轴说明ylabel y fontsize 16 Y轴说明text xm ym 0 5 txt fontsize 16 7 8 结论 可以清楚的看出同号电荷相互排斥的现象 各电荷的等势线呈圈状围在电荷周围 且越靠近电荷电场线分布越密集 9 问题二 等量异种电荷的电势 电场的分布 物理理论 平面上在x 2 y 0处有一正电荷 x 2 y 0处有一负电荷根据 10 源程序
6、 x y meshgrid 5 0 2 5 4 0 2 4 建立数据网格z 1 sqrt x 2 2 y 2 0 01 1 sqrt x 2 2 y 2 0 01 电势的表达式mesh x y z 三维曲面绘图 11 可以看出 在不同位置的两正负电荷由于所带电性的不同电势分布也大不相同 也可以说是在某些角度看来是完全相反的 12 电场分布 x y meshgrid 2 0 1 2 2 0 1 2 以0 1为步长建立平面数据网格 x y的取值范围都是 2 2 z 1 sqrt x 1 2 y 2 0 01 1 sqrt x 1 2 y 2 0 01 电势公式 px py gradient z 求
7、电势在x y方向的梯度即电场强度contour x y z 12 8 5 3 1 0 5 0 1 0 1 0 5 1 3 5 8 12 画出等势线holdon 保留上一次作图痕迹quiver x y px py k 画出各点上电场的大小和方向 k 为图形参数控制 quiver是绘制点 x y 处的矢量 px py 即画出各点电场的大小和方向 13 14 问题三 带电粒子在电磁场中的运动 如果一个带电粒子在既有电场又有磁场的区域里运动 则其受到的电磁力为这里 我们进一步讨论既有电场又有磁场情况下带电粒子的运动情况 15 题目 设质量为m 带电量为q的粒子在磁感应强度为B 电场强度为E的电磁场中运
8、动 建立和求解该问题的微分方程 并分E 0 B 0 E 0 B 0和E 0 B 0三种情况画出带电粒子在电磁场中的运动轨迹 16 17 源程序 symswxyztBEmq 定义变量E input E B input B 输入E和B值 x y z dsolve D2x q B m Dy D2y q E m q B m Dx D2z 0 x 0 0 y 0 0 z 0 0 Dx 0 0 01 Dy 0 6 Dz 0 0 01 初始条件取x 0 y 0 z 0 0 Dx 0 0 01 Dy 0 6 Dz 0 0 01q 1 6e 2 m 0 02 X subs xyz x X 1 y X 2 z X
9、 3 赋值函数ezplot3 X 1 X 2 X 3 运行上述程序 例如 取E 4 B 8可得下列特解并给出图 a x 15 16 cos 32 5 t 49 640 sin 32 5 t 1 2 t 15 16y 15 16 sin 32 5 t 49 640 cos 32 5 t 49 640z 1 100 t 18 19 感想与总结 经过一学期一学期MATLAB课程学习 我们对一些数学题目有了新的认识 就像这次我们做的有关电场分布以及带电粒子在电磁场中运动的问题 通过编写程序我们可以直观地看到电荷周围的电场分布 以及带电粒子在电磁场中的运动轨迹 让问题变得简单化 可视化 更加易于理解 也加强了我们动手解决问题的能力 对于MATLAB课程的学习 首先要熟悉基本知识 其次多读一些大神写的程序 他们的程序往往变成规范 简单易读 再有就是一定要亲自动手练习 只有自己亲自敲代码并运行成功 才能切身体会到很多只是看程序所体会不到的东西 才能真正有所收获 20 Thanksforlistening 21