1.題目描述
點(diǎn)電荷 Q1 位于(-10.5,0),Q2 位于(10.5,0) ,用 Matlab 編程畫出時(shí)的等電位分布。計(jì)算網(wǎng)格為點(diǎn)(-100,-100) 和(100,100)之間的正方形,網(wǎng)格間距為1。等電位線取值為(-0.5:0.002:0.5)。
2.Contour函數(shù)常用操作

1)contour(Z) 繪制矩陣 Z 的等高線圖,其中 Z 解釋為有關(guān) x-y 平面的高度。Z 必須至少是 2×2 矩陣,該矩陣包含至少兩個(gè)不同值。x 值對(duì)應(yīng)于 Z 的列索引,y 值對(duì)應(yīng)于 Z 的行索引。自動(dòng)選擇等高線層級(jí)。
2)contour(Z,n) 以 n 個(gè)等高線層級(jí)繪制矩陣 Z 的等高線圖,其中 n 為標(biāo)量。自動(dòng)選擇等高線層級(jí)。
3)contour(Z,v) 繪制矩陣 Z 的等高線圖,其中等高線位于單調(diào)遞增向量 v 中指定的數(shù)據(jù)值。要在特定值位置顯示單個(gè)等高線,請(qǐng)將 v 定義為一個(gè)二元素向量,并且兩個(gè)元素都等于所需的等高線層級(jí)。例如,要在 k 層級(jí)繪制等高線,請(qǐng)使用 contour(Z,[k k])。指定向量 v 可將 LevelListMode 屬性設(shè)置為 manual。
4)contour(X,Y,Z)、contour(X,Y,Z,n) 和 contour(X,Y,Z,v) 使用 X 和 Y 繪制 Z 的等高線圖,以確定 x 和 y 值。
- 如果
X和Y為向量,則length(X)必須等于size(Z,2)且length(Y)必須等于size(Z,1)。這些向量必須是嚴(yán)格遞增或嚴(yán)格遞減的,并且不能包含任何重復(fù)值。 - 如果
X和Y為矩陣,則其大小必須等于Z的大小。通常,應(yīng)設(shè)置X和Y以使列嚴(yán)格遞增或嚴(yán)格遞減并且行是均勻的(或者使行嚴(yán)格遞增或嚴(yán)格遞減并且列是均勻的)。
如果X或Y的間距不規(guī)律,contour將使用等間距的等高線網(wǎng)格計(jì)算等高線,然后轉(zhuǎn)換成X或Y的數(shù)據(jù)。
contour(...,LineSpec)使用LineSpec指定的線型和顏色繪制等高線。contour忽略標(biāo)記符號(hào)。
contour(...,Name,Value)使用一個(gè)或多個(gè)屬性名-屬性值對(duì)組指定等高線屬性。Name是屬性名且必須置于單引號(hào) ('') 內(nèi)。Value是對(duì)應(yīng)的值。例如,'LineWidth',2將等高線寬度設(shè)置為 2。
5)有關(guān)等高線屬性名和值的列表,請(qǐng)參閱 Contour 屬性。
-
contour(ax,...)將圖形繪制到ax指定的坐標(biāo)區(qū)中,而不是當(dāng)前坐標(biāo)區(qū) (gca) 中。 -
[C,h] = contour(...)返回等高線矩陣C(包含定義等高線的數(shù)據(jù))和Contour對(duì)象h。 -
Contour對(duì)象的ContourMatrix屬性也包含等高線矩陣。clabel函數(shù)使用等高線矩陣標(biāo)記等高線??梢允褂?Contour對(duì)象屬性控制等高線圖外觀。
3.編程實(shí)現(xiàn)
x=-100:1:100;
y=-100:1:100;
[x,y]=meshgrid(x,y);
z=(1./sqrt((y-10.5).^2+x.^2)-1./sqrt((y+10.5).^2+x.^2));
contour(x,y,z,-0.5:0.002:0.5)
4.運(yùn)行結(jié)果

5.擴(kuò)展功能
1)顯示等高線標(biāo)簽
contour(x,y,z,-0.5:0.002:0.5,'ShowText','on')

2)顯示單條等高線
顯示Z=0.004的等高線:
v=[0.004,0.004]
contour(x,y,z,v)
