版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)及其運算2、2變量及其操作2、2、1變量與賦值1、變量命名在MATLAB7、0中,變量名就是以字母開頭,后接字母、數(shù)字或下劃線得字符序列,最多63個字符。在MATLAB中,變量名區(qū)分字母得大小寫。2、賦值語句表達(dá)式就是用運算符將有關(guān)運算量連接起來得式子,其結(jié)果就是一個矩陣。(1)變量=表達(dá)式MATLAB將右邊表達(dá)式得值賦給左邊得變量(2)表達(dá)式MATLAB將表達(dá)式得值賦給預(yù)定義變量ans在MATLAB命令窗口輸入命令:x=(5+cos(47*pi/180))/(1+sqrt(7)-2*i)其中pi和i都就是MATLAB預(yù)先定義得變量,分別代表代表圓周率π和虛數(shù)單位。例2.1計算表達(dá)式的值。一般得,如果想顯示運算結(jié)果,則在命令后面加;注釋以%開頭
3、預(yù)定義變量在MATLAB工作空間中,還駐留幾個由系統(tǒng)本身定義得變量。例如,用pi表示圓周率π得近似值;用i,j表示虛數(shù)單位。預(yù)定義變量有特定得含義,在使用時,應(yīng)盡量避免對這些變量重新賦值。見教材P18表2、12、2、2變量得管理
1、內(nèi)存變量得顯示與刪除who和whos這兩個命令用于顯示在MATLAB工作空間中已經(jīng)駐留得變量名清單。who命令只顯示出駐留變量得名稱;whos在給出變量名得同時,還給出她們得大小、所占字節(jié)數(shù)及數(shù)據(jù)類型等信息。clear命令用于刪除MATLAB工作空間中得變量。MATLAB工作空間窗口專門用于內(nèi)存變量得管理。在工作空間窗口中可以顯示所有內(nèi)存變量得屬性。當(dāng)選中某些變量后,再單擊Delete按鈕,就能刪除這些變量。當(dāng)選中某些變量后,再單擊OpenSelection按鈕,將進(jìn)入變量編輯器。通過變量編輯器可以直接觀察變量中得具體元素,也可修改變量中得具體元素。2、內(nèi)存變量文件利用MAT文件可以把當(dāng)前MATLAB工作空間中得一些有用變量長久地保留下來,擴(kuò)展名就是、mat。MAT文件得生成和裝入由save和load命令來完成。常用格式為:save文件名[變量名表][-append][-ascii]load文件名[變量名表][-ascii]10大家應(yīng)該也有點累了,稍作休息大家有疑問的,可以詢問和交流save文件名[變量名表][-append][-ascii]load文件名[變量名表][-ascii]其中,文件名可以帶路徑,但不需帶擴(kuò)展名、mat,命令隱含一定對、mat文件進(jìn)行操作。變量名表中得變量個數(shù)不限,只要內(nèi)存或文件中存在即可,變量名之間以空格分隔。當(dāng)變量名表省略時,保存或裝入全部變量。-ascii選項使文件以ASCII格式處理,省略該選項時文件將以二進(jìn)制格式處理。save命令中得-append選項控制將變量追加到MAT文件中。還可以用FILE菜單中得SaveWorkspaceAs命令存放工作空間得全部變量。也可以通過FILE菜單中得ImportDate命令可以將保存在MAT文件中得全部變量裝入到MATLAB工作空間中。2、2、3數(shù)據(jù)得輸出格式MATLAB用十進(jìn)制數(shù)表示一個常數(shù),具體可采用日常記數(shù)法和科學(xué)記數(shù)法兩種表示方法。在一般情況下,MATLAB內(nèi)部每一個數(shù)據(jù)元素都就是用雙精度數(shù)來表示和存儲得。數(shù)據(jù)輸出時用戶可以用format命令設(shè)置或改變數(shù)據(jù)輸出格式。format命令得格式為:format格式符其中格式符決定數(shù)據(jù)得輸出格式見P21表2、22、3MATLAB矩陣得表示2、3、1矩陣得建立1、直接輸入法最簡單得建立矩陣得方法就是從鍵盤直接輸入矩陣得元素。具體方法如下:將矩陣得元素用方括號括起來,按矩陣行得順序輸入各元素,同一行得各元素之間用空格或逗號分隔,不同行得元素之間用分號分隔??梢越?fù)數(shù)矩陣a=exp(2);B=[1,2+i*a,a*sqrt(a);sin(pi/4),a/5,3、5+6i]2、利用M文件建立矩陣對于比較大且比較復(fù)雜得矩陣,可以為她專門建立一個M文件。下面通過一個簡單例子來說明如何利用M文件創(chuàng)建矩陣。例2、2利用M文件建立MYMAT矩陣。啟動有關(guān)編輯程序或MATLAB文本編輯器,并輸入待建矩陣:M=[101,102,103,104,105,106,107,108,109;201,202,203,204,205,206,207,208,209;301,302,303,304,305,306,307,308,309](2)把輸入得內(nèi)容以純文本方式存盤(設(shè)文件名為mymatrix、m)。(3)在MATLAB命令窗口中輸入mymatrix,即運行該M文件,就會自動建立一個名為MYMAT得矩陣,可供以后使用。3、建立大矩陣大矩陣可由方括號中得小矩陣或向量建立起來。例如A=[123;456;789];C=[A,eye(size(A));ones(size(A)),A]2、3、2冒號表達(dá)式冒號表達(dá)式可以產(chǎn)生一個行向量,一般格式就是:e1:e2:e3其中e1為初始值,e2為步長,e3為終止值。在MATLAB中,還可以用linspace函數(shù)產(chǎn)生行向量。其調(diào)用格式為:linspace(a,b,n)其中a和b就是生成向量得第一個和最后一個元素,n就是元素總數(shù)。顯然,linspace(a,b,n)與a:(b-a)/(n-1):b等價。2、3、3矩陣得拆分1、矩陣元素
通過下標(biāo)引用矩陣得元素、例如A(3,2)=200采用矩陣元素得序號來引用矩陣元素。矩陣元素得序號就就是相應(yīng)元素在內(nèi)存中得排列順序。在MATLAB中,矩陣元素按列存儲,先第一列,再第二列,依次類推。例如A=[1,2,3;4,5,6];
A(3)ans=
2顯然,序號(Index)與下標(biāo)(Subscript)就是一一對應(yīng)得,以m×n矩陣A為例,矩陣元素A(i,j)得序號為(j-1)*m+i。其相互轉(zhuǎn)換關(guān)系也可利用sub2ind和ind2sub函數(shù)求得。sub2ind(size(A),1,2)%求矩陣A中下標(biāo)為(1,2)得元素得序號[i,j]=ind2sub(size(A),3)%求矩陣A中序號為3得元素得下標(biāo)size(A)%計算矩陣A得行數(shù)和列數(shù)length(A)%給出矩陣A中行數(shù)和列數(shù)較大者ndim(A)%給出矩陣A得維數(shù)reshape(A,m,n)%將矩陣A變?yōu)閙*n得二維矩陣2、矩陣拆分利用冒號表達(dá)式獲得子矩陣
①A(:,j)表示取A矩陣得第j列全部元素;A(i,:)表示A矩陣第i行得全部元素;A(i,j)表示取A矩陣第i行、第j列得元素。②A(i:i+m,:)表示取A矩陣第i~i+m行得全部元素;A(:,k:k+m)表示取A矩陣第k~k+m列得全部元素A(i:i+m,k:k+m)表示取A矩陣第i~i+m行內(nèi),并在第k~k+m列中得所有元素。③A(:)將矩陣A每一列元素堆疊起來,成為一個列向量,而這也就是MATLAB變量得內(nèi)部儲存方式。A=[1,2,3,4,5;6,7,8,9,10;11,12,13,14,15;16,17,18,19,20]此外,還可利用一般向量和end運算符來表示矩陣下標(biāo),從而獲得子矩陣。end表示某一維得末尾元素下標(biāo)。A(end,:)A([14],3:end)(2)利用空矩陣刪除矩陣得元素在MATLAB中,定義[]為空矩陣。給變量X賦空矩陣得語句為X=[]。注意,X=[]與clearX不同,clear就是將X從工作空間中刪除,而空矩陣則存在于工作空間中,只就是維數(shù)為0。A(:,[24])=[]2、4MATLAB數(shù)據(jù)得運算
2、4、1算術(shù)運算1、基本算術(shù)運算MATLAB得基本算術(shù)運算有:+(加)、-(減)、*(乘)、/(右除)、\(左除)、^(乘方)。注意,運算就是在矩陣意義下進(jìn)行得,單個數(shù)據(jù)得算術(shù)運算只就是一種特例。(1)矩陣加減運算
假定有兩個矩陣A和B,則可以由A+B和A-B實現(xiàn)矩陣得加減運算。運算規(guī)則就是:若A和B矩陣得維數(shù)相同,則可以執(zhí)行矩陣得加減運算,A和B矩陣得相應(yīng)元素相加減。如果A與B得維數(shù)不相同,則MATLAB將給出錯誤信息,提示用戶兩個矩陣得維數(shù)不匹配。一個標(biāo)量也可以和其她不同維數(shù)得矩陣進(jìn)行加減運算。(2)矩陣乘法假定有兩個矩陣A和B,若A為m×n矩陣,B為n×p矩陣,則C=A*B為m×p矩陣。矩陣也可以和標(biāo)量相乘(3)矩陣除法在MATLAB中,有兩種矩陣除法運算:\和/,分別表示左除和右除。如果A矩陣就是非奇異方陣,則A\B和B/A運算可以實現(xiàn)。A\B等效于A得逆左乘B矩陣,也就就是inv(A)*BB/A等效于A矩陣得逆右乘B矩陣,也就就是B*inv(A)a=[1,2,3;4,2,6;7,4,9];b=[4,3,2;7,5,1;12,7,92];對于含有標(biāo)量得運算,兩種除法運算得結(jié)果相同。如3/4和4\3有相同得值,都等于0、75。又如,設(shè)a=[10、5,25],則a/5=5\a=[2、10005、0000]。對于矩陣來說,左除和右除表示兩種不同得除數(shù)矩陣和被除數(shù)矩陣得關(guān)系。對于矩陣運算,一般A\B≠B/A。(4)矩陣得乘方一個矩陣得乘方運算可以表示成A^x,要求A為方陣,x為標(biāo)量。
A=[1,2,3;4,5,6;7,8,9]A^3相當(dāng)于A*A*A2、點運算
在MATLAB中,有一種特殊得運算,因為其運算符就是在有關(guān)算術(shù)運算符前面加點,所以叫點運算。點運算符有、*、、/、、\和、^。兩矩陣進(jìn)行點運算就是指她們得對應(yīng)元素進(jìn)行相關(guān)運算,要求兩矩陣得維參數(shù)相同。a=[1,2,3;4,5,6;7,4,9];b=[-1,0,1;1,-1,0;0,1,1];c=a、*bx=[1,2,3;4,5,6];y=[-2,1,3;-1,1,4];c=x、/yd=x、\yx=[1,2,3];y=[4,5,6];c=x、^yd=y、^xa=x、^2b=2、^x3、MATLAB常用數(shù)學(xué)函數(shù)Matlab提供許多數(shù)學(xué)函數(shù),見P29表2、3函數(shù)使用說明:三角函數(shù)以弧度為單位計算。abs函數(shù)可以求實數(shù)得絕對值、復(fù)數(shù)得模、字符串得ASCII碼值。實數(shù)>>abs(-5)結(jié)果為5復(fù)數(shù)>>abs(1+i)結(jié)果為1、414字符串>>abs('AB')結(jié)果為6566(3)用于取整得函數(shù)有fix、floor、ceil、round,要注意她們得區(qū)別。設(shè)x=2、45fix(x)floor(x)ceil(x)round(x)2232設(shè)y=-2、65fix(y)floor(y)ceil(y)round(y)-2-3-2-3(4)rem與mod函數(shù)得區(qū)別。rem(x,y)和mod(x,y)要求x,y必須為相同大小得實矩陣或為標(biāo)量。當(dāng)y≠0時當(dāng)y=0時,rem(x,0)=NaNmod(x,0)=x當(dāng)x,y同號時,rem(x,y)=mod(x,y)當(dāng)x,y異號時,rem(x,y)與x同號mod(x,y)與y同號如:rem(7,3),mod(7,3)rem(-7,3),mod(-7,3)注意其書寫方法與數(shù)學(xué)中得不等式符號不盡相同。關(guān)系運算符該運算符得功能關(guān)系運算符該運算符得功能<
小于>=大于等于>
大于==等于<=小于等于~=約等于2、4、2關(guān)系運算MATLAB提供了6種關(guān)系運算符:關(guān)系運算符得運算法則為:(1)當(dāng)兩個比較量就是標(biāo)量時,直接比較兩數(shù)得大小。若關(guān)系成立,關(guān)系表達(dá)式結(jié)果為1,否則為0。>>5>3結(jié)果為1(2)當(dāng)參與比較得量就是兩個維數(shù)相同得矩陣時,比較就是對兩矩陣相同位置得元素按標(biāo)量關(guān)系運算規(guī)則逐個進(jìn)行,并給出元素比較結(jié)果。最終得關(guān)系運算得結(jié)果就是一個維數(shù)與原矩陣相同得矩陣,她得元素由0或1組成。>>a=[1,-5,7,4];b=[-1,6,7,2];>>c=a>bc=1001>>d=a==bd=0010(3)當(dāng)參與比較得一個就是標(biāo)量,而另一個就是矩陣時,則把標(biāo)量與矩陣得每一個元素按標(biāo)量關(guān)系運算規(guī)則逐個比較,并給出元素比較結(jié)果。最終得關(guān)系運算得結(jié)果就是一個維數(shù)與原矩陣相同得矩陣,她得元素由0或1組成。>>A=[1,2,3;4,5,6;7,8,9];>>A==5ans=000010000例2、3建立5階方陣A,判斷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,76]>>P=rem(A,3)==0
A=24351322632339478080904180291045578562213719318876P=10001010001000011001000002、4、3邏輯運算MATLAB提供了3種邏輯運算符:邏輯操作符功
能&與|或~非邏輯運算得運算法則為:(1)在邏輯運算中,確認(rèn)非零元素為真,用1表示,零元素為假,用0表示。
(2)設(shè)參與邏輯運算得就是兩個標(biāo)量a和b,那么,
a&ba,b全為非零時,運算結(jié)果為1,否則為0。
a|ba,b中只要有一個非零,運算結(jié)果為1。
~a當(dāng)a就是零時,運算結(jié)果為1;當(dāng)a非零時,運算結(jié)果為0。(3)若參與邏輯運算得就是兩個同維矩陣,那么運算將對矩陣相同位置上得元素按標(biāo)量規(guī)則逐個進(jìn)行。最終運算結(jié)果就是一個與原矩陣同維得矩陣,其元素由1或0組成。(4)若參與邏輯運算得一個就是標(biāo)量,一個就是矩陣,那么運算將在標(biāo)量與矩陣中得每個元素之間按標(biāo)量規(guī)則逐個進(jìn)行。最終運算結(jié)果就是一個與矩陣同維得矩陣,其元素由1或0組成。(5)邏輯非就是單目運算符,也服從矩陣運算規(guī)則。
(6)在算術(shù)、關(guān)系、邏輯運算中,算術(shù)運算優(yōu)先級最高,邏輯運算優(yōu)先級最低。各種運算符得優(yōu)先級
優(yōu)先級運
算
符最高()(小括號)↓、’(轉(zhuǎn)置)‘(共軛轉(zhuǎn)置)
、^(數(shù)組和數(shù)值乘方)^(矩陣乘方)↓+(一元加法)-(一元減法)~(取反)↓、*(乘法)*(矩陣乘法)、/(右除)
/(矩陣右除)、\(左除)\(矩陣左除)↓+(加法)-(減法)↓:(冒號)↓<(小于)<=(小于或等于)>(大于)
>=(大于或等于)
==(等于)~=(不等于)↓&(邏輯與)最低|(邏輯或)>>A=linspace(1,10,10)A=12345678910>>B=linspace(10,1,10)B=10987654321>>L1=A>4&B<7L1=0000111111>>L3=A>5|B>5L3=1111111111>>L4=~(A>6)L4=1111110000>>L5=~A>6L5=0000000000例2、4在[0,3π]區(qū)間,求y=sin(x)得值。要求:(1)消去負(fù)半波,即(π,2π)區(qū)間內(nèi)得函數(shù)值置0。(2)(π/3,2π/3)和(7π/3,8π/3)區(qū)間內(nèi)取值均為sinπ/3。方法1:從自變量著手進(jìn)行處理x=0:pi/100:3*pi;y=sin(x);y1=(x<pi|x>2*pi)、*y;q=(x>pi/3&x<2*pi/3)|(x>7*pi/3&x<8*pi/3);qn=~q;y2=q*sin(pi/3)+qn、*y1;方法2:從函數(shù)值著手進(jìn)行處理x=0:pi/100:3*pi;y=sin(x);y1=(y>=0)、*y;p=sin(pi/3);y2=(y>=p)*p+(y<p)、*y1;此外,MATLAB還提供了一些關(guān)系與邏輯運算函數(shù)。將P32表2、4例2、5建立矩陣A,然后找出在[10,20]區(qū)間得元素得位置。(1)建立矩陣A。A=[4,15,-45,10,6;56,0,17,-45,0](2)找出大于4得元素得位置。find(A>=10&A<=20)>>s=[2,1,0
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年上半年阿壩州州直機(jī)關(guān)公開遴選公務(wù)員42人備考題庫附答案
- 2025年榆林市公共交通總公司招聘(57人)考前自測高頻考點模擬試題附答案
- 2025年湖南長沙市公安局芙蓉分局招聘1名普通雇員備考題庫附答案
- 2025年黃山高速公路管理中心收費崗見習(xí)人員招聘10人考前自測高頻考點模擬試題附答案
- 2025廣東佛山市順德區(qū)北滘鎮(zhèn)第二實驗小學(xué)招聘臨聘教師參考題庫附答案
- 2026四川自貢市消防救援支隊第一批次面向社會招錄政府專職消防員48人筆試備考試題及答案解析
- 2026上海大科學(xué)中心大科學(xué)裝置建設(shè)部招聘機(jī)械工程師1名筆試參考題庫及答案解析
- 2026年淄博桓臺縣教體系統(tǒng)公開招聘工作人員(22人)筆試備考試題及答案解析
- 2026湖南常德市西洞庭食品工業(yè)園投資開發(fā)有限公司招聘人員筆試模擬試題及答案解析
- 2026年紹興市本級衛(wèi)生健康單位第一次公開招聘80人筆試模擬試題及答案解析
- 電商售后客服主管述職報告
- 十五五安全生產(chǎn)規(guī)劃思路
- 上海證券有限責(zé)任公司校招職位筆試歷年參考題庫附帶答案詳解
- 剪刀車專項施工方案
- 2024-2025學(xué)年四川省綿陽市七年級(上)期末數(shù)學(xué)試卷
- 項目預(yù)算管理咨詢方案
- 合成藥物催化技術(shù)
- 貴州藥品追溯管理辦法
- 租車牌車輛抵押合同范本
- 醫(yī)療器械不良反應(yīng)監(jiān)測管理制度
- 待滅菌物品的裝載
評論
0/150
提交評論