MATLAB程序設計語言.ppt
《MATLAB程序設計語言.ppt》由會員分享,可在線閱讀,更多相關《MATLAB程序設計語言.ppt(27頁珍藏版)》請在裝配圖網上搜索。
MATLAB程序設計語言,任課教師:李靖博士(講師),Email:jli@,研究方向:無線通信,上機安排,日期:3-21,4-4,4-18,5-9,5-23時段:18:00至22:00機房:E樓205要求:每次上機找科代表簽到!,課程安排,Chapter1Matlab系統概述Chapter2Matlab基本操作Chapter3Matlab圖形系統Chapter4Matlab程序設計Chapter5Matlab基本應用領域Chapter6數據陣列類型與結構Chapter7字符串處理,Chapter2Matlab基本操作,表達式矩陣基礎矩陣產生和操作邏輯和關系運算操作符和特殊字符基本矩陣和矩陣操作基本數學函數邏輯函數,表達式,變量數值函數操作符,變量,變量名可以包含下劃線、字符、數字,但不能為空格符、標點區(qū)分大小寫字母,即A和a是不同的變量的第一個字符必須為英文字母,而且不能超過31個字符。通過file--》preferences--》可設置字體大小,預定義變量,ans預設的計算結果的變量名epsMATLAB定義的正的極小值=2.2204e-16pi內建的π值Inf正無窮大(1/0)NaN表示不定值(Inf/Inf或0/0)i或j虛數單位(注意i和j也可以做變量)nargin函數輸入參數個數nargout函數輸出參數個數realmax最大的正實數realmin最小的正實數flops浮點運算次數,數值,十進制:3,8,-39科學計數法:1.6e-21,-3.24e20復數:-4+3.6j,780+3.2e2i浮點數:范圍在10-308~10308MATLAB的所有計算均在雙精度下進行,可用format命令來控制不同的顯示格式,如10*pi,函數,函數分類:內部函數、Toolboxes中實用函數、用戶自定義函數。函數用法:1)嵌套:x=sqrt(log(z))2)多輸入:theta=atah2(y,x)3)多輸出:[y,i]=max(x)函數的具體用法可通過help命令得到;,操作符,算術運算+,-,*,/,\,^…以及帶.的符號關系運算邏輯運算其它操作符,表達式,MATLAB書寫表達式的規(guī)則與“手寫算式”差不多相同。將變量、數值、函數用操作符連接起來,就構成了表達式。如果一個指令過長可以在結尾加上...(代表此行指令與下一行連續(xù)),例如3*...6ans=18,表達式示例,a=(1+sqrt(10))/2;b=abs(3+5i);c=sqrt(bessell(4/3),a-i);d=sin(exp(-2.3));e=pi*d;行末的分號用于抑制結果的顯示。,矩陣基礎,輸入矩陣及矩陣下標矩陣轉置:a’矩陣元素求和:sum()按列求和矩陣連接:[ab]矩陣行列刪除:利用空矩陣b(2,:)=[];%刪除矩陣b的第二行,:表示所有的列或行。,矩陣產生和操作,矩陣產生:1)直接輸入元素列表;2)從外部數據文件讀取:load3)利用Matlab內部函數產生矩陣:eye,ones,zeros,rand,randn(演示)4)用戶自己編寫M文件產生矩陣。,基本矩陣和矩陣操作,基本矩陣和陣列:eye:單位矩陣ones:全1陣列zeros:全0陣列rand:均勻分布的隨機數和陣列randn:正態(tài)分布的隨機數和陣列l(wèi)inspace:產生線性間空向量logspace:產生對數間空向量,矩陣操作(P35和P63),常用:矩陣轉置、重排、求和、下標、刪除和運算等;Diag:對角矩陣和矩陣的對角化Reshape:陣列重新排列Rot90:矩陣旋轉90度fliplr,flipud:矩陣左右,上下翻轉Tril,triu:矩陣的上,下三角陣Cat:陣列連接Repmat:復制并平鋪陣列,矩陣中的操作符和特殊字符(一)P46,算術操作符:+,-,*,/,\,^,’A+B,A-B:相同尺寸簡單加、減運算;A*B:線性代數積A.*B:對應元素相乘A/B,A\B:矩陣右(左)除A./B,A.\B:矩陣對應元素右(左)除A^B:矩陣冪(兩種形式,指數為標量和底數為標量)A’:矩陣轉置,若A為復數矩陣,則求出共軛轉置。A.’:矩陣轉置,若A為復數矩陣,也不求共軛。(對應函數見P47.),矩陣中的操作符和特殊字符(二),Kron:Kronecker張量積:K=(X,Y)冒號:建立向量、陣列的下標或用于迭代。(使用格式見書P48)邏輯操作符:%!(P48頁)XOR:異或操作,矩陣中的邏輯函數(P78),all:測試矩陣或者向量所有元素是否都為非0any:測試是否有非0元素(對于矩陣,將列當做向量?。ゝind:查找非0元素的值和下標(用于稀疏矩陣)exist:查找給定變量或文件是否存在is*:檢測某種狀態(tài),*通配符(P81)isa:檢測給定類的對象logical:將數值轉換成邏輯值,特殊變量和常數,ans,pi,i和j,NaN,Inf,realmax,realminNargin,nargout,varargin,varargouteps:浮點數相對精度(p57)computer:識別運行Matlab的計算機inputname:輸入變量名flops:統計浮點運算次數,時間和日期(P59),tic,toc:測定程序運行時間(tictest.m)date,now,clocketime,cputimedatestr,dateevcdatenumweekday,eomdaycalendar,基本數學函數(P69),三角函數指數和對數函數復數函數取整和求余函數(rem、mod),典型例題,產生均勻分布在(a,b)之間的(mn)隨機陣,(精確到小數點后k位)a+(b-a)*rand(m,n)a+round(10^k*(b-a)*rand(m,n))/10^k產生均值為μ,方差為σ^2的(mn)正態(tài)分布隨機陣。σ*randn(m,n)+μ,陣列與矩陣運算(重點回顧),MATLAB的運算事實上是以陣列(array)及矩陣(matrix)方式在做運算,而這二者在MATLAB的基本運算性質不同。矩陣是二維的,它則采用線性代數的運算方式。矩陣的基本算術操作+-*/\’^基本格式A+BA-BA*BA/BA\BA’A^,陣列與矩陣運算,陣列的運算是元素對元素的運算陣列的基本算術操作+-.*./.\.’.^基本格式A+BA-BA.*BA./BA.\BA.’A.^例如a=[a1,a2…an]b=[b1,b2…bn]a.*b=[a1*b1,a2*b2…an*bn]a./b=[a1/b1,a2/b2…an/bn],陣列運算的特色,>>x=1:0.1:2;%x是陣列x=Columns1through91.00001.10001.20001.30001.40001.50001.60001.70001.8000Columns10through111.90002.0000>>y=exp(x.^2);%exp(x.^2)是陣列運算y=Columns1through92.71833.35354.22075.41957.09939.487712.935817.993325.5337Columns10through1136.966154.5982,陣列運算的特色,純量與陣列運算的差別>>x=2.0%x是一純量>>nume=x^3-2*x^2+x-6.3;>>deno=x^2+0.05*x-3.14;>>f=nume/deno>>x=1:5;%注意x是一陣列>>nume=x.^3-2*x.^2+x-6.3;>>deno=x.^2+0.05*x-3.14;>>f=nume./deno,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- MATLAB 程序設計語言
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.820124.com/p-11497191.html