- 相關(guān)推薦
(論文)matlab在電磁場中的應(yīng)用
Matlab在電場中的應(yīng)用
[摘要]Matlab是一種用于算法開發(fā),數(shù)據(jù)可視化,數(shù)值分析及數(shù)值圖形生成的高級工具語言,它主要被應(yīng)用于信號和圖像處理,通訊,控制系統(tǒng)設(shè)計(jì),測試和測量等廣泛領(lǐng)域;贛ATLAB強(qiáng)大的繪圖和仿真功能,對物理學(xué)中電磁學(xué)中的等量同號點(diǎn)電荷的電場線的繪制和帶電粒子在均勻電磁場中的運(yùn)動等問題進(jìn)行仿真, 來簡便、直觀、高效分析物理問題。在本文中,用Matlab的功能使靜電場里的某些模型(電場強(qiáng)度電勢、電場線、等勢線、等勢面)可視化,方便了我們對有關(guān)靜電場的知識的學(xué)習(xí),提高了我們對知識的理解和運(yùn)用能力,本文主要是從圖像處理功能方面介紹了Matlab語言在靜電場一些問題中的應(yīng)用。
【關(guān)鍵字】:
一、引言
靜電場中的電場線,等勢線,等勢面等圖形是一種抽象的模型,在現(xiàn)實(shí)世界不具可視化的空間場的物體。所以,形象的模擬出以上問題的圖形,對于更進(jìn)一步學(xué)習(xí)與研究電場知識有很大的意義。靜電場的問題學(xué)習(xí)與理解起來具有一定的特殊性:它既有理論數(shù)值的計(jì)算,又有圖形圖像的輔助處理與理解。例如:形象的模擬出電場線,等勢線,等勢面,這能在教學(xué)中解決教師的授課難題,又能解決學(xué)生的理解上的困難。近年來,一直有人在不斷的探索這方面的問題,并且取得一定的成績。但還存在一定的缺陷,而Matlab恰好解決了這些問題!這使得這些抽象問題能有一門精確的工具軟件來處理完成。這正是Matlab在圖像方面問題處理的應(yīng)用。
二、Matlab在電場中的應(yīng)用
(1)等量點(diǎn)電荷的電場線的繪制
根據(jù)庫侖定律:在真空中,兩個靜止的點(diǎn)電荷之間的作用力與這兩個電荷的電量乘積成正比,與它們之間距離的平方成反比,作用力的方向在兩個電荷的連線上,兩電荷同號維斥力,異號為吸力,他們之間的力F滿足:
QQ F?k1
22 (1) R
由電場強(qiáng)度E的定義可知:
E?kQ (2) R2
建立電場線的微分方程(二維情況)。 因?yàn)殡妶鲋腥我稽c(diǎn)的電場方向都沿該點(diǎn)電場線的切線方向,所以滿足:
dyEy? (3) dxEx
引入?yún)⒆兞縯得到: dydx??dt (4) ExEy
設(shè)二點(diǎn)電荷位于(-2,0)和(2,0),二點(diǎn)電荷“電量”為q1和q2(均等于10), 由庫倫定律和電場的疊加原理,得出下列微分方程: x?dx?Ex?q1?x?2?
3?q2?x?2?3 (5) dt??x?2?2?y222??????x?2?2?y2??
y?dyq1ydt?Ey?3?q2y3 (6)
??x2??2?2?y2????x?2?2?y22???
解此方程就可以繪制出電場線。
clc
clear
q=0.5;
xm=2.5;
ym=2;
x=linspace(-xm,xm); %橫坐標(biāo)向量
y=linspace(-ym,ym); %縱坐標(biāo)向量
[X,Y]=meshgrid(x,y);%產(chǎn)生自變量網(wǎng)絡(luò)坐標(biāo)
R1=sqrt((X+1).^2+Y.^2); %第一個正電荷到場點(diǎn)的距離
R2=sqrt((X-1).^2+Y.^2); %第二個正電荷到場點(diǎn)的距離
U=1./R1+q./R2; %計(jì)算電勢
u=1:0.5:4; %等勢線的電場向量
figure
contour(X,Y,U,u) %畫等勢線
grid on %有網(wǎng)格
hold o
大學(xué)網(wǎng) n %設(shè)置圖形保持狀態(tài)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)); %用等勢梯度求場強(qiáng)的兩個分量
dth1=20;
th1=(dth1:dth1:180-dth1)*pi/180; %電場線的起始角度
r0=0.1;
x1=r0*cos(th1)-1; %電場線的起點(diǎn)橫坐標(biāo)
y1=r0*sin(th1); %電場線的起點(diǎn)縱坐標(biāo)
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; %電場線的起點(diǎn)橫坐標(biāo)
y2=r0*sin(th2); %電場線的起點(diǎn)縱坐標(biāo)
streamline(X,Y,Ex,Ey,x2,y2) %畫右下電場線
streamline(X,-Y,Ex,-Ey,x2,-y2) %畫右下電場線
axis equal tight %縱橫坐標(biāo)軸采用等長刻度
title %題目
xlabel('x','fontsize',16) %X軸說明
ylabel('y','fontsize',16) %Y軸說明
txt=['電荷比:\itQ\rm_2/\itQ\rm_1='num2str(q)];
text(-xm,-ym+0.5,txt,'fontsize',16)
(2)、線電荷產(chǎn)生的電位:
設(shè)電荷均勻分布在從z=-L到z=L,通過原點(diǎn)的線段上,其密度為q(單位C/m),求在xy平面上的電位分布。
點(diǎn)電荷產(chǎn)生的電位可表示為 V?Q 是一個標(biāo)量。其中r為電荷到測量點(diǎn)的距離。線電4?R?0
荷所產(chǎn)生的電位可用積分或疊加的方法來求。為此把線電荷分為N段,每段長為dL。每段上電荷為q*dL,看作集中在中點(diǎn)的點(diǎn)電荷,它產(chǎn)生的電位為 dV?qdL然后對全部電荷求和即可。 4?R?0
把xy平面分成網(wǎng)格,因?yàn)閤y平面上的電位僅取決于離原點(diǎn)的垂直距離R,所以可以省略一維,只取R為自變量。把R從0到10米分成Nr+1點(diǎn),對每一點(diǎn)計(jì)算其電位。
clc
clear all;
L=input(‘線電荷長度L= ’);
N=input(‘分段數(shù)N= ’);
Nr=input(‘分段數(shù)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);
for k=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),grid
(3)、計(jì)算平面上N個電荷之間的庫倫引力 由庫侖定律:F?q1q2 24??0r
Fx?q1q2?x2?x1? 4??0r3
q1q2?y2?y1? 34??0rFy?
r??x2?x1?2?y2?y12
先輸入電荷的數(shù)目,各電荷的坐標(biāo)及電荷量,再選一個電荷,求其它電荷對它的作用力,疊加求合力。再選下一個電荷,依次類推。
clc
clear all;
disp('計(jì)算平面上n個點(diǎn)電荷之間的庫侖力的有關(guān)程序')
n=input('輸入電荷數(shù)目n=');
for ic = 1:n %輸入給定條件
fprintf('對電荷q%g\n',ic);%自動命名電荷q1,q2,?qn,分行顯示
rc = input('輸入電荷位置[x,y](米):');
x(ic) = rc(1); %電荷ic的x坐標(biāo)
y(ic) = rc(2); %電荷ic的y坐標(biāo)
q(ic) = input('輸入電荷量(庫侖):');
end
E0 = 8.85e-12; %真空中的介電常數(shù)
C0 = 1/(4*pi*E0); %合并常數(shù)
for ic = 1:n %循環(huán)計(jì)每個電荷所受的力
Fx = 0.0;Fy = 0.0;
for jc = 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;
F=sqrt(Fx^2+Fy^2);
end
end
fprintf('其它電荷作用在電荷q%g上的合力與分力分別為:\n',ic);
fprintf('F=%gN\n',F);
fprintf('Fx=%gN\n',Fx);
fprintf('Fy=%gN\n',Fy);
end
三、結(jié)論
從全文可以了解Matlab是一種有著強(qiáng)大的圖像繪制功能的可視化軟件。是一個為科學(xué),教育,和工程數(shù)值計(jì)算等多方面設(shè)計(jì)的高級語言。它的特點(diǎn)是程序設(shè)計(jì)過程簡單,這使我們將我們將主要的,最難的工作還是放在工程問題上,這正是體現(xiàn)了它的優(yōu)越性。圖像處理僅僅是Matlab功能一個方面的體現(xiàn),他還有更強(qiáng)大的功能值得我們?nèi)W(xué)習(xí)與應(yīng)用。
通過Matlab在靜電場中的實(shí)際運(yùn)用,可以看出利用Matlab解決靜電場問題有以下優(yōu)點(diǎn):
(1) 介入Matlab,使得靜電場中抽象的問題清晰與明朗化。這在教學(xué)與研究當(dāng)中是問題變得簡單。相比以往,學(xué)生更能形象的理解靜電場這方面的知識,將這一方法與工具應(yīng)用到中學(xué)教學(xué)中可以更好的幫助學(xué)生學(xué)好電學(xué)知識。
(2) 通過這一問題的處理。由當(dāng)初的學(xué)習(xí)電場到現(xiàn)在更深一步的探討,使得我對電場方面的知識有了更進(jìn)一步的學(xué)習(xí)與理解。Matlab還有很多方面的應(yīng)用,我們要繼續(xù)深入的學(xué)習(xí)Matlab來處理更多,更為復(fù)雜的問題。
參考文獻(xiàn):
[1] 朱漢敏.MATLAB在靜電場教學(xué)中的優(yōu)越性[M].中國期刊網(wǎng),2005年第3期.
[2] 劉衛(wèi)國.MATLAB程序設(shè)計(jì)與應(yīng)用[M].北京:高等教育出版社,2006.
[3] 馬文蔚.物理學(xué)中冊(第四版)[M].北京:高等教育出版社,1999.
[4] 陳鍾賢.計(jì)算物理學(xué)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2001.
[5] 張智星.MATLAB程序設(shè)計(jì)與應(yīng)用[M].北京:清華大學(xué)出版社, 2002.
【(論文)matlab在電磁場中的應(yīng)用】相關(guān)文章:
Matlab在遙感圖像雜散光處理中的應(yīng)用04-30
Matlab在北京飛機(jī)增雨航跡分析中的應(yīng)用04-29
基于MATLAB的DCT變換在JPEG圖像壓縮中的應(yīng)用04-27
Matlab和Word的鏈接在水文計(jì)算中的應(yīng)用05-02
MATLAB回歸分析在測繪數(shù)據(jù)處理中應(yīng)用04-28
電磁場數(shù)值方法在光波導(dǎo)課程教學(xué)中的應(yīng)用探討04-29
VC++和Matlab混合編程在圖像處理中的應(yīng)用04-30
基于Matlab的數(shù)據(jù)處理方法在GPS高程擬合中的應(yīng)用05-01
基于MATLAB的BP神經(jīng)網(wǎng)絡(luò)在清潔生產(chǎn)審核中的應(yīng)用04-25