資源描述:
《偶極子程序for Matlab.doc》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、偶極子程序forMatlabby霍家偉0519037前言:MATLAB名字是由MATrix和LABoratory兩個詞的前三個字母組合而成的。它是MathWorks公司于1982年推出的一套高性能的數(shù)值計算和可視化數(shù)學(xué)軟件,被譽為“巨人肩上的工具”。由于使用Matlab編程運算與人進行科學(xué)計算的思路和表達方式完全一致,所以不像學(xué)習(xí)其它高級語言--如Basic、Fortran和C等那樣難于掌握,用Matlab編寫程序猶如在演算紙上排列出公式與求解問題,所以又被稱為演算紙式科學(xué)算法。鑒于MATLAB的強大作圖功能,筆者在此以此作為描述電偶極子和磁偶極子的勢場和場強的工具,希望以
2、此給出抽象的偶極子場以形象的描述。圖形有待改善,不妥之處,多多包涵。一、電偶極子具體程序:用Matlab的M-File編輯:clear;clf;a=0;b=1.5;x=-10:0.6:10;y=x;[X,Y]=meshgrid(x,y);%設(shè)置坐標網(wǎng)點rp=sqrt((X-a).^2+(Y-b).^2);rm=sqrt((X+a).^2+(Y+b).^2);V=(1./rp-1./rm);%計算每一點的電勢[Ex,Ey]=gradient(-V);%計算每一點的場強AE=sqrt(Ex.^2+Ey.^2);Ex=Ex./AE;Ey=Ey./AE;%場強歸一化,使箭頭等長cv
3、=linspace(min(min(V)),max(max(V)),26);%產(chǎn)生26個電位值contourf(X,Y,V,cv,'k-')%用黑實線畫填色等位線圖title('fontname{隸書}fontsize{22}電偶極子的場'),holdonquiver(X,Y,Ex,Ey,0.8)%第五輸入宗量0.8使場強箭頭長短適中。plot(a,b,'wo',a,b,'w+')%用白線畫正電荷位置plot(-a,-b,'wo',-a,-b,'w-')%用白線畫負電荷位置xlabel('X');ylabel('Y'),holdoff保存后改名為electron.m,在
4、主界面上輸入electron直接運行即可。具體思想:首先設(shè)置正負電荷的位置,然后計算電勢V=(1/rp-1/rm),rp為到正電荷的位置,rm為到負電荷的位置(用自然單位,忽略所有常系數(shù)),接著用[Ex,Ey]=gradient(-V)計算電場,最后輸出圖象。具體圖象:由于只取了一個截面,真正的空間分布有通過繞著豎直軸旋轉(zhuǎn)才能得到。二、磁偶極子具體程序:clear;clf;x=-18:1:18;y=-18:1:18;[X,Y]=meshgrid(x,y);%設(shè)置坐標網(wǎng)點rp=sqrt((X).^2+(Y).^2+1);a=rp.^2-1.5*X.^2;b=X.*Y;c=sq
5、rt((X).^2);A=c./rp^3;%計算每一點A勢的大小Bx=3*(b./rp^5);%計算每一點B場的水平分量By=2*(a./rp^5);%計算每一點B場的垂直分量AE=sqrt(Bx.^2+By.^2);Bx=Bx./AE;By=By./AE;%場強歸一化,使箭頭等長cv=linspace(min(min(T)),max(max(T)),18);contourf(X,Y,A,cv,'k-')%用黑實線畫填色等位線圖title('fontname{隸書}fontsize{22}磁偶極子的場'),holdonquiver(X,Y,Bx,By,.8,'k-')%
6、第五輸入宗量0.8使場強箭頭長短適中。xlabel('Y');ylabel('Z'),holdoff具體思想:方法與電偶極子的類似,只是旋度無法直接計算,A勢也只表示出其大小而已,大小為水平分量的絕對值除以r的三次方;B的大小方向由下式?jīng)Q定:具體圖象:計算中假定線圈水平放置,即磁偶極矩在中間豎直向上。同樣,由于只取了一個截面,真正的空間分布有通過繞著豎直軸旋轉(zhuǎn)才能得到。小結(jié):討論:從兩幅圖中我們的確可以看到兩種偶極子的驚人相似性,就是兩種場都形成漩渦狀,不斷打圈。同時,我們也應(yīng)該感謝數(shù)學(xué)軟件給我們帶來的便利,使我們能夠從直觀上認識復(fù)雜的某些物理現(xiàn)象。最后,希望本文能夠借此機
7、會引起大家對數(shù)學(xué)軟件和程序設(shè)計的重視。謝謝!