已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
-實驗01講評、參考答案講 評未交實驗報告的同學名單數學:6人(11、12級)信科:12-04, 12-22, 13-47批改情況:問題1:不仔細,式子中出錯。問題2:提交的過程不完整。問題3:使用語句尾分號(;)不當,提交的過程中不該顯示的結果顯示。問題4:截屏窗口沒有調整大小。附參考答案:MATLAB軟件課內實驗王平實驗01 MATLAB運算基礎(第2章 MATLAB數據及其運算)一、實驗目的1. 熟悉啟動和退出MATLAB的方法。2. 熟悉MATLAB命令窗口的組成。3. 掌握建立矩陣的方法。4. 掌握MATLAB各種表達式的書寫規(guī)則以及常用函數的使用。二、實驗內容1. 數學表達式計算先求下列表達式的值,然后顯示MATLAB工作空間的使用情況并保存全部變量。1.1 計算三角函數(注意:度要轉換成弧度,e2如何給出)示例:點擊Command Window窗口右上角的,將命令窗口提出來成懸浮窗口,適當調整窗口大小。命令窗口中的執(zhí)行過程:1.2 計算自然對數,其中(提示:clc命令擦除命令窗口,clear則清除工作空間中的所有變量,使用時注意區(qū)別,慎用clear命令。 應用點乘方)命令窗口中的執(zhí)行過程:1.3 求數學表達式的一組值提示:利用冒號表達式生成a向量,求各點的函數值時用點乘運算。命令窗口中的執(zhí)行過程:1.4 求分段函數的一組值 ,其中t=0:0.5:2.5提示:用邏輯表達式求分段函數值。命令窗口中的執(zhí)行過程:1.5 對工作空間的操作接著顯示MATLAB當前工作空間的使用情況并保存全部變量提示:用到命令who, whos, save, clear, load,請參考教材相關內容。命令窗口中的執(zhí)行過程: who %顯示當前工作空間中的變量名Your variables are:a t x z1 z2 z3 z4 whos %顯示當前工作空間中的變量名及信息 Name Size Bytes Class Attributes a 1x61 488 double t 1x6 48 double x 2x2 64 double complex z1 1x1 8 double z2 2x2 64 double complex z3 1x61 976 double complex z4 1x6 48 double save varfile %生成文件varfile.mat,并將當前工作空間的變量存入其中 clear all %清除當前工作空間中的全部變量 who whos load varfile %將文件varfile.mat裝入 whoYour variables are:a t x z1 z2 z3 z4 whos Name Size Bytes Class Attributes a 1x61 488 double t 1x6 48 double x 2x2 64 double complex z1 1x1 8 double z2 2x2 64 double complex z3 1x61 976 double complex z4 1x6 48 double 2. 矩陣運算與數組運算已知:2.1 矩陣加、減和數乘運算 A+6*B和A-B+I(其中I為單位矩陣。注意:如何得到單位矩陣)命令窗口中的執(zhí)行過程:2.2 矩陣乘積和點乘積A*B和A.*B命令窗口中的執(zhí)行過程:2.3 矩陣的乘方和點乘方A3和A.3命令窗口中的執(zhí)行過程:2.4 矩陣的右除和左除A/B及BA命令窗口中的執(zhí)行過程:2.5 拼接矩陣成大的矩陣A,B和A(1,3,:);B2命令窗口中的執(zhí)行過程:3. 矩陣乘積、矩陣的子矩陣設有矩陣A和B3.1 求矩陣A和B的乘積求它們的乘積并賦給C。(提示:可簡化A的輸入,用冒號表達式、reshape、矩陣轉置)命令窗口中的執(zhí)行過程:3.2 求矩陣C的子矩陣將矩陣C的右下角32子矩陣賦給D。命令窗口中的執(zhí)行過程:3.3 查看MATLAB工作空間的使用情況命令窗口中的執(zhí)行過程:4. 完成下列數據操作4.1 求100,999之間能被21整除的數的個數提示:先利用冒號表達式,再利用find和length函數。命令窗口中的執(zhí)行過程:4.2 建立一個字符串向量,刪除其中的大寫字母提示:利用find函數和空矩陣。命令窗口中的執(zhí)行過程:三、實驗提示1.1 計算三角函數提示(注意:度要轉換成弧度,e2如何給出)提示1:示例:點擊Command Window窗口右上角的,將命令窗口提出來成懸浮窗口,適當調整窗口大小。命令窗口中的執(zhí)行過程:提示2:e2的表示請查表“2.3 常用數學函數及其含義”。用exp(2)。1.2 計算自然對數提示,其中提示1:clc命令擦除命令窗口,clear則清除工作空間中的所有變量,使用時注意區(qū)別,慎用clear命令。提示2:ln和開方的表示請查“表2.3 常用數學函數及其含義”。用log, sqrt。提示3:x2是數組運算。用x.2或x.*x。提示4:i為復數的虛數單位(j也是)。若將i作變量則其虛數單位無效,恢復用clear i。慎用i, j做變量。1.4 求分段函數的一組值提示 ,其中t=0:0.5:2.5提示:用邏輯表達式求分段函數值。提示1:參考例2.4。提示2:對于第1個分段條件表達式 0 t =0&t=1&t=2&t x=(5+cos(47*pi/180)/(1+sqrt(7)-2*i)x = 1.1980 + 0.6572i其中,pi和i都是MATLAB預先定義的變量,分別代表圓周率和虛數單位。3. 預定義變量 p18表2.1 常用的預定義變量及其含義預定義變量含義ansepspii,jinf,InfNaN,nannarginnargoutrealmaxrealminlasterrlastwar默認賦值變量機器零閾值2.2204e-016近似值虛數單位無窮大,如1/0的結果非數,如0/0,inf/inf的結果函數輸入參數個數函數輸出參數個數最大正實數最小正實數存放最新的錯誤信息存放最新的警告信息預定義變量有特定的含義,應盡量避免重新賦值。i=2 %對預定義變量重新賦值2*iclear i%恢復預定義變量2*ii = 2ans = 4ans = 0 + 2.0000i2.2.2 變量的管理 p191內存變量的顯示與刪除顯示工作空間中駐留的變量名清單及信息命令:who %顯示變量名清單whos %顯示變量名清單及信息刪除工作空間中的變量命令:clear 變量名工作空間窗口專門用于內存變量的管理。在該窗口中顯示所有內存變量的屬性。l 當選中某些變量后,再單擊Delete按鈕,將刪除這些變量。l 雙擊變量后,將進入變量編輯器??梢杂^察變量中的具體元素,也可修改具體元素。l 輸入較大矩陣時,可采用變量編輯器。2內存變量文件用MAT文件可把當前工作空間中的一些有用變量長久地保留下來,擴展名是.mat。MAT文件的生成和裝入,常用格式為:save 文件名變量名表 -append-asciiload 文件名變量名表 -asciil 文件名 可帶路徑,不需帶擴展名.mat,默認對.mat文件進行操作。l 變量名表變量名以空格分隔。省略時,保存或裝入全部變量。l -ascii 選項使文件以ASCII格式處理,省略時以二進制格式處理。l -append選項使變量追加到MAT文件中。2.2.3 數據的輸出格式 p20用十進制數表示一個常數,可采用日常記數法和科學記數法。一般情況下,內部每一個數據元素都用雙精度數表示和存儲。設置或改變數據輸出格式format命令的格式為: format 格式符格式符決定數據的輸出格式表2.2 控制數據輸出格式格式符及含義格式符含義short(默認)小數點后4位,不超過7位有效數字。大于1000的實數用5位有效數字的科學記數法long15位有效數字short e5位有效數字科學記數法long e15位有效數字科學記數法short g從short和short e選擇最佳方式long g從long和long e選擇最佳方式rat近似有理數表示hex十六進制表示+正數、負數、零分別用+、-、空格表示bank銀行格式,元、角、分表示compact輸出變量之間無空行l(wèi)oose輸出變量之間有空行可用Help format查詢例 輸出格式format4/3%當前輸出格式ans = 1.3333format long%15位有效數字形式輸出4/3ans = 1.333333333333333format rat%近似有理數表示4/3ans = 4/3 format compact%輸出變量之間沒有空行4/3ans = 4/3format loose%輸出變量之間有空行4/3ans = 4/3 format short%short為默認輸出格式2.3 矩陣的表示 p21表 矩陣操作函數及其含義函數名含 義eyeoneslinspacesub2indind2subsizelengthreshapeend 單位矩陣全1矩陣生成行向量下標轉換成序號序號轉換成下標給出矩陣的行數和列數給出矩陣行數和列數中較大者矩陣重排預定義變量,某一維末尾下標空矩陣2.3.1 矩陣的建立1. 直接輸入法從鍵盤直接輸入矩陣的元素。方法如下: 將矩陣的元素用方括號括起來,輸入元素; 同一行的元素間用空格或逗號分隔; 不同行的元素間用分號(或回車)分隔。例 A=1,2,3;4 5 6;7,8 9A = 1 2 3 4 5 6 7 8 92. 利用M文件建立矩陣對于比較大且復雜的矩陣,可專門建立一個M文件。例2.2 利用M文件建立矩陣(1) 啟動文本編輯器,輸入:MYMAT=101,102,103,104,105;201,202,203,204,205;301,302,303,304,305(2) 存盤(文件名為mymatrix.m)。(3) 在命令窗口中輸入mymatrix,即運行該M文件,就建立一個名為MYMAT的矩陣。3. 建立大矩陣(矩陣拼接)大矩陣可由方括號中的小矩陣或向量建立。 A=1,2;3,4A = 1 2 3 4 eye(2)ans = 1 0 0 1 ones(2)ans = 1 1 1 1 C=A,eye(2),ones(2),AC =12101112340111342.3.2 冒號表達式用冒號表達式產生行向量,一般格式:e1:e2:e3其中e1為初始值,e2為步長,e3為終止值上限。用linspace函數產生行向量。調用格式:linspace(a,b,n)其中a和b是第一個和最后一個元素,n是元素總數。2.3.3 矩陣的拆分1矩陣元素通過下標引用矩陣的元素,例 A=1,2,3;4,5,6A = 1 2 3 4 5 6 A(2,3)ans = 6 A(2,2)=22; AA = 1 2 3 4 22 6 A(4,5)=10; AA = 1 2 3 0 0 4 22 6 0 0 0 0 0 0 0 0 0 0 0 10采用矩陣元素的序號來引用矩陣元素。元素的序號是相應元素在內存中的排列順序。在MATLAB中,矩陣按列存儲,先第一列,再第二列,依次類推。 A=1,2,3;4,5,6A = 1 2 3 4 5 6 A(3)ans = 2 A(5)ans = 3 A(8)? Attempted to access A(8); index out of bounds because numel(A)=6.numel(A) 返回A中元素個數。序號(Index)與下標(Subscript )一一對應。以mn矩陣A為例,矩陣元素A(i,j)的序號為(j-1)*m+i。互轉換關系用sub2ind和ind2sub函數求得。A=ones(3,4)A = 1 1 1 1 1 1 1 1 1 1 1 1size(A)%給出矩陣的行數和列數ans = 3 4sub2ind(size(A),1,2)%下標(1,2)轉換為序號ans = 4i,j=ind2sub(size(A),3)%序號轉換為下標i = 3j = 1length(A)%給出矩陣行數和列數中較大者ans = 4reshape(A,m,n)在矩陣總元素保持不變的前提下,將矩陣重新排成mn矩陣。 x=1:1:12; y=reshape(x,3,4)y = 1 4 7 10 2 5 8 11 3 6 9 12 z=reshape(y,2,7)? Error using = reshapeTo RESHAPE the number of elements must not change.2. 矩陣拆分(1) 利用冒號表達式獲得子矩陣已知A為矩陣A(:,j)第j列全部元素;A(i,:)第i行的全部元素;A(i,j)第i行、第j列的元素;A(i:i+m,:)第ii+m行的全部元素;A(:,k:k+m)第kk+m列的全部元素;A(i:i+m,k:k+m)第ii+m行內,并在第kk+m列中的所有元素;A(:)將每一列元素堆疊起來,成為一個列向量。end表示某一維的末尾元素下標。A(end,:) 最后一行A(:,end) 最后一列(2) 利用空矩陣刪除矩陣的元素給變量X賦空矩陣的語句:X= 注意,X= 與clear X不同:clear是將X從工作空間中刪除,而空矩陣則存在于工作空間中,只是維數為0。2.4 MATLAB數據的運算 p262.4.1 算術運算1基本算術運算MATLAB的基本算術運算有:加減*乘/右除左除乘方注意,運算是在矩陣意義下進行的。(1) 矩陣加減運算假定矩陣A和B,則A+B和A-B實現矩陣的加減運算。運算規(guī)則是:l 若A和B的維數相同,則可以執(zhí)行矩陣的加減運算,A和B的相應元素相加減。l 若A與B的維數不相同,將給出錯誤信息。注意,A、B均不是標量。(2) 矩陣乘法 若A為mn矩陣,B為np矩陣,則C=A*B為mp矩陣。(3) 矩陣除法有兩種矩陣除法運算:左除/右除若A矩陣是非奇異方陣,則AB和B/A運算可以實現。AB等效于inv(A)*BB/A等效于B*inv(A)對于含有標量的運算,兩種除法運算的結果相同。如 3/4和43有相同的值,都等于0.75。又如 設a=10.5,25,則a/5=5a=2.1000 5.0000對于矩陣運算,一般ABB/A。(4) 矩陣的乘方一個矩陣的乘方運算可表示成Ax要求A為方陣,x為標量。2點運算有一種特殊的運算,因為其運算符是在有關算術運算符前面加點,所以叫點運算。點運算符有.*點乘./點右除.點左除.點乘方兩矩陣進行點運算是指它們的對應元素進行相關運算,要求兩矩陣的維數相同。3. MATLAB常用數學函數 p29l 函數的自變量規(guī)定為矩陣變量。l 運算法則是將函數逐項作用于矩陣的元素上。l 結果是一個與自變量同維數的矩陣。表2.3 常用數學函數及其含義 p29函數名含義三角函數sqrtloglog10log2exppow2absanglerealimagconjremmodfixfloorceilroundsigngcdlcm略平方根函數自然對數函數常用對數函數以2為底的對數函數自然指數函數2的冪絕對值函數復數的幅角復數的實部復數的虛部復數共軛運算求余數或模運算模運算向零方向取整不大于自變量的最大整數不小于自變量的最小整數四舍五入到最鄰近的整數符號函數最大公因子最小公倍數函數使用說明:(1) 三角函數以弧度為單位計算。(2) abs函數可以求實數的絕對值、復數的模、字符串的ASCII碼值。 abs(-10)ans = 10 abs(3+4i)ans = 5 abs(abc)ans = 97 98 99(3) 用于取整的函數有fix向0方向取整floor向-方向取整ceil向+方向取整round四舍五入到最鄰近的整數(4) rem(x,y)和mod(x,y)要求x,y必須為相同大小的實矩陣或為標量。rem求余數或模運算mod模運算l 當y0時rem(x,y)=x-y.*fix(x./y)mod(x,y)=x-y.*floor(x./y)l 當y=0時rem(x,0)=NaN(非數)mod(x,0)=x2.4.2 關系運算 p306種關系運算符:小于大于=大于或等于=等于=不等于運算法則:(1) 兩個標量的比較若關系成立,結果為1,否則為0。(2) 兩個同維數矩陣的比較對相同位置的元素比較。(3) 標量與矩陣的比較標量與矩陣的每一個元素比較。例2.3 建立5階方陣,判斷A的元素是否能被3整除。A=24,35,13,22,63;23,39,47,80,80;.90,41,80,29,10;45,57,85,62,21;.37,19,31,88,76P=rem(A,3)=0%判斷元素是否被3整除A = 24 35 13 22 63 23 39 47 80 80 90 41 80 29 10 45 57 85 62 21 37 19 31 88 76P = 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 02.4.3 邏輯運算 p31邏輯運算符:&與|或非運算法則:(1) 在邏輯運算中,確認非零元素為真,用1表示,零元素為假,用0表示。(2) a和b是兩個標量l a&b a,b全為非零時,結果為1,否則為0。l a|b a,b中只要有一個非零,結果為1,否則為0。l a 當a是零時,結果為1;當a非零時,結果為0。(3) 兩個運算量是同維矩陣相同位置上的元素按標量規(guī)則逐個進行。(4) 一個是標量,另一個是矩陣標量與矩陣中的每個元素之間按標量規(guī)則逐個進行。(5) 邏輯非是單目運算符,也服從矩陣運算規(guī)則。(6) 在算術、關系、邏輯運算中,算術運算優(yōu)先級最高,邏輯運算優(yōu)先級最低。例2.4 在0, 3區(qū)間,求y=sinx的值。要求: 消去負半波,即(, 2)內的函數值置0。和內取均值為。%方法1x=0:pi/100:3*pi;y=sin(x);y1=(x2*pi).*y;%消去負半波q=(xpi/3 & x7*pi/3 & x=0).*y;%消去負半波p=sin(pi/3);y2=(y=p)*p+(y A=4,15,-45,10,6;56,0,17,-45,0A = 4 15 -45 10 6 56 0 17 -45 0 find(A=10 & A=a & ch=z) %找小寫字母的位置ch(k)= A+(ch(k)-a) %小寫字母變成大寫chchar(ch) %ASCII碼矩陣轉換為字符矩陣length(k) %統(tǒng)計小寫字母的個數char(0:29;30:59;60:89;90:119;120:149)subch =ABc12revch =9gF65e4d321cBAk = 3 7 9 13ch =ABC123D4E56FG9ch =ABC123D4E56FG9ans =ABC123D4E56FG9ans = 4ans = !#$%&()*+,-./0123456789:;?ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz|?函數調用格式:eval(t)其中t為字符串。作用:把字符串的內容作為對應的MATLAB語句來執(zhí)行。表2.5 字符串處理函數及其含義函數名含 義setstrcharmat2strnum2strint2strstr2numstrcatstrcmpabs將ASCII碼值轉換成字符 同上,將代替setstr 將矩陣轉換成字符串 將數值轉換成字符串將整數轉換成字符串將字符串轉換成數值用于字符串的連接用于字符串的比較將字符轉換成ASCII碼(1) 若字符串中含有單撇號,該撇號用兩個單撇號表示。(2) 某些情況下用字符串向量表示,即用 括起來。disp(Im a teacher.)f=70;c=(f-32)/1.8;disp(Room temperature is ,.num2str(c),degrees C.)Im a teacher.Room temperature is 21.1111degrees C.2.6 結構數據和單元數據 p342.6.1 結構數據1結構矩陣的建立與引用結構矩陣 其元素可以是不同的數據類型,將一組不同屬性的數據納入到一個統(tǒng)一的變量名下進行管理。建立結構矩陣可采用給結構成員賦值的辦法。格式為:結構矩陣名.成員名=表達式其中表達式應理解為矩陣表達式。例 建立含有3個元素的結構矩陣 a(1).x1=10; a(1).x2=liu; a(1).x3=11,21;34,78;a(2).x1=12; a(2).x2=wang; a(2).x3=34,191;27,578; a(3).x1=14;a(3).x2=cai; a(3).x3=13,890;67,231; a(2).x3%引用矩陣元素a(2)的成員x3ans = 34 191 27 578 a(2)%引用矩陣元素a(2)ans = x1: 12 x2: wang x3: 2x2 double a%引用結構矩陣aa = 1x3 struct array with fields: x1 x2 x32結構成員的修改 p35可由需要增加或刪除結構成員。給a中任意一個元素增加成員x4:a(1).x4=410075;但其他成員
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025版桶裝水電商銷售與物流配送合作協(xié)議3篇
- AAA 玻璃有限公司煙氣余熱發(fā)電項目可行性研究報告
- 酒店行業(yè)助理的工作概述
- 幼兒園工作總結愛心傳遞溫馨舒適
- 二零二五年度:我國行政合同中優(yōu)益權在公共服務領域的應用論文3篇
- 2025版物業(yè)糾紛調解與法律服務合作協(xié)議2篇
- 二零二五年度個人版權保護與維權服務合同2篇
- 2025版食材配送與餐飲加盟合作合同模板3篇
- 二零二五年度能源合同能源管理服務協(xié)議范本2篇
- 聚氨酯發(fā)泡保溫施工方案
- 2024-2025學年湖北省武漢市部分重點中學高一上學期期末聯考數學試卷(含答案)
- 學校對口幫扶工作計劃
- 做投標文件培訓
- 9.4+跨學科實踐:制作簡易活塞式抽水機課件+-2024-2025學年人教版物理八年級下冊
- 建筑工程工作計劃
- 2014新PEP小學英語六年級上冊-Unit5-What-does-he-do復習課件
- 2025年中國國際投資促進中心限責任公司招聘管理單位筆試遴選500模擬題附帶答案詳解
- 2023年上海各區(qū)初三數學一模卷
- GB 1886.232-2016食品安全國家標準食品添加劑羧甲基纖維素鈉
- 《港口管理》課件綜述
- 湖北工業(yè)大學學報投稿模板
評論
0/150
提交評論