matlab基本運(yùn)算與函數(shù)參考模板_第1頁
matlab基本運(yùn)算與函數(shù)參考模板_第2頁
matlab基本運(yùn)算與函數(shù)參考模板_第3頁
matlab基本運(yùn)算與函數(shù)參考模板_第4頁
matlab基本運(yùn)算與函數(shù)參考模板_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1-1、基本運(yùn)算與函數(shù)   在MATLAB下進(jìn)行基本數(shù)學(xué)運(yùn)算,只需將運(yùn)算式直接打入提示號(hào)(>>)之後,并按入Enter鍵即可。例如:  >> (5*2+1.3-0.8)*10/25  ans =4.2000  MATLAB會(huì)將運(yùn)算結(jié)果直接存入一變數(shù)ans,代表MATLAB運(yùn)算後的答案(Answer)并顯示其數(shù)值於螢?zāi)簧稀P√崾荆?">>"是MATLAB的提示符號(hào)(Prompt),但在PC中文視窗系統(tǒng)下,由於編碼方式不同,此提示符號(hào)常會(huì)消失不見,但這并

2、不會(huì)影響到MATLAB的運(yùn)算結(jié)果。  我們也可將上述運(yùn)算式的結(jié)果設(shè)定給另一個(gè)變數(shù)x:  x = (5*2+1.3-0.8)*102/25  x = 42 此時(shí)MATLAB會(huì)直接顯示x的值。由上例可知,MATLAB認(rèn)識(shí)所有一般常用到的加(+)、減(-)、乘(*)、除(/)的數(shù)學(xué)運(yùn)算符號(hào),以及冪次運(yùn)算()。  小提示: MATLAB將所有變數(shù)均存成double的形式,所以不需經(jīng)過變數(shù)宣告(Variable declaration)。MATLAB同時(shí)也會(huì)自動(dòng)進(jìn)行記憶體的使用和回收,而不必像C語言,必須由使用者一

3、一指定.這些功能使的MATLAB易學(xué)易用,使用者可專心致力於撰寫程式,而不必被軟體枝節(jié)問題所干擾。   1 / 13若不想讓MATLAB每次都顯示運(yùn)算結(jié)果,只需在運(yùn)算式最後加上分號(hào)(;)即可,如下例:y = sin(10)*exp(-0.3*42);  若要顯示變數(shù)y的值,直接鍵入y即可:  >>y  y =-0.0045  在上例中,sin是正弦函數(shù),exp是指數(shù)函數(shù),這些都是MATLAB常用到的數(shù)學(xué)函數(shù)。下表即為MATLAB常用的基本數(shù)學(xué)函數(shù)及三角函數(shù): &#

4、160;小整理:MATLAB常用的基本數(shù)學(xué)函數(shù)abs(x):純量的絕對(duì)值或向量的長(zhǎng)度angle(z):復(fù)數(shù)z的相角(Phase angle)sqrt(x):開平方real(z):復(fù)數(shù)z的實(shí)部imag(z):復(fù)數(shù)z的虛部conj(z):復(fù)數(shù)z的共軛復(fù)數(shù)round(x):四舍五入至最近整數(shù)fix(x):無論正負(fù),舍去小數(shù)至最近整數(shù)floor(x):地板函數(shù),即舍去正小數(shù)至最近整數(shù)ceil(x):天花板函數(shù),即加入正小數(shù)至最近整數(shù)rat(x):將實(shí)數(shù)x化為分?jǐn)?shù)表示rats(x):將實(shí)數(shù)x化為多項(xiàng)分?jǐn)?shù)展開sign(x):符號(hào)函數(shù) (Signum function)。  當(dāng)x<

5、0時(shí),sign(x)=-1;  當(dāng)x=0時(shí),sign(x)=0;  當(dāng)x>0時(shí),sign(x)=1。  > 小整理:MATLAB常用的三角函數(shù)sin(x):正弦函數(shù)cos(x):馀弦函數(shù)tan(x):正切函數(shù)asin(x):反正弦函數(shù)acos(x):反馀弦函數(shù)atan(x):反正切函數(shù)atan2(x,y):四象限的反正切函數(shù)sinh(x):超越正弦函數(shù)cosh(x):超越馀弦函數(shù)tanh(x):超越正切函數(shù)asinh(x):反超越正弦函數(shù)acosh(x):反超越馀弦函數(shù)atanh(x):反超越正切函數(shù)  

6、;變數(shù)也可用來存放向量或矩陣,并進(jìn)行各種運(yùn)算,如下例的列向量(Row vector)運(yùn)算:x = 1 3 5 2;  y = 2*x+1  y = 3 7 11 5  小提示:變數(shù)命名的規(guī)則  1.第一個(gè)字母必須是英文字母 2.字母間不可留空格 3.最多只能有19個(gè)字母,MATLAB會(huì)忽略多馀字母  我們可以隨意更改、增加或刪除向量的元素: y(3) = 2 % 更改第三個(gè)元素  y =3 7 2 5  y(6) = 10 % 加入第六個(gè)元素&#

7、160; y = 3 7 2 5 0 10  y(4) = % 刪除第四個(gè)元素,  y = 3 7 2 0 10  在上例中,MATLAB會(huì)忽略所有在百分比符號(hào)(%)之後的文字,因此百分比之後的文字均可視為程式的注解(Comments)。MATLAB亦可取出向量的一個(gè)元素或一部份來做運(yùn)算: x(2)*3+y(4) % 取出x的第二個(gè)元素和y的第四個(gè)元素來做運(yùn)算  ans = 9  y(2:4)-1 % 取出y的第二至第四個(gè)元素來做運(yùn)算  ans = 6 1

8、 -1  在上例中,2:4代表一個(gè)由2、3、4組成的向量 若對(duì)MATLAB函數(shù)用法有疑問,可隨時(shí)使用help來尋求線上支援(on-line help):help linspace  小整理:MATLAB的查詢命令help:用來查詢已知命令的用法。例如已知inv是用來計(jì)算反矩陣,鍵入help inv即可得知有關(guān)inv命令的用法。(鍵入help help則顯示help的用法,請(qǐng)?jiān)嚳纯矗。?lookfor:用來尋找未知的命令。例如要尋找計(jì)算反矩陣的命令,可鍵入 lookfor inverse,MATLAB即會(huì)列出所有和關(guān)鍵字inverse相關(guān)的指令。

9、找到所需的命令後,即可用help進(jìn)一步找出其用法。(lookfor事實(shí)上是對(duì)所有在搜尋路徑下的M檔案進(jìn)行關(guān)鍵字對(duì)第一注解行的比對(duì),詳見後敘。)  將列向量轉(zhuǎn)置(Transpose)後,即可得到行向量(Column vector):  z = x'  z = 4.0000     5.2000     6.4000     7.6000     8.8000 &

10、#160;   10.0000   不論是行向量或列向量,我們均可用相同的函數(shù)找出其元素個(gè)數(shù)、最大值、最小值等: length(z) % z的元素個(gè)數(shù)  ans = 6  max(z) % z的最大值  ans = 10  min(z) % z的最小值  ans =   4  小整理:適用於向量的常用函數(shù)有:min(x): 向量x的元素的最小值max(x): 向量x的元素的最大值mean(x):

11、向量x的元素的平均值median(x): 向量x的元素的中位數(shù)std(x): 向量x的元素的標(biāo)準(zhǔn)差diff(x): 向量x的相鄰元素的差sort(x): 對(duì)向量x的元素進(jìn)行排序(Sorting)length(x): 向量x的元素個(gè)數(shù)norm(x): 向量x的歐氏(Euclidean)長(zhǎng)度sum(x): 向量x的元素總和prod(x): 向量x的元素總乘積cumsum(x): 向量x的累計(jì)元素總和cumprod(x): 向量x的累計(jì)元素總乘積dot(x, y): 向量x和y的內(nèi)積cross(x, y): 向量x和y的外積(大部份的向量函數(shù)也可適用於矩陣,詳見下述。)  若要輸

12、入矩陣,則必須在每一列結(jié)尾加上分號(hào)(;),如下例:  A = 1 2 3 4; 5 6 7 8; 9 10 11 12;   A =   1 2 3 4   5 6 7 8   9 10 11 12  同樣地,我們可以對(duì)矩陣進(jìn)行各種處理:  A(2,3) = 5 % 改變位於第二列,第三行的元素值  A = 

13、  1 2 3 4  5 6 5 8   9 10 11 12   B = A(2,1:3) % 取出部份矩陣B  B = 5 6 5  A = A B' % 將B轉(zhuǎn)置後以行向量并入A  A =   1 2 3   4 5   5 

14、6 5   8 6   9 10 11 12 5  A(:, 2) = % 刪除第二行(:代表所有列)  A =   1 3 4 5   5 5 8 6   9 11 12 5  A = A; 4 3 2 1 % 加入第四列   A =&#

15、160;  1 3   4   5   5 5   8   6   9 11 12 5  4 3   2   1  A(1 4, :) = % 刪除第一和第四列(:代表所有行)  A =   5 5   8 &

16、#160; 6   9 11 12 5  這幾種矩陣處理的方式可以相互疊代運(yùn)用,產(chǎn)生各種意想不到的效果,就看各位的巧思和創(chuàng)意。  小提示:在MATLAB的內(nèi)部資料結(jié)構(gòu)中,每一個(gè)矩陣都是一個(gè)以行為主(Column-oriented )的陣列(Array)因此對(duì)於矩陣元素的存取,我們可用一維或二維的索引(Index)來定址。舉例來說,在上述矩陣A中,位於第二列、第三行的元素可寫為A(2,3) (二維索引)或A(6)(一維索引,即將所有直行進(jìn)行堆疊後的第六個(gè)元素)。  此外,若要重

17、新安排矩陣的形狀,可用reshape命令:  B = reshape(A, 4, 2) % 4是新矩陣的列數(shù),2是新矩陣的行數(shù)  B =  5   8   9   12   5   6  11 5  小提示: A(:)就是將矩陣A每一列堆疊起來,成為一個(gè)行向量,而這也是MATLAB變數(shù)的內(nèi)部?jī)?chǔ)存方式。以前例而言,reshape(A, 8, 1)和A(:)同樣都會(huì)產(chǎn)生一

18、個(gè)8x1的矩陣。 MATLAB可在同時(shí)執(zhí)行數(shù)個(gè)命令,只要以逗號(hào)或分號(hào)將命令隔開:  x = sin(pi/3); y = x2; z = y*10,z =   7.5000  若一個(gè)數(shù)學(xué)運(yùn)算是太長(zhǎng),可用三個(gè)句點(diǎn)將其延伸到下一行: z = 10*sin(pi/3)* .  sin(pi/3);  若要檢視現(xiàn)存於工作空間(Workspace)的變數(shù),可鍵入who:  who  Your variables are:  testfile x  這些是由使用者定義的變數(shù)。若要知道這些變數(shù)的詳細(xì)資料,可鍵入:  whos  Name Size Bytes Class A 2x4 64 double array  B 4x2 64 double array  ans 1x1 8 double array  x 1x1

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論