版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第頁電磁場(chǎng)實(shí)驗(yàn)仿真指導(dǎo)書1、基礎(chǔ)2、實(shí)驗(yàn)內(nèi)容2.1預(yù)習(xí)點(diǎn)電荷電場(chǎng)分布2.2實(shí)驗(yàn)一電偶極子電場(chǎng)分布仿真2.3實(shí)驗(yàn)二特殊邊界條件的電場(chǎng)分布2.4實(shí)驗(yàn)三直導(dǎo)線的磁場(chǎng)分布2.5實(shí)驗(yàn)四磁偶極子的磁場(chǎng)分布1基礎(chǔ)1.1簡(jiǎn)介是一門計(jì)算機(jī)程序語言,取名源于,意在以矩陣方式處理數(shù)據(jù)。一般認(rèn)為的典型應(yīng)用包括:數(shù)值計(jì)算及分析、符號(hào)運(yùn)算、建模及仿真、數(shù)據(jù)可視化、圖形處理及可視化、基于圖形用戶界面的應(yīng)用程序開發(fā)。7.3.0啟動(dòng)后界面如圖1所示。圖17.3.0啟動(dòng)后界面命令窗口():(1)用于執(zhí)行命令,正常情況下提示符為“>>”,表示進(jìn)入工作狀態(tài)。(2)在提示符后輸入運(yùn)算指令和函數(shù)調(diào)用等命令(不帶“;”),將迅速顯示出結(jié)果并再次進(jìn)入準(zhǔn)備工作狀態(tài)。(3)若命令后帶有“;”,執(zhí)行命令后不顯示結(jié)果。(4)在準(zhǔn)備工作狀態(tài)下,如果按上下鍵,會(huì)按順序依次顯示以前輸入的命令,若要執(zhí)行它,則直接回車即可。工作空間(): (1)顯示計(jì)算機(jī)內(nèi)存中現(xiàn)有變量的名稱、類型、結(jié)構(gòu)及其占用子節(jié)數(shù)等。(2)如果直接雙擊某變量,則彈出窗口供用戶查看及修改變量?jī)?nèi)容。(3)該窗口上有工具條支持用戶將某變量存儲(chǔ)到文件中或者從文件中載入某變量。命令歷史記錄():(1)保存并顯示用戶在命令窗口中輸入過的命令,以及每次啟動(dòng)的時(shí)間等信息。 (2)若雙擊某條命令記錄,則會(huì)再次執(zhí)行該命令。當(dāng)前路徑窗口(): (1)先是當(dāng)前路徑內(nèi)的所有文件。(2)用戶可以在這里新建或刪除一個(gè)文件,也可以雙擊一個(gè)文件,在編輯/調(diào)試窗口中打開。設(shè)置當(dāng)前路徑(): (1)用于選擇當(dāng)前工作路徑。 (2)可以在命令窗口中輸入文件名來直接調(diào)用工作路徑下的文件。 使用時(shí)獲取幫助的兩種方法:一是直接在命令窗口中輸入函數(shù)名或命令;二是在幫助窗口中瀏覽或搜索相應(yīng)信息。還可以參考的程序來學(xué)習(xí)編程。1.2基本語法(一)變量及其賦值1、標(biāo)識(shí)符及數(shù)(1)標(biāo)識(shí)符是標(biāo)識(shí)變量名、常量名、函數(shù)名和文件名的字符串的總稱。在中,變量和常量的標(biāo)志符最長(zhǎng)允許19個(gè)字符;函數(shù)和文件名通常不超過8個(gè)字符(受操作系統(tǒng)文件管理器的限制)。這些字符包括全部的英文字母(區(qū)分大小寫)、阿拉伯?dāng)?shù)字和下劃線等符號(hào)。標(biāo)識(shí)符的第一個(gè)字符必須是英文字母。 (2)中只有雙精度一種數(shù)據(jù)格式,它把簡(jiǎn)化編程作為主要目標(biāo),以運(yùn)算速度和內(nèi)存消耗為代價(jià),省去了多種數(shù)據(jù)格式,唯一采用雙精度格式進(jìn)行數(shù)據(jù)的存儲(chǔ)和運(yùn)算。雖然它的數(shù)據(jù)格式只有一種,但是為了人機(jī)交互方便,輸出顯示格式有8種。下表顯示了在各格式控制命令下圓周率∏的顯示結(jié)果。命令顯示形式說明3.14916位十進(jìn)制數(shù)e3.149300016位十進(jìn)制數(shù)加指數(shù)(默認(rèn))3.1416二位整數(shù),四位小數(shù)e3.14160005位十進(jìn)制數(shù)加指數(shù)40092154442d1816位十六進(jìn)制數(shù)3.14兩位小數(shù)++正、負(fù)或零355/113分?jǐn)?shù)近似 默認(rèn)的顯示格式是(稀疏格式),屏幕的顯示會(huì)有很多空行,而如果用顯示格式命令(緊湊格式),則會(huì)用緊湊格式顯示。2、矩陣及其元素的賦值(1)中的變量或常量都代表矩陣,標(biāo)量應(yīng)看作1×1階的矩陣。(2)矩陣的賦值:①矩陣的值放在方括號(hào)中;②一行中各元素之間以逗號(hào)或者空格分開,不同的行則以分號(hào)隔開;③句的結(jié)尾可用回車符或逗號(hào),此時(shí)會(huì)立即顯示運(yùn)算結(jié)果。如果不希望顯示結(jié)果,就以分號(hào)結(jié)尾。此時(shí)運(yùn)算仍然執(zhí)行,只是不顯示。④變量的元素用圓括號(hào)“()”中的數(shù)字(也稱為下標(biāo))來注明,一維矩陣(也稱為數(shù)組或向量)中的元素用一個(gè)下標(biāo)表示,二維的矩陣可有兩個(gè)下標(biāo)數(shù),以逗號(hào)分開。賦值語句一般形式為:變量=表達(dá)式(或數(shù))例如:輸入語句[123;456;789]則顯示結(jié)果為a=123456789元素可以用表達(dá)式代替。如輸入[-1.3(3)(1+2+3/5*4)]則顯示結(jié)果為x=-1.30001.73214.8000可以單獨(dú)給矩陣的元素賦值。如x(2)=1.7321,a(2,3)=6等。如果賦值元素的下標(biāo)超出了原來矩陣的大小,矩陣的行列會(huì)自動(dòng)擴(kuò)展。跳空的元素會(huì)被自動(dòng)賦值為0。如x(5)(x(1))則得1.30001.73214.8000 0 1.3000又如鍵入a(4,3)=6.5,則得a=1.00002.00003.00004.00005.00006.00007.00008.00009.0000006.5000給全行賦值,可用冒號(hào)。如給a的第5行賦值。鍵入a(5,:)=[5,4,3]得a=1.00002.00003.00004.00005.00006.00007.00008.00009.0000006.50005.00004.00003.0000要取出a的第2、4行及第1、3列交點(diǎn)上的元素取出,構(gòu)成一個(gè)新矩陣b??涉I入([2,4],[1,3])得b=4.00006.000006.5000要抽除a中的第2、4、5行,可利用空矩陣[](指沒有元素的矩陣,對(duì)任何一個(gè)矩陣賦值[],就是使它的元素都消失,注意它及“零矩陣”不同)。鍵入a([2,4,5],:)=[]得a=123789 對(duì)于“變量=表達(dá)式(或數(shù))”的賦值形式,如果不要等式左端而只剩下右端,則會(huì)自動(dòng)給出一個(gè)臨時(shí)變量,把右端的結(jié)果暫存于中。例如鍵入7得0.14290.28570.42861.00001.14291.28573、復(fù)數(shù)矩陣、運(yùn)算及其賦值(1)的每一個(gè)元素都可以是復(fù)數(shù),復(fù)數(shù)的虛數(shù)部分用i或j表示,這是在啟動(dòng)時(shí)就在內(nèi)部設(shè)定的。中所有的運(yùn)算符和函數(shù)都對(duì)復(fù)數(shù)有效。例如:鍵入3+5.2i或3+5.2j得c=3.0000+5.2000i(2)復(fù)數(shù)矩陣有兩種賦值方法。對(duì)復(fù)數(shù)矩陣的元素逐個(gè)賦值。如鍵入[1+2i,3+4i;5+6i,7+8i]得z=1.0000+2.0000i3.0000+4.0000i5.0000+6.0000i7.0000+8.0000i對(duì)其實(shí)部矩陣和虛部矩陣分別賦值。如鍵入[1,3;5,7]+[2,4;6,8]*i得z=1.0000+2.0000i3.0000+4.0000i5.0000+6.0000i7.0000+8.0000i注意:①只有數(shù)字及i的乘積可以省略乘號(hào),在上述矩陣式中若省略乘號(hào)*,就會(huì)出錯(cuò)。②如果在前面程序中曾給i或j賦過其他值,則i或j已不是虛數(shù)符號(hào),那么這些虛數(shù)賦值語句就不對(duì)了。此時(shí)應(yīng)鍵入i,j,即把原賦的i,j清掉,然后再執(zhí)行復(fù)數(shù)賦值語句。(3)復(fù)數(shù)矩陣的轉(zhuǎn)置、共軛運(yùn)算函數(shù)對(duì)矩陣的每個(gè)元素求共軛,即把各元素的虛部反號(hào)。運(yùn)算符'對(duì)矩陣作共軛和轉(zhuǎn)置,即把其行列互換,同時(shí)把各元素的虛部反號(hào)。因此,如果只求轉(zhuǎn)置而不要共軛,就把和'結(jié)合起來使用。例如鍵入'(z)(z)'得w=1.0000-2.0000i5.0000-6.0000i3.0000-4.0000i7.0000-8.0000iu=1.0000-2.0000i3.0000-4.0000i5.0000-6.0000i7.0000-8.0000iv=1.0000+2.0000i5.0000+6.0000i3.0000+4.0000i7.0000+8.0000i4、基本矩陣單位矩陣(n)是n×n階的方陣,其對(duì)角線上的元素為1,其余元素均等于0。全0矩陣()是m×n的所有元素均為0的矩陣。全1矩陣()是m×n的所有元素均為1的矩陣。均分向量()是在a及b之間均勻地產(chǎn)生n個(gè)點(diǎn)值,形成n維向量。如:鍵入f1(3,2)2(2,3)3(2)得f1=111111f2=000000f3=1001鍵入f4(0,1,5)得f4=00.25000.50000.75001.0000大矩陣可由小矩陣組成,但必須其行列數(shù)正確,恰好填滿全部元素。如鍵入f5=[111;222;333]得f5=111222333則鍵入[f1532]可得1111111222113331000001000(二)矩陣的初等運(yùn)算1、矩陣的加減乘法(1)矩陣加減法兩矩陣相加(減)就是其對(duì)應(yīng)元素的相加(減),通過+、-運(yùn)算符實(shí)現(xiàn),要求相加(減)的兩個(gè)矩陣的結(jié)構(gòu)必須相同。用的語句來檢查結(jié)構(gòu)是否相同。例如:鍵入 [m,n]()得m=5n=5當(dāng)兩個(gè)矩陣相加(減)時(shí),如果有一個(gè)是標(biāo)量,則承認(rèn)算式有效,并自動(dòng)將該標(biāo)量擴(kuò)展成同結(jié)構(gòu)的等元素矩陣,再進(jìn)行加(減)運(yùn)算。例如:鍵入[-101];1得y=-2-10 對(duì)于一維矩陣(數(shù)組),可以用語句來求其長(zhǎng)度,它不區(qū)分列或行,只有一個(gè)輸出量,而有兩個(gè)輸出量,所以,作加減法的結(jié)構(gòu)檢驗(yàn)時(shí)只能用。(2)矩陣乘法n×p的矩陣A及p×m的矩陣B的乘積C是一個(gè)n×m的矩陣,通過運(yùn)算符*實(shí)現(xiàn)。p是A矩陣的列數(shù),也是B矩陣的行數(shù),稱為這兩個(gè)相乘矩陣的內(nèi)階數(shù),這里要注意,兩矩陣相乘的必要條件是它們的內(nèi)階數(shù)相等。 如果兩個(gè)相乘的矩陣有一個(gè)是標(biāo)量,則不檢查其內(nèi)階數(shù),而用該標(biāo)量乘以矩陣的每個(gè)元素。 若把y轉(zhuǎn)置,即y’為3×1的矩陣,而x是1×3的矩陣,則x*y’的內(nèi)階數(shù)相等為3鍵入x*y’得2該式子稱為x左乘y’。如果使x右乘y’,則y’*x內(nèi)階數(shù)為1,鍵入y’*x得20-210-1000所以要注意左乘及右乘結(jié)果一般不同,只有單位矩陣?yán)?,單位矩陣乘以任何矩陣,無論左乘還是右乘,其乘積仍等于該矩陣,但要保證單位矩陣的階數(shù)及相乘矩陣的階數(shù)相等。即(n)*A*(n)2、矩陣除法及線性方程組的解(1)線性代數(shù)中沒有除法,只有逆矩陣,矩陣的除法是從逆矩陣的概念引伸來的。有左除和右除兩種情況。 B左除矩陣D相當(dāng)于矩陣B左乘矩陣D的逆矩陣,記作D\B。左除條件是:兩矩陣的行數(shù)必須相等。(D*1*\B,可見需要D及B的行數(shù)相等) B右除矩陣D相當(dāng)于矩陣B右乘矩陣D的逆矩陣,記作。右除條件是:兩矩陣的列數(shù)必須相等。(X**1,可見需要D及B的列數(shù)相等)(2)矩陣除法可以用來方便地解線性方程組。例如要求下列方程組的解[x123]。 6x1+3x2+4x3=3 -2x1+5x2+7x34 8x1-4x2-3x37此方程組可以寫成矩陣形式,求解的程序?yàn)閇634257;8-4-3];[347];\B得x=0.60007.0000-5.4000下面來看矩陣左右乘除的一些示例。設(shè)[123;456],[240;135],[147;852;360],即A=123456B=240135D=147852360則其乘除的結(jié)果見下表。算式結(jié)果A*B???>*.(內(nèi)階數(shù)必須相等)A’*B6162092325123030A*B’10222849D\A???>\.(行數(shù)必須相等)D\A’-0.037000.51851.0000-0.148100.40740.07410.00000.74070.40740.00003、矩陣的乘方和冪次函數(shù) 中只有運(yùn)算符*、/、\、^和指數(shù)函數(shù)、對(duì)數(shù)函數(shù)、開方函數(shù)是把矩陣作為一個(gè)整體來運(yùn)算的,其他所有的函數(shù)都是對(duì)矩陣中的元素分別進(jìn)行運(yùn)算的,稱為“元素群運(yùn)算”,將在后面討論。 (1)冪次運(yùn)算時(shí),指數(shù)和底數(shù)不能同時(shí)為矩陣,或者說指數(shù)和底數(shù)至少一個(gè)必須為標(biāo)量; (2)指數(shù)或底數(shù)為矩陣時(shí),必須是方陣,以保證矩陣相乘的內(nèi)階數(shù)相等; (3)注意:、、都是針對(duì)矩陣的運(yùn)算,而、、是針對(duì)矩陣元素的群運(yùn)算,不要混淆。下面來看一些矩陣運(yùn)算的示例,其中[147;852;360][12;34]即D=147852360s=1234鍵入語句輸出結(jié)果說明D^2546615546966514233按矩陣運(yùn)算2.^D2161282563248641按元素群運(yùn)算D^s???>^.底數(shù)和指數(shù)不能同時(shí)為矩陣u1(s)0.5537+0.4644i0.8070-0.2124i1.2104-0.3186i1.7641+0.1458i按矩陣運(yùn)算u1*u1檢驗(yàn)u2(s)1.00001.41421.73212.0000按元素群運(yùn)算u2*u2≠s,u2.*u2v1(s)51.969074.7366112.1048164.0738按矩陣運(yùn)算(v1)v2(s)2.71837.389120.085554.5982按元素群運(yùn)算(v1)(D)1.2447-0.91702.82551.60442.5760-1.9132-0.75391.13721.6724按矩陣運(yùn)算(D)01.38631.94592.07941.60940.69311.09861.7918按元素群運(yùn)算4、矩陣結(jié)構(gòu)形式的提取及變換設(shè)矩陣[8160;3571;4922]即A=816035714922函數(shù)名功能語句結(jié)果矩陣左右翻轉(zhuǎn)(A)061817532294矩陣上下翻轉(zhuǎn)(A)492235718160階數(shù)重組(元素總數(shù)不變)(A,2,6)845621319702取矩陣的左下三角部分(A)800035004920取矩陣的右上三角部分(A)816005710022:將元素按列取出排成一排(:)’B=834159672012(三)元素群運(yùn)算1、數(shù)組及其賦值數(shù)組通常是指單行或單列的矩陣。提供兩種為等間隔數(shù)組賦值的簡(jiǎn)易方法。 (1)用兩個(gè)冒號(hào)組成等增量語句,其格式為:[初值:增量:終值]或者初值:增量:終值。如:鍵入 [0:0.02:1]或0:0.02:1得t=00.20000.40000.60000.80001.0000鍵入 [1035]或1035得t=10741-2-5當(dāng)增量為1時(shí),該增量可以略去不寫,變成[初值:終值]或初值:終值。如鍵入 1:6或者[1:6]t=123456 (2)用函數(shù)。調(diào)用格式為:(初值,終值,點(diǎn)數(shù))。如:鍵入 (11010)得=12345678910即將1到10之間等分為10個(gè)點(diǎn),或者說等分為9份。2、元素群的四則運(yùn)算和冪次運(yùn)算 元素群運(yùn)算也就是矩陣中所有元素按照單個(gè)元素進(jìn)行運(yùn)算。在運(yùn)算符*、/、\、^前加上一個(gè)點(diǎn)符號(hào)“.”,就表示做元素群運(yùn)算。參及元素群運(yùn)算的兩個(gè)矩陣必須是同階的(只有標(biāo)量除外,它會(huì)自動(dòng)擴(kuò)展為同階矩陣參及運(yùn)算)。設(shè)[1,2,3][4,5,6]運(yùn)算式輸出結(jié)果.*YZ=41018.\YZ=4.00002.50002.0000.^YZ=132729.^2Z=1492.^[XY]Z=248163264(四)運(yùn)算符中的數(shù)學(xué)運(yùn)算符名稱說明名稱說明+-矩陣加,矩陣減*矩陣乘/\矩陣右除,矩陣左除^矩陣求冪.*.^群乘,群求冪.\數(shù)組右除,數(shù)組左除'.'共軛轉(zhuǎn)置,轉(zhuǎn)置=賦值中的比較和邏輯運(yùn)算符名稱說明名稱說明等于不等于>>=大于,大于等于<<=小于,小于等于&及|或~非()a和b異或(a)a中有元素非零則為真(a)a中所有元素都非零則為真1.3M主程序文件()(主程序):用戶為解決特定問題而編制主程序文件()(主程序):用戶為解決特定問題而編制函數(shù)文件()(子程序):必須由其他M文件調(diào)用; 往往具有一定的通用性M文件由語句構(gòu)成的文本文件,以m作為文件擴(kuò)展名;是碼文本文件,可以直接閱讀并用任何編輯器來建立。行命令模式:鍵入一行命令后,讓系統(tǒng)立即執(zhí)行該命令。缺點(diǎn):程序可讀性差,難以存儲(chǔ)。運(yùn)行模式程序文件模式:可存儲(chǔ),尤其適于復(fù)雜問題一、主程序文件1、格式及要求(1)程序開頭最開始一般是注釋行,說明程序用途、對(duì)輸入數(shù)據(jù)的要求等。注釋行必須以%開始,表明是注釋行而不是命令行,計(jì)算機(jī)不會(huì)處理以%開頭的任何內(nèi)容。當(dāng)然,在命令行后也可以%引導(dǎo)注釋語句;注釋可以用漢字。規(guī)定,在鍵入“文件名”時(shí),屏幕上會(huì)將該文件中以%起頭的最前面幾行的內(nèi)容顯示出來,使用戶知道如何使用。程序命令部分以、等語句開始,用來清除掉工作空間中原有的變量和圖形,避免其他已執(zhí)行的程序殘留數(shù)據(jù)對(duì)本程序的影響。(2)程序主體如果文件中有在子程序中及主程序共用的全局變量,應(yīng)在程序的起始部分注明。其語句是: 變量名1 變量名2 …為改善可讀性,應(yīng)注意流程控制語句的縮進(jìn)及及的對(duì)應(yīng)關(guān)系。程序中必須都用半角英文字母和符號(hào)(只有引號(hào)括住的部分和%號(hào)后的內(nèi)容可用漢字),否則程序執(zhí)行不通甚至?xí)罊C(jī),因此一般在鍵入程序時(shí),最好從頭到尾用英文,在程序調(diào)試完畢后再插入漢字。(3)文件名及文件存儲(chǔ)按照標(biāo)志符要求起文件名,并加上后綴m。文件名即為的調(diào)用命令。文件名中不允許用漢字。存儲(chǔ)目錄應(yīng)位于的搜索路徑下。的搜索路徑不應(yīng)出現(xiàn)漢字路徑名。(4)程序執(zhí)行完成主程序文件編制后,在的命令窗中鍵入此程序的文件名后,系統(tǒng)就會(huì)執(zhí)行文件中的程序,主程序文件中的語句將對(duì)工作空間中的所有數(shù)據(jù)進(jìn)行運(yùn)算操作。2、示例列出求素?cái)?shù)的程序。素?cái)?shù)即為只能被它自身和1除凈的數(shù)。程序如下:%求素?cái)?shù)()的程序 %清除工作空間中原有的變量和圖形(‘’)2; %列出從2到N的全部自然數(shù)2(N) %依次列出除數(shù)(最大到N的平方根) (()0&); %找到能被u除凈而u不等于x的數(shù)的序號(hào)x(n)=[]; %剔除該數(shù) %循環(huán)結(jié)束,顯示結(jié)果以為名存入系統(tǒng)即可執(zhí)行。給出40,結(jié)果為235711131719232931373、常用的人機(jī)交互命令 在執(zhí)行主程序文件時(shí),往往希望在適當(dāng)?shù)牡胤綄?duì)程序的運(yùn)行進(jìn)行觀察或者干預(yù)(尤其在調(diào)試程序的時(shí)候),這時(shí)就需要人機(jī)交互命令。介紹常用的下面幾條:(1)('提示符’) 程序執(zhí)行到此處暫停,在屏幕上顯示引號(hào)中的字符串。要求用戶輸入數(shù)據(jù)。如程序?yàn)?‘’),則會(huì)在屏幕上顯示,輸入的數(shù)據(jù)將賦給X。數(shù)據(jù)輸入后,程序繼續(xù)運(yùn)行。命令也可以接受字符,其格式為(‘提示符’,’s’),此時(shí)Y將等于輸入的字符串。(2)(n) 程序執(zhí)行到此處,暫停n秒,再繼續(xù)執(zhí)行。如果沒有括號(hào)參數(shù),則等待用戶鍵入任意鍵后才繼續(xù)執(zhí)行。(3)() 一般情況下,M文件中的命令不會(huì)顯示在屏幕上。而在命令之后,會(huì)在執(zhí)行每行程序前先顯示其內(nèi)容。(4) 程序執(zhí)行到此處暫停,在屏幕上顯示字符K,并把程序的輸入和執(zhí)行權(quán)交給用戶(鍵盤)。用戶可以像在普通命令窗口中那樣進(jìn)行任何操作(例如,檢查中間結(jié)果等)。如果需要系統(tǒng)恢復(fù)運(yùn)行原來的程序,只需要鍵入。在M文件中設(shè)置該命令,有利于進(jìn)行程序調(diào)試以及臨時(shí)修改變量?jī)?nèi)容。(5) 強(qiáng)行終止程序的運(yùn)行。當(dāng)程序有錯(cuò)運(yùn)行時(shí)間太長(zhǎng)時(shí),可用此方法終止。二、函數(shù)文件1、格式特征(1)由起頭;(2)后跟函數(shù)名,且必須及文件名相同;(3)可以有輸入輸出變量進(jìn)行變量傳遞;(4)除非用聲明,程序中的變量均為局部變量,不保存在工作空間中。(5)在鍵入“文件名”時(shí),屏幕上顯示的內(nèi)容是位于語句后對(duì)文件的注釋部分(而主程序文件時(shí)顯示的內(nèi)容是文件罪開頭的注釋語句)。2、示例設(shè)已有函數(shù)文件鍵入得到(x)求平均值。對(duì)于向量,(x)返回該向量x中各元素的平均值%對(duì)于矩陣,(x)是一個(gè)包含各列元素平均值的行向量[](x);1M; %處理單行向量(x)分析:文件的第一條語句定義了函數(shù)名、輸入變量x以及輸出變量y。如果沒有這條語句,該文件就成為程序文件,而不再是函數(shù)文件。輸入變量和輸出變量都可以由若干個(gè),但必須在第一條語句中明確列出。 語句后由%引導(dǎo)的注釋部分,會(huì)在命令后顯示于命令窗口中。 變量都是函數(shù)的局部變量,當(dāng)文件執(zhí)行完畢,這些變量值會(huì)自動(dòng)消失,不保存在工作空間中。如果在該文件執(zhí)行前,工作空間中已經(jīng)有同名的變量,系統(tǒng)會(huì)把兩者看作各自無關(guān)的變量,不會(huì)混淆。這樣,調(diào)用子程序時(shí)就不用考慮其中的變量及程序變量沖突的問題了。如果希望把兩者看成同一變量,則必須在主程序和子程序中都加入語句,對(duì)此共同變量進(jìn)行聲明。 在給輸入變量x賦值時(shí),應(yīng)把x代換成主程序中的已知變量。三、文件編輯器及程序調(diào)試提供的編輯器把編輯及調(diào)試結(jié)合在一起。一般來說,主程序比較好調(diào)試,因?yàn)椴铄e(cuò)能力很強(qiáng),配合工作空間中變量的保存和顯示功能,不需要專門的調(diào)試命令,調(diào)試也可以很方便地進(jìn)行。需要用調(diào)試命令的主要是函數(shù)程序,因?yàn)樵诤瘮?shù)程序出錯(cuò)而停機(jī)時(shí),其變量不被保存。雖然它也會(huì)指出出錯(cuò)的語句,但是因?yàn)樽映绦蛑械淖兞吭诔绦驁?zhí)行完畢后會(huì)自動(dòng)消失,其他現(xiàn)場(chǎng)數(shù)據(jù)都無記錄,會(huì)給調(diào)試帶來很大困難。解決此問題可以采用下列措施:把某些分號(hào)改為逗號(hào),使中間結(jié)果能夠顯示在屏幕上,作為差錯(cuò)的依據(jù)。在子程序中適當(dāng)部位加命令。此處,系統(tǒng)會(huì)暫停而等待用戶鍵入命令。這時(shí),子程序中的變量還存在于工作空間中,可以對(duì)它們進(jìn)行檢查。將函數(shù)文件的第一行前加%號(hào),使它成為程序文件,進(jìn)行初步調(diào)試。第一行中的輸入變量可改為或者賦值語句來輸入,調(diào)試好后再改回函數(shù)文件。共有11條調(diào)試命令,如設(shè)置斷點(diǎn),清除斷點(diǎn)等。一般來說,當(dāng)程序不太長(zhǎng)時(shí),用調(diào)試命令反而麻煩。實(shí)驗(yàn)名稱:利用模擬點(diǎn)電荷電勢(shì)的分布實(shí)驗(yàn)?zāi)康?.熟悉單個(gè)點(diǎn)電荷及一對(duì)點(diǎn)電荷的電勢(shì)分布情況;2.學(xué)會(huì)使用進(jìn)行數(shù)值計(jì)算,并繪出相應(yīng)的圖形;二、實(shí)驗(yàn)原理根據(jù)庫侖定律:在真空中,兩個(gè)靜止點(diǎn)電荷之間的作用力及這兩個(gè)電荷的電量乘積成正比,及它們之間距離的平方成反比,作用力的方向在兩個(gè)電荷的連線上,兩電荷同號(hào)為斥力,異號(hào)為吸引力,它們之間的力滿足:(式1)由電場(chǎng)強(qiáng)度的定義可知:(式2)對(duì)于點(diǎn)電荷,根據(jù)場(chǎng)論基礎(chǔ)中的定義,有勢(shì)場(chǎng)的勢(shì)函數(shù)為(式3)在中,由以上公式算出各點(diǎn)的電勢(shì),可以用自帶的庫函數(shù)繪出相應(yīng)的電勢(shì)分布情況。三、基本語法(一)標(biāo)識(shí)符及數(shù)標(biāo)識(shí)符是標(biāo)志變量名、常量名、函數(shù)名和文件名的字符串的總稱。(二)矩陣及其元素的賦值賦值就是把數(shù)賦予代表常量或變量的標(biāo)識(shí)符。中的變量或常量都代表矩陣,標(biāo)量應(yīng)看作1×1價(jià)的矩陣。賦值語句的一般形式為變量=表達(dá)式(或數(shù))列如,輸入語句[123;456;789]則顯示結(jié)果為123456789輸入[123456789]結(jié)果為123456789可以看出,矩陣的值放在方括號(hào)中,同一行中各元素之間以逗號(hào)或空格分開,不同行的元素以分號(hào)隔開。語句的結(jié)尾可用回車或逗號(hào)“,”,此時(shí)會(huì)立即顯示運(yùn)算結(jié)果;如果不希望顯示結(jié)果,就以分號(hào)“;”結(jié)尾再回車,此時(shí)運(yùn)算仍然執(zhí)行,只是不作顯示。變量的元素用圓括號(hào)“()”中的數(shù)字(也稱為下標(biāo))來注明,一維矩陣(也稱數(shù)組)中的元素用一個(gè)下標(biāo)表示,二維矩陣可有兩個(gè)下標(biāo)數(shù),以逗號(hào)分開。在中可以單獨(dú)給元素賦值,例如,a(2,3)=6(2)=2等。(三)元素群運(yùn)算把n×m矩陣中的每個(gè)元素當(dāng)作對(duì)象,成群地執(zhí)行某種運(yùn)算,稱為元素群運(yùn)算。元素群運(yùn)算能大大簡(jiǎn)化編程,提高運(yùn)算的效率,這是優(yōu)于其它許多語言的一個(gè)特色。1、數(shù)組及其賦值數(shù)組通常是指單行或單列的矩陣,一個(gè)N階數(shù)組就是1×N或N×1階矩陣。N階數(shù)組可以表示N維向量。在求某些函數(shù)值或曲線時(shí),常常要設(shè)定自變量的一系列值,例如,設(shè)間隔n在x軸上從-3到3之間,每隔1取一個(gè)點(diǎn),共7個(gè)點(diǎn),這是1×7階的數(shù)組。如果逐點(diǎn)給它賦值,將非常麻煩。提供了兩種給等間隔數(shù)組賦值的簡(jiǎn)易方法。(1)用兩個(gè)冒號(hào)組成等增量語句,其格式為[初值:增量:終值]。例如,鍵入[-3:1:3]得3-2-10123當(dāng)然增量為1時(shí),這個(gè)增量值是可以略去的。(2)函數(shù)表述等距離分割,其格式為(初值,終值,點(diǎn)數(shù))。例如鍵入(-3,3,7)得3-2-10123在x軸上-3和3實(shí)際上是一個(gè)點(diǎn),所以這個(gè)命令是把x軸分為7份。第三個(gè)變?cè)部梢圆粚?,此時(shí)取默認(rèn)值100.2、元素群的四則運(yùn)算和冪次運(yùn)算元素群運(yùn)算也就是單個(gè)元素之間的運(yùn)算。為了及矩陣作為整體的運(yùn)算符號(hào)相區(qū)別,要在運(yùn)算符“*”、“/”、“\”、“^”前加一個(gè)點(diǎn)符號(hào)“.”,以表示進(jìn)行元素群運(yùn)算。矩陣的加減法本來就是對(duì)元素進(jìn)行的,故不再有元素群運(yùn)算符。參及元素群運(yùn)算的兩個(gè)矩陣必須是同價(jià)的(標(biāo)量除外)。下列的例子可以說明利用元素群運(yùn)算的優(yōu)越性。例如,要求列出一個(gè)三角函數(shù)表。這在中只要一下兩個(gè)語句鍵入[0:0.1:4]’;[x,(x),(x),(x)]第一條語句把數(shù)組x賦值,經(jīng)轉(zhuǎn)置后成為一個(gè)列向量。因?yàn)?函數(shù)都對(duì)元素群有效,得出的都是同階的列向量。第二條語句把4個(gè)列向量組成一個(gè)矩陣,進(jìn)行顯示。得001.000000.10000.09980.99500.10030.20000.19870.98010.20270.30000.29550.95530.30930.40000.38940.92110.42280.50000.47940.87760.54630.60000.56460.82530.68410.70000.64420.76480.8432第一列是x,以下各列依次是(x),(x),(x)。語句語句的結(jié)構(gòu)形式為初值:增量:終值語句組A,即它把語句組A反復(fù)執(zhí)行N次。在每次執(zhí)行時(shí)程序中k值不同??梢运愠鲅h(huán)次數(shù)為1+(終值—初值)/增量用語句求三角函數(shù)表的程序?yàn)?:0.1:4([x,(x),(x),(x)]);所得結(jié)果將和上個(gè)例題中的答案相同??梢钥闯?,的元素群運(yùn)算功能及一個(gè)循環(huán)相當(dāng),由于它不需要每次檢驗(yàn)表達(dá)式,運(yùn)算速度比語句快得多。語句可以嵌套使用。四、現(xiàn)用函數(shù)介紹語言的難點(diǎn)是函數(shù)較多,僅基本部分就有700多個(gè),其中常用的近200個(gè),要盡量多記少查,以提高編程效率,而且這是終生受益的。1、線型分隔函數(shù)(,n):在及之間均分地產(chǎn)生n個(gè)點(diǎn)值,形成1×n元向量。其中是初值,是終值,n是點(diǎn)數(shù)。2、兩個(gè)變量的標(biāo)量指令[]():將向量變換為數(shù)組,這樣就可以將兩個(gè)一維向量生成兩個(gè)二維矩陣。其中,數(shù)組X的各行是向量x的拷貝,總行數(shù)為y向量的元素個(gè)數(shù);數(shù)組Y的各列是向量y的拷貝,總列數(shù)為x
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 服務(wù)中國 共享成功 浪潮培訓(xùn)理念和流程
- 《汽車音響基礎(chǔ)知識(shí)》課件
- 《教育與經(jīng)濟(jì)的關(guān)系》課件
- 少兒美術(shù)加盟合同范例
- 購物公園轉(zhuǎn)讓合同范例
- 轉(zhuǎn)讓葡萄果園合同范例
- 貨物銷毀合同范例
- 銅門采購合同范例
- 貨物配送承運(yùn)合同范例
- 外架大包合同范例
- 招標(biāo)代理及政府采購常識(shí)匯編
- 塔吊噴淋降塵系統(tǒng)施工方案
- 人工智能引論智慧樹知到課后章節(jié)答案2023年下浙江大學(xué)
- 歌曲演唱 萬疆
- 人教版六年級(jí)道德與法治上冊(cè)第四單元作業(yè)設(shè)計(jì)
- 50205-2020-鋼結(jié)構(gòu)工程施工質(zhì)量驗(yàn)收標(biāo)準(zhǔn)
- 六年級(jí)上冊(cè)美術(shù)教學(xué)設(shè)計(jì) 第15課 壯錦圖案 |廣西版
- 2023-2024學(xué)年河南省洛陽市洛龍區(qū)數(shù)學(xué)四年級(jí)第一學(xué)期期末預(yù)測(cè)試題含答案
- 項(xiàng)目管理績(jī)效考核管理辦法
- 冀教版九年級(jí)下英語單詞表(漢譯英)
- 亞馬遜跨境電商運(yùn)營與廣告實(shí)戰(zhàn)
評(píng)論
0/150
提交評(píng)論