Matlab 在电磁场中的应用 2.docx

上传人:b****2 文档编号:2460478 上传时间:2022-10-29 格式:DOCX 页数:17 大小:326.21KB
下载 相关 举报
Matlab 在电磁场中的应用 2.docx_第1页
第1页 / 共17页
Matlab 在电磁场中的应用 2.docx_第2页
第2页 / 共17页
Matlab 在电磁场中的应用 2.docx_第3页
第3页 / 共17页
Matlab 在电磁场中的应用 2.docx_第4页
第4页 / 共17页
Matlab 在电磁场中的应用 2.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

Matlab 在电磁场中的应用 2.docx

《Matlab 在电磁场中的应用 2.docx》由会员分享,可在线阅读,更多相关《Matlab 在电磁场中的应用 2.docx(17页珍藏版)》请在冰豆网上搜索。

Matlab 在电磁场中的应用 2.docx

Matlab在电磁场中的应用2

Matlab在电磁场中的应用

 

专业:

电气信息与自动化

班级:

2012级自动化3班

学号:

12012242065

学院:

物电学院

指导老师:

李虹

完成日期:

2013年12月15日

 

Matlab在电磁场中的应用

 

摘要

Matlab是美国Mathworks公司于80年代推出的大型数学软件,通过多年的升级换代,现在已发展成为集数值计算、符号计算、可视化功能以及诸多的工具箱为一体的大型科学计算软件,它已广泛应用于科研院所、工程技术等各个部门,并成为大学生、研究生必备的工具软件。

电磁学是物理学的一个分支,是研究电场和电磁的相互作用现象。

电磁学从原来互相独立的两门科学(电学、磁学)发展成为物理学中一个完整的分支学科,主要是基于电流的磁效应和变化的磁场的电效应的发现。

这两个实验现象,加上麦克斯韦关于变化电场产生磁场的假设,奠定了电磁学的整个理论体系,发展了对现代文明起重大影响的电工和电子技术。

针对电磁场学习理论性强、概念抽象等特点,利用Matlab强大的数值计算和图形技术,通过具体实例进行仿真,绘制相应的图形,使其形象化,便于对其的理解和掌握。

将Matlab引入电磁学中,利用其可视化功能对电磁学实验现象进行计算机模拟,可以提高学习效率于学习积极性,使学习效果明显。

本文通过Matlab软件工具,对点电荷电场、线电荷产生的电位、平面上N个电荷之间的库仑引力、仿真电荷在变化磁场中的运动等问题分别给出了直观形象的的仿真图,形实现了可视化学习,丰富了学习内容,提高了对电磁场理论知识的兴趣。

 

关键词:

Matlab电磁学仿真计算机模拟

 

一、点电荷电场

 

问题描述:

真空中,两个带正电的点电荷,在电量相同和电量不同情况下的电场分布。

根据电学知识,若电荷在空间激发的电势分布为V,则电场强度等于电势梯度的负值,即:

根据题意,真空中若以无穷远为电势零点,则在两个点电荷的电场中,空间的电势分布为:

 

程序实现:

clearall

ep0=8.85*1e-12;

c0=1/(4*pi*ep0);

e=1.60e-10;

h=0.018;

x=-0.5:

h:

0.5;

y=-0.5:

h:

0.5;

[X,Y]=meshgrid(x,y);

q=[e;1.9*e];

fori=1:

2

V=c0*e./sqrt((X+0.2).^2+Y.^2)+c0.*q(i)./sqrt((X-0.2).^2+Y.^2);

[Ex,Ey]=gradient(-V,h);

figure(i)

contour(X(:

:

1),Y(:

:

1),V,...

[20,-20,19,-19,18,-18,17,-17,...

16,-16,15,-15,14,-14,13,-13,...

12,-12,11,-11,10,-10]);

axis([-0.38,0.38,-0.28,0.28])

holdon

phi=0:

pi/17:

2*pi;

sx1=0.2+0.01*cos(phi);

sy1=0.01*sin(phi);

streamline(X(:

:

1),Y(:

:

1),Ex,Ey,sx1,sy1);

holdon

sx2=-0.2+0.01*cos(phi);

sy2=0.01*sin(phi);

streamline(X(:

:

1),Y(:

:

1),Ex,Ey,sx2,sy2);

title(str{i})

text(-0.212,0,'+','fontsize',20);

text(0.187,0,'+','fontsize',20);

end

图1-1两个同号等量电荷的电场分布图1-2两个同号不等量电荷的电场分布

 

二、线电荷产生的电位

设电荷均匀分布在从z=-L到z=L,通过原点的线段上,其密度为q(单位C/m),求在xy平面上的电位分布。

点电荷产生的电位可表示为是一个标量。

其中r为电荷到测量点的距离。

线电荷所产生的电位可用积分或叠加的方法来求。

为此把线电荷分为N段,每段长为dL。

每段上电荷为q*dL,看作集中在中点的点电荷,它产生的电位为然后对全部电荷求和即可。

把xy平面分成网格,因为xy平面上的电位仅取决于离原点的垂直距离R,所以可以省略一维,只取R为自变量。

把R从0到10米分成Nr+1点,对每一点计算其电位。

matlab程序

clearall;

L=input(‘线电荷长度L=:

’);

N=input(‘分段数N=:

’);

Nr=input(‘分段数Nr=:

’);

q=input(‘电荷密度q=:

’);

E0=8.85e-12;

C0=1/4/pi/E0;

L0=linspace(-L,L,N+1);

L1=L0(1:

N);L2=L0(2:

N+1);

Lm=(L1+L2)/2;dL=2*L/N;

R=linspace(0,10,Nr+1);

fork=1:

Nr+1

Rk=sqrt(Lm.^2+R(k)^2);

Vk=C0*dL*q./Rk;

V(k)=sum(Vk);

end

[max(V),min(V)]

plot(R,V),grad

输入:

线电荷长度L=:

5

分段数N=:

50

分段数Nr=:

50

电荷密度q=:

1

可得最大值和最小值为:

ans=

1.0e+010*[9.31990.8654]

 

图(2-1)线电荷产生的静电位分布图

 

三、平面上N个电荷之间的库仑引力

 

建模:

由库仑定律:

其分量的公式可以写成:

编写程序时,先输入电荷的数目,各电荷的坐标及电荷量,再选一个电荷,求其它电荷对它的作用力,叠加求合力。

再选下一个电荷,依次类推。

Matlab程序:

clearall;

N=input('输入电荷数目N=:

');

foric=1:

N%输入给定条件

fprintf('----/n对电荷#%g\n',ic);

rc=input('输入电荷位置[x,y](米):

');

x(ic)=rc

(1);%电荷ic的x坐标

y(ic)=rc

(2);%电荷ic的y坐标

q(ic)=input('输入电荷量(库仑):

');

end

E0=8.85e-12;%真空中的常数

C0=1/(4*pi*E0);%合并常数

foric=1:

N%循环计每个电荷所受的力

Fx=0.0;Fy=0.0;

forjc=1:

N

if(ic~=jc)

xij=x(ic)-x(jc);yij=y(ic)-y(jc);

Rij=sqrt(xij^2+yij^2);

Fx=Fx+C0*q(ic)*q(jc)*xij/Rij^3;

Fy=Fy+C0*q(ic)*q(jc)*yij/Rij^3;

end

end

fprintf('其它电荷作用在电荷#%g上的合力为:

\n',ic);

fprintf('x-分量:

%gN\n',Fx);

fprintf('y-分量:

%gN\n',Fy);

end

本程序注意学会循环提示并输入参数的方法,以及用双循环解决较复杂的计算过程的编程问题。

输入已知条件:

输入电荷数目N=3

-------对电荷#1

输入电荷位置[x,y](m):

[12]

输入电荷量(库仑):

2

-------对电荷#2

输入电荷位置[x,y](m):

[11]

输入电荷量(库仑):

1

-------对电荷#3

输入电荷位置[x,y](m):

[33]

输入电荷量(库仑):

3

计算结果:

其它电荷作用在#1上的合力为:

X-分量为:

-9.65102e+009N

Y-分量为1.31581e+010

其它电荷作用在#2上的合力为:

X-分量为:

-2.38431e+009N

Y-分量为-2.03679e+010

其它电荷作用在#3上的合力为:

X-分量为:

1.20353e+010N

Y-分量为7.20982e+009

利用matlab软件仿真电荷在变化磁场中的运动

程序一

%电荷在非均匀磁场中的运动

v=10;sita=pi/6;%设定带电粒子的初速度及入射角

v=v*cos(sita);

u=v*sin(sita);%计算x,y方向的初速度

w=0;

[t,y]=ode23('yy',[0:

0.002:

2],[0,v,0,u,0,w]);%求解名为“yy”的微分方程组

figure%描绘运动轨迹

plot(t,y(:

1));%绘制一般二维曲线

%comet(t,y(:

1));%绘制二维动态曲线

xlabel('t');ylabel('x');

figure

plot(t,y(:

3));

%comet(t,y(:

3));

xlabel('t');ylabel('y');

figure

plot(t,y(:

5));

%comet(t,y(:

5));

xlabel('t');ylabel('z');

figure

plot(y(:

3),y(:

5));

%comet(y(:

3),y(:

5));

xlabel('y');ylabel('z');

figure

plot3(y(:

1),y(:

3),y(:

5))%绘制一般三维曲线图

%comet3(y(:

1),y(:

3),y(:

5))%绘制三维动态轨迹

xlabel('x');ylabe('y');zlabel('z');

%电荷在非均匀磁场中运动的微分方程

functionf=yy(t,y);

globalA;%定义全局变量

A=100;%设定qB0/m

f=[y

(2);0;y(4);A*y(6)*y

(1);y(6);-A*y(4)*y

(1)];%写入微分方程

截图

图(4-1)电荷在x轴上运动轨迹

图(4-2)电荷在y轴上的运动轨迹

图(4-3)电荷在z轴上的运动轨迹

图(4-4)电荷在yz平面上的运动轨迹

图(4-5)电荷在三维空间中的运动轨

 

接着讨论尖端放电现象

functionpdemodel

[pde_fig,ax]=pdeinit;

pdetool('appl_cb',1);

set(ax,'DataAspectRatio',[21.10344827586206815.4166666666666641]);

set(ax,'PlotBoxAspectRatio',[111]);

set(ax,'XLim',[-20.79310344827586521.41379310344827]);

set(ax,'YLim',[-16.527777777777814.305555555555529]);

set(ax,'XTickMode','auto');

set(ax,'YTickMode','auto');

%Geometrydescription:

pdecirc(0,0,50,'C1');

pdepoly([-0.36641221374044619,56.061068702290072,56.610687022900777,...

],[1.0992366412213741,1.0992366412213741,-8.5190839694656475,],...

'P1');

set(findobj(get(pde_fig,'Ch

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 基础医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1