




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
一般介紹教學(xué)要求內(nèi)容簡介目錄_見附件4前言_見附件3成績確定選課要求教學(xué)大綱_見附件1教學(xué)安排_見附件2學(xué)習(xí)方法學(xué)習(xí)要求_見目錄關(guān)于教材參考文獻教學(xué)方法教學(xué)改革一般介紹教學(xué)要求內(nèi)容簡介目錄_見附件4前第1章MATLAB語言入門語言簡單易學(xué)代碼短小高效計算功能強大繪圖非常方便擴充能力強大幫助功能完整…R2006a2007a2008a發(fā)展歷程基本特點平臺外貌平臺安裝進入編譯平臺編譯m文件或命令窗口輸入函數(shù)命令設(shè)計可視化程序界面進一步編制m文件(底稿文件和函數(shù)文件)編譯過程與完善程序?qū)W習(xí)文件編程步驟簡單實例(1)使用函數(shù)在線幫助help函數(shù)命令=>名稱通常是小寫字母
(2)使用全部幫助。MATLAB7.0的自述文件,見圖1-14計算1到100的平方和。x=1:100y=x.^2;z=sum(y)第1章MATLAB語言入門語言簡單易學(xué)…發(fā)展歷程基本特點平鼠標雙擊WinXP桌面上圖標在WinXP“開始”菜單的“程序”選項中選擇“MATLAB”退出MATLAB命令窗口鍵入“quit”或“Ctrl+Q”鼠標選擇菜單fileExit
MATLAB————MATLAB使用簡介————啟動
MATLAB鼠標雙擊WinXP桌面上圖標退出MATLAB————MATLMATLAB桌面命令窗口工作空間瀏覽命令歷史窗口MATLAB桌面命令窗口工作空間瀏覽命令歷史窗口命令窗口、編輯窗口、圖形窗口————MATLAB使用簡介————命令窗口、編輯窗口、圖形窗口————MATLAB使用簡介—>>n=0:1:63;S=sum(2.^n)S=1.8447e+019例2.
計算sinx
在
處的值>>clearx=pi./[8,6,4,3],y=sin(x)y=0.38270.50000.70710.8660————MATLAB使用簡介————7/15例1.計算級數(shù):S=1+2+22+23+···+263=>>n=0:1:63;S=sum(2.^n)例2.計算s2.1常量與變量2.2數(shù)組建立與引用2.3運算符2.4m文件2.5程序設(shè)計
MATLAB文件形式命令文件的命名與位置函數(shù)文件的命名與格式M文件的調(diào)試順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)2.1常量與變量2.2數(shù)組建立與引用2.3運算符特殊常量
MATLAB中特殊的固定變量稱為常量。anspi
realmaxrealmininfNaNijdateclocktictoc2.1常量與變量_12.1.1特殊常量2.1常量與變量_1常數(shù)返回值ans默認變量名,保存最近的結(jié)果pi圓周率realmax最大正浮點數(shù)realmin最小正浮點數(shù)inf無限值i,j虛數(shù)單位NaN不合法的數(shù)值值,非數(shù)值date日期clock時間常數(shù)返回值ans默認變量名,數(shù)學(xué)表達式Matlab運算符Matlab表達式加a+b+a+b減a-b-a-b乘a×b*a*b除a÷b/或\a/b或b\a冪ab^a^b基本運算符運算次序:1.冪>乘除>加減,同級運算次序——“自左向右”2.括號“()”可以改變優(yōu)先次序數(shù)學(xué)表達式Matlab運算符Matlab表達式加a+b+a+復(fù)數(shù):z=a+bi=reiθ一般形式:1)a+bi2)z=a+bi復(fù)數(shù)指令:real(z)給出復(fù)數(shù)z的實部;image(z)給出復(fù)數(shù)z的虛部;abs(z)給出復(fù)數(shù)z的模;angle(z)以弧度為單位計算z的復(fù)角。復(fù)數(shù):z=a+bi=reiθ一般形式:1)a+bi復(fù)數(shù)指令2.1.2一般變量(可動變量)MATLAB依據(jù)變量值或?qū)ψ兞坎僮鱽碜R別變量類型,不要求事先對所使用變量進行聲明或指定變量類型。
2.1.2一般變量(可動變量)MATLAB中的變量命名規(guī)則:(1)變量名區(qū)分大小寫。(2)變量名長度不超過31位。(3)變量名以字母開頭,可以是字母、數(shù)字、下劃線組成,但不能使用標點。
2.1常量與變量_2變量命名規(guī)則MATLAB中的變量作用域。MATLAB中的變量命名規(guī)則:2.1常量與變量_2變量命例如:合法變量名x1,x2,a,b,c,abc,Ma1,zhang_3xNo_1,alpha,·········不合法變量:x%1,2x,x變量,abc.變量名和函數(shù)名對字母的大小寫敏感;
X,x,Z,z是不同變量例如:合法變量名x1,x2,a,b,c,abc,Ma創(chuàng)建變量在命令窗口中直接輸入變量名稱創(chuàng)建A=9A=9isvarname8th_column//確認變量名的合法性ans=0創(chuàng)建變量數(shù)據(jù)類型舉例描述邏輯型數(shù)組magic(4)>10包含1、0或true、false字符型數(shù)組‘Hello’長度16位,即為字符串Int8、unit8int16、unit16uint8(magic(3))長度為8位、16位的有符號和無符號整型數(shù)組single3*10^38單精度數(shù)值型數(shù)組double3*10^3005+6i雙精度數(shù)值型數(shù)組單元數(shù)組{17'hello'eye(2)}包含其他數(shù)組。將不同大小有關(guān)系的數(shù)據(jù)集中到一起結(jié)構(gòu)數(shù)組a.day=12;a.color=‘red’;a.mat=magic(3);具有字段名。包含其他數(shù)組。與單元數(shù)組類似matlab數(shù)據(jù)類型數(shù)據(jù)類型舉例描述邏輯型數(shù)組magic(4MATLAB用format命令來控制輸出格式,formatshort短格式
3.146formatlong
長格式3.14159265358979formatshorte短格式e3.1416e+000formatlonge長格式e3.141592653589793e+000formatrat
分數(shù)格式355/113formatbank銀行格式3.14MATLAB用format命令來控制輸出格式,formatwho
列出在MATLAB工作空間中已有的變量whos
列出駐留變量的同時,還給出維數(shù)及性質(zhì)clear
刪除內(nèi)存中的變量(數(shù)據(jù))clc
刪除命令窗口的內(nèi)容(已使用過的命令)home
光標移到命令窗口的左上角clf
刪除圖形窗口的內(nèi)容↑
調(diào)出剛才使用過的命令quit
退出MATLABdir顯示當前目錄下文件及子目錄MATLAB命令窗口的部分通用命令who列出在MATLAB工作空間中已有的變量MAT2.2數(shù)組_1建立與引用2.2數(shù)組
2.2.1建立數(shù)組
1
逐個元素輸入法格式:x=[a,b,c]x=[abc]
[例2-1]
2.2數(shù)組_1建立與引用2.2數(shù)組2.2數(shù)組_1建立與引用2冒號法格式:x=初始量:步長:終止量x=i:j如果i<j,生成以i為初值,j為終值,1為步長的有限等差數(shù)列;x=i:j:k如果i<k,生成以i為初值,k為終值,j為步長的有限等差數(shù)列;x=i:-j:k如果i>k,生成以i為初值,k為終值,-j為步長的有限等差數(shù)列;[例2-2]
2.2數(shù)組_1建立與引用2冒號法2.2數(shù)組_1建立與引用3
特殊方法[linspace,logspace]x=linspace(初始量:終止量:數(shù)組元素個數(shù))x=logspace(初始量:終止量:數(shù)組元素個數(shù))
[例2-3]
[例2-4]
2.2數(shù)組_1建立與引用3特殊方法[linspace2.2數(shù)組_1建立與引用2.2.2數(shù)組應(yīng)用格式:A(s):數(shù)組A的第s個元素
例如:A(3)=7A([1,3,5])=2A([1,3,5])=[2,6,7]2.2數(shù)組_1建立與引用2.2.2數(shù)組應(yīng)用格式:A(s)2.2.1創(chuàng)建矩陣的常用方法:1.直接輸入法;2.函數(shù)法;3.矩陣編輯器;4.數(shù)據(jù)文件法直接輸入法三條規(guī)則:矩陣元素必須在方括號[]之內(nèi);同一行相鄰元素間用逗號或空格分隔;矩陣的行與行之間必須用分號分隔.例4.三階Hilbert矩陣
A=[11/21/3;1/21/31/4;1/31/41/5]A=1.00000.50000.33330.50000.33330.25000.33330.25000.20002.2、矩陣2.2.1創(chuàng)建矩陣的常用方法:1.直接輸入法;2.函數(shù)C=[]—產(chǎn)生空陣r=rand——產(chǎn)生隨機數(shù)R=rand(3,4)——產(chǎn)生3×4階隨機矩陣E=eye(3)——產(chǎn)生3階單位矩陣B=zeros(3,4)——產(chǎn)生3×4階全“0”矩陣D=ones(3,4)——產(chǎn)生3×4階全“1”的矩陣X=magic(3)——產(chǎn)生3階幻方Y(jié)=vander(4)——產(chǎn)生4階范德蒙矩陣函數(shù)法構(gòu)造特殊矩陣C=[]—產(chǎn)生空陣函數(shù)法構(gòu)造特殊矩陣聚合矩陣通過連接一個或多個矩陣來形成新的矩陣C=[AB]//水平方向上聚合C=[A;B]//垂直方向上聚合例A=ones(2,5)*6;B=rand(3,5);C=[A;B]C=6.00006.00006.00006.00006.00006.00006.00006.00006.00006.00000.61540.73820.93550.89360.81320.79190.17630.91690.05790.00990.92180.40570.41030.35290.1389聚合矩陣通過連接一個或多個矩陣來形成新的矩陣例A=on獲取矩陣的元素A(row,column)具體的:A(r,c)A(r,:)A(:,c)A(:)A(s)A(L)獲取矩陣的元素A(row,column)具體的:A=[269;428;351]A=269428351A(3,2)ans=5A(6)//等同A(3,2)ans=5Sum(A(1:3,3))//求第三列元素之和A=[269;428;351]12/18A=magic(3);B1=A(1,:),B12=A(1:2,:),B13=A([1,3],[1,3])B1=816B12=816357B13=864212/18A=magic(3);B1=A(1,:),B13.1、字符串創(chuàng)建字符串-使用單引號創(chuàng)建Country=‘China’;name=[‘LiYi’;’HuXu’]//創(chuàng)建二維字符串數(shù)組name=LiYiHuXuname=[‘LiuYing’;’HuXu’]//字符串長度要相同name=char(‘LiuYing’,’HuXu’)//使用char函數(shù)創(chuàng)建3.1、字符串創(chuàng)建字符串-使用單引號創(chuàng)建Country=‘CStr2double函數(shù)將字符串單元數(shù)組轉(zhuǎn)換為雙精度值c={’37.294e-1’;’-58.375’;’13.796’};d=str2double(c)d=3.7294-58.375013.7960int2str:整型轉(zhuǎn)換為字符串型num2str:實數(shù)轉(zhuǎn)換為字符串型mat2str:矩陣轉(zhuǎn)換為字符串型Str2double函數(shù)將字符串單元數(shù)組轉(zhuǎn)換為雙精度值c={比較字符串str1=‘hello’;str2=‘help’;strcmp(str1,str2)C=0//falsestr1==str2ans=11100//確定兩個字符串中的相同字符strncmp:可選擇字符串的前n+1個字符進行比較比較字符串str1=‘hello’;strncmp:可選擇聚合字符串num_chars=28;s=[‘Thereare‘int2str(num_chars)’charactershere’];s=sprintf(‘Thereare%dcharactershere\n’,num_chars);country=‘China’;province=‘SiChuan’;strcat(country,’,’,province)ans=China,SiChuan聚合字符串num_chars=28;country=‘Chi3.2、多維數(shù)組索引生成A=[578;019;436];//創(chuàng)建一個二維數(shù)組A(:,:,2)=[104;356;987];//為A添加第三維MATLAB函數(shù)生成B=randn(4,3,2);//創(chuàng)建正態(tài)分布隨機數(shù)的4×3×2的數(shù)組類似的函數(shù)有ones(),zeros()等cat函數(shù)生成B=cat(dim,A1,A2…)//按指定的維數(shù)將多個數(shù)組聚合3.2、多維數(shù)組索引生成A=[578;019;434.1、結(jié)構(gòu)-調(diào)用字段的數(shù)組1、使用賦值語句創(chuàng)建結(jié)構(gòu)數(shù)組=‘Ludan’;//可包含任何類型的數(shù)據(jù)student.ID=02;student.test=[797573;807877.5;808585];student(2).name=‘Hanxu’;//擴展結(jié)構(gòu)數(shù)組student(2).ID=10;student(2).test=[687068;788881;929093];2、使用struct函數(shù)str_array=struct(‘field1’,val1,‘field2’,val2,…)4.1、結(jié)構(gòu)-調(diào)用字段的數(shù)組1、使用賦值語句創(chuàng)建結(jié)構(gòu)數(shù)組st3、獲取數(shù)據(jù)str=student(2).namestudent(3).test(2,2)=87IDs=[student.ID]//包含所有的ID字段4、操作字段student(2).gender=‘boy’;//為數(shù)組的每個結(jié)構(gòu)添加字段student=rmfield(student,’name’);//刪除給定字段mean((student(2).test));//計算test數(shù)組的行均值total=sum([student.ID]);所有ID字段求和3、獲取數(shù)據(jù)str=student(2).name4、操作字4.2、單元數(shù)組-能包含其它數(shù)組1、創(chuàng)建單元數(shù)組A[1,1]={[143;058;729]};A[1,2]={‘Liuzhong’};A[2,1]={3+7i;}A[2,2]={-pi:pi/10:pi};//通過矩陣單元索引訪問數(shù)據(jù)或A{1,1}=[143;058;729];A{1,2}=‘Liuzhong’;A{2,1}=3+7i;A{2,2}=-pi:pi/10:pi;//通過矩陣內(nèi)容索引訪問數(shù)據(jù)4.2、單元數(shù)組-能包含其它數(shù)組1、創(chuàng)建單元數(shù)組A[1,1]2.2數(shù)組_2細胞數(shù)組與結(jié)構(gòu)數(shù)組1
細胞數(shù)組[例2-8]
細胞數(shù)組是以單元為元素,每個單元可以包含其它類型數(shù)組,如實數(shù)矩陣、字符串數(shù)組、復(fù)數(shù)向量。細胞數(shù)組通常由{}創(chuàng)建,其數(shù)據(jù)通過數(shù)組下標引用。
2結(jié)構(gòu)數(shù)組[例2-9]結(jié)構(gòu)數(shù)組是根據(jù)屬性名組織起來的不同類型數(shù)據(jù)集合,屬性可以包含不同數(shù)據(jù)類型,結(jié)構(gòu)數(shù)組數(shù)據(jù)通過屬性名來引用。s=struct('field1',{},'field2',{},...)
2.2數(shù)組_2細胞數(shù)組與結(jié)構(gòu)數(shù)組1細胞數(shù)組[例2-82.3運算符_1算術(shù)運算符
2.3.1算術(shù)運算符
算術(shù)加、減、乘及乘方與傳統(tǒng)的基本相同;點運算(點乘、點乘方、點左除與點右除)是指元素點對點運算,要求參與運算變量結(jié)構(gòu)相似。除法運算:a/b=a÷b;(ax=b,x=a\b’)2.3運算符_1算術(shù)運算符2.3.1算術(shù)運算符2.3運算符_2關(guān)系運算符,邏輯運算符
,邏輯函數(shù)2.3.2關(guān)系運算符==~=>=<=[例if(a(5)==1&a(6)<=1);a(7)=2;end;]2.3.3邏輯運算符&(和)|(或)~(非)2.3.4邏輯函數(shù)B1=all(a)%判斷向量a中的每個元素是否為非零數(shù)[i,j,v]=find(A);%找出非零元素位置[i,j]及其值[v]2.3運算符_2關(guān)系運算符,邏輯運算符,邏輯函數(shù)2.3→2.3運算符_3字符串操作2.3.5字符串操作
1
字符串定義
s='str',name=['str1''str2''str3']
字符串中要輸入“'”必須通過兩個“'”實現(xiàn)。
2
字符串轉(zhuǎn)換[例2-21,2->to]S=char(T)%正整數(shù)矩陣T轉(zhuǎn)換為字符串矩陣S
int2str(A),num2str(A,k),num2str(A,format)
eval(S),str2num(S)表示將字符串S轉(zhuǎn)化為數(shù)值?!?.3運算符_3字符串操作2.3.5字符串操作2.3運算符_4字符串操作[例][例2-21]將數(shù)值矩陣A轉(zhuǎn)換成字符串矩陣。A=[;]
[算例代碼]%例2-21A=[;];B1=int2str(A)B2=num2str(A,0)
B3=num2str(A,'%10.3f')%3位有效位,10位長注意運行結(jié)果。2.3運算符_4字符串操作[例][例2-21]將數(shù)值矩陣2.3運算符_5字符串比較與求值3字符串比較strcmp(str1,str2)表示將兩個字符串進行比較4字符串求值
inline(exr),inline(expr,arg1,arg2,...)inline(exr)表示將字符串表達式轉(zhuǎn)化為函數(shù)表達式arg1,arg2,...為字符串,其作用是定義變量
%[例2-24]
f=inline('5*sin(x)+3*cos(y)','x','y')subs(f,'x',1);2.3運算符_5字符串比較與求值3字符串比較2.3運算符_6字符串比較與求值
如果其中的字符串要用具體數(shù)值代替,可以使用命令subs。使用命令subs時不能同時替換多個變量、一次只能替換一個變量,見下例。
[例]計算f=inline('5*sin(x)+3*cos(y)','x','y')當x=1、y=2時的數(shù)值。symsxy;f=inline('5*sin(x)+3*cos(y)','x','y');A1=subs(f,x,1);A2=subs(A1,y,2);2.3運算符_6字符串比較與求值如果2.4m文件_1MATLAB中文件形式:.m.fig.mdlm文件“.m”分命令文件和函數(shù)文件兩種。
2.4.1命令文件[例2-25]沒有輸入?yún)?shù)和輸出參數(shù)、只是命令行的組合.
命令文件最好保存在MATLAB7\works子目錄(工作目錄)下(或非中文目錄下).文件名命名與變量命名類似,文件名與內(nèi)置函數(shù)及工具箱函數(shù)不應(yīng)重名、與命令文件及工作空間中的變量也不應(yīng)重名(最好不用中文名).
2.4m文件_1MATLAB中文件形式:.m2.4m文件_22.4.2函數(shù)文件函數(shù)文件一般包括:
函數(shù)定義行:function[輸出參數(shù)]=函數(shù)名[輸入?yún)?shù)]%返回變量多于一個時用方括號.%函數(shù)名與所存的m文件名應(yīng)同名.%輸入變量多于一個時用逗號”,”隔開.%第二行,概括性信息,用于lookfor(查找)命令%第二行到第一非注釋行之間為注釋,用于help命令
%空行后不顯示。
%函數(shù)體注釋語句以%開頭,可在m文件任何地方、或一行代碼的后面加注釋語句,%后的代碼部分為不執(zhí)行部分。函數(shù)調(diào)用:嵌套調(diào)用與遞歸調(diào)用2.4m文件_22.4.2函數(shù)文件2.4m文件_3[例2-26]定義一個名為f.m的函數(shù)文件,并調(diào)用該函數(shù)。[算例代碼]%例2-26a=1;b=2;c=f0226(a,b)%定義f0226.m函數(shù)%下述代碼另存為工作目錄下的f0226.m文件functionz=f0226(x,y)%在m文件中定義函數(shù)z=sin(x.^2)+y.^2-2*x-5;%函數(shù)表達式2.4m文件_3[例2-26]定義一個名為f.m的函數(shù)文件2.4m文件_42.4.3m文件的調(diào)試
1m文件錯誤的種類有語法錯誤和執(zhí)行錯誤:語法錯誤一般是函數(shù)參數(shù)輸入類型有誤或者矩陣運算階數(shù)不符;執(zhí)行錯誤則是程序運行過程中出現(xiàn)溢出或死循環(huán)等造成。2錯誤的識別
命令文件:檢查中間結(jié)果,去除“;”。
函數(shù)文件:變成命令文件。
3
調(diào)試過程
2.4m文件_42.4.3m文件的調(diào)試2.5程序設(shè)計2.5.1順序結(jié)構(gòu)2.5.2分支結(jié)構(gòu)
1
條件語句(if-else-end)
2開關(guān)語句(switch-case-end)
%例2-33functiony=f0233(x)switchx,case{1,2},y=x*0.1;case{3,4},y=x*0.4;otherwise,y=x*0.5;end;
2.5.3循環(huán)結(jié)構(gòu)
1
循環(huán)語句1(for-end)(目標:執(zhí)行次數(shù)是否達到)
for循環(huán)控制變量=<初始值:步長:終值>,循環(huán)體,end
2
循環(huán)語句2(while-end)%例2-35(目標:條件是否達到)while(i==5),A(i)=1.5;end;A(i)
3循環(huán)語句的終止2.5程序設(shè)計2.5.1順序結(jié)構(gòu)演講完畢,謝謝觀看!演講完畢,謝謝觀看!一般介紹教學(xué)要求內(nèi)容簡介目錄_見附件4前言_見附件3成績確定選課要求教學(xué)大綱_見附件1教學(xué)安排_見附件2學(xué)習(xí)方法學(xué)習(xí)要求_見目錄關(guān)于教材參考文獻教學(xué)方法教學(xué)改革一般介紹教學(xué)要求內(nèi)容簡介目錄_見附件4前第1章MATLAB語言入門語言簡單易學(xué)代碼短小高效計算功能強大繪圖非常方便擴充能力強大幫助功能完整…R2006a2007a2008a發(fā)展歷程基本特點平臺外貌平臺安裝進入編譯平臺編譯m文件或命令窗口輸入函數(shù)命令設(shè)計可視化程序界面進一步編制m文件(底稿文件和函數(shù)文件)編譯過程與完善程序?qū)W習(xí)文件編程步驟簡單實例(1)使用函數(shù)在線幫助help函數(shù)命令=>名稱通常是小寫字母
(2)使用全部幫助。MATLAB7.0的自述文件,見圖1-14計算1到100的平方和。x=1:100y=x.^2;z=sum(y)第1章MATLAB語言入門語言簡單易學(xué)…發(fā)展歷程基本特點平鼠標雙擊WinXP桌面上圖標在WinXP“開始”菜單的“程序”選項中選擇“MATLAB”退出MATLAB命令窗口鍵入“quit”或“Ctrl+Q”鼠標選擇菜單fileExit
MATLAB————MATLAB使用簡介————啟動
MATLAB鼠標雙擊WinXP桌面上圖標退出MATLAB————MATLMATLAB桌面命令窗口工作空間瀏覽命令歷史窗口MATLAB桌面命令窗口工作空間瀏覽命令歷史窗口命令窗口、編輯窗口、圖形窗口————MATLAB使用簡介————命令窗口、編輯窗口、圖形窗口————MATLAB使用簡介—>>n=0:1:63;S=sum(2.^n)S=1.8447e+019例2.
計算sinx
在
處的值>>clearx=pi./[8,6,4,3],y=sin(x)y=0.38270.50000.70710.8660————MATLAB使用簡介————7/15例1.計算級數(shù):S=1+2+22+23+···+263=>>n=0:1:63;S=sum(2.^n)例2.計算s2.1常量與變量2.2數(shù)組建立與引用2.3運算符2.4m文件2.5程序設(shè)計
MATLAB文件形式命令文件的命名與位置函數(shù)文件的命名與格式M文件的調(diào)試順序結(jié)構(gòu)分支結(jié)構(gòu)循環(huán)結(jié)構(gòu)2.1常量與變量2.2數(shù)組建立與引用2.3運算符特殊常量
MATLAB中特殊的固定變量稱為常量。anspi
realmaxrealmininfNaNijdateclocktictoc2.1常量與變量_12.1.1特殊常量2.1常量與變量_1常數(shù)返回值ans默認變量名,保存最近的結(jié)果pi圓周率realmax最大正浮點數(shù)realmin最小正浮點數(shù)inf無限值i,j虛數(shù)單位NaN不合法的數(shù)值值,非數(shù)值date日期clock時間常數(shù)返回值ans默認變量名,數(shù)學(xué)表達式Matlab運算符Matlab表達式加a+b+a+b減a-b-a-b乘a×b*a*b除a÷b/或\a/b或b\a冪ab^a^b基本運算符運算次序:1.冪>乘除>加減,同級運算次序——“自左向右”2.括號“()”可以改變優(yōu)先次序數(shù)學(xué)表達式Matlab運算符Matlab表達式加a+b+a+復(fù)數(shù):z=a+bi=reiθ一般形式:1)a+bi2)z=a+bi復(fù)數(shù)指令:real(z)給出復(fù)數(shù)z的實部;image(z)給出復(fù)數(shù)z的虛部;abs(z)給出復(fù)數(shù)z的模;angle(z)以弧度為單位計算z的復(fù)角。復(fù)數(shù):z=a+bi=reiθ一般形式:1)a+bi復(fù)數(shù)指令2.1.2一般變量(可動變量)MATLAB依據(jù)變量值或?qū)ψ兞坎僮鱽碜R別變量類型,不要求事先對所使用變量進行聲明或指定變量類型。
2.1.2一般變量(可動變量)MATLAB中的變量命名規(guī)則:(1)變量名區(qū)分大小寫。(2)變量名長度不超過31位。(3)變量名以字母開頭,可以是字母、數(shù)字、下劃線組成,但不能使用標點。
2.1常量與變量_2變量命名規(guī)則MATLAB中的變量作用域。MATLAB中的變量命名規(guī)則:2.1常量與變量_2變量命例如:合法變量名x1,x2,a,b,c,abc,Ma1,zhang_3xNo_1,alpha,·········不合法變量:x%1,2x,x變量,abc.變量名和函數(shù)名對字母的大小寫敏感;
X,x,Z,z是不同變量例如:合法變量名x1,x2,a,b,c,abc,Ma創(chuàng)建變量在命令窗口中直接輸入變量名稱創(chuàng)建A=9A=9isvarname8th_column//確認變量名的合法性ans=0創(chuàng)建變量數(shù)據(jù)類型舉例描述邏輯型數(shù)組magic(4)>10包含1、0或true、false字符型數(shù)組‘Hello’長度16位,即為字符串Int8、unit8int16、unit16uint8(magic(3))長度為8位、16位的有符號和無符號整型數(shù)組single3*10^38單精度數(shù)值型數(shù)組double3*10^3005+6i雙精度數(shù)值型數(shù)組單元數(shù)組{17'hello'eye(2)}包含其他數(shù)組。將不同大小有關(guān)系的數(shù)據(jù)集中到一起結(jié)構(gòu)數(shù)組a.day=12;a.color=‘red’;a.mat=magic(3);具有字段名。包含其他數(shù)組。與單元數(shù)組類似matlab數(shù)據(jù)類型數(shù)據(jù)類型舉例描述邏輯型數(shù)組magic(4MATLAB用format命令來控制輸出格式,formatshort短格式
3.146formatlong
長格式3.14159265358979formatshorte短格式e3.1416e+000formatlonge長格式e3.141592653589793e+000formatrat
分數(shù)格式355/113formatbank銀行格式3.14MATLAB用format命令來控制輸出格式,formatwho
列出在MATLAB工作空間中已有的變量whos
列出駐留變量的同時,還給出維數(shù)及性質(zhì)clear
刪除內(nèi)存中的變量(數(shù)據(jù))clc
刪除命令窗口的內(nèi)容(已使用過的命令)home
光標移到命令窗口的左上角clf
刪除圖形窗口的內(nèi)容↑
調(diào)出剛才使用過的命令quit
退出MATLABdir顯示當前目錄下文件及子目錄MATLAB命令窗口的部分通用命令who列出在MATLAB工作空間中已有的變量MAT2.2數(shù)組_1建立與引用2.2數(shù)組
2.2.1建立數(shù)組
1
逐個元素輸入法格式:x=[a,b,c]x=[abc]
[例2-1]
2.2數(shù)組_1建立與引用2.2數(shù)組2.2數(shù)組_1建立與引用2冒號法格式:x=初始量:步長:終止量x=i:j如果i<j,生成以i為初值,j為終值,1為步長的有限等差數(shù)列;x=i:j:k如果i<k,生成以i為初值,k為終值,j為步長的有限等差數(shù)列;x=i:-j:k如果i>k,生成以i為初值,k為終值,-j為步長的有限等差數(shù)列;[例2-2]
2.2數(shù)組_1建立與引用2冒號法2.2數(shù)組_1建立與引用3
特殊方法[linspace,logspace]x=linspace(初始量:終止量:數(shù)組元素個數(shù))x=logspace(初始量:終止量:數(shù)組元素個數(shù))
[例2-3]
[例2-4]
2.2數(shù)組_1建立與引用3特殊方法[linspace2.2數(shù)組_1建立與引用2.2.2數(shù)組應(yīng)用格式:A(s):數(shù)組A的第s個元素
例如:A(3)=7A([1,3,5])=2A([1,3,5])=[2,6,7]2.2數(shù)組_1建立與引用2.2.2數(shù)組應(yīng)用格式:A(s)2.2.1創(chuàng)建矩陣的常用方法:1.直接輸入法;2.函數(shù)法;3.矩陣編輯器;4.數(shù)據(jù)文件法直接輸入法三條規(guī)則:矩陣元素必須在方括號[]之內(nèi);同一行相鄰元素間用逗號或空格分隔;矩陣的行與行之間必須用分號分隔.例4.三階Hilbert矩陣
A=[11/21/3;1/21/31/4;1/31/41/5]A=1.00000.50000.33330.50000.33330.25000.33330.25000.20002.2、矩陣2.2.1創(chuàng)建矩陣的常用方法:1.直接輸入法;2.函數(shù)C=[]—產(chǎn)生空陣r=rand——產(chǎn)生隨機數(shù)R=rand(3,4)——產(chǎn)生3×4階隨機矩陣E=eye(3)——產(chǎn)生3階單位矩陣B=zeros(3,4)——產(chǎn)生3×4階全“0”矩陣D=ones(3,4)——產(chǎn)生3×4階全“1”的矩陣X=magic(3)——產(chǎn)生3階幻方Y(jié)=vander(4)——產(chǎn)生4階范德蒙矩陣函數(shù)法構(gòu)造特殊矩陣C=[]—產(chǎn)生空陣函數(shù)法構(gòu)造特殊矩陣聚合矩陣通過連接一個或多個矩陣來形成新的矩陣C=[AB]//水平方向上聚合C=[A;B]//垂直方向上聚合例A=ones(2,5)*6;B=rand(3,5);C=[A;B]C=6.00006.00006.00006.00006.00006.00006.00006.00006.00006.00000.61540.73820.93550.89360.81320.79190.17630.91690.05790.00990.92180.40570.41030.35290.1389聚合矩陣通過連接一個或多個矩陣來形成新的矩陣例A=on獲取矩陣的元素A(row,column)具體的:A(r,c)A(r,:)A(:,c)A(:)A(s)A(L)獲取矩陣的元素A(row,column)具體的:A=[269;428;351]A=269428351A(3,2)ans=5A(6)//等同A(3,2)ans=5Sum(A(1:3,3))//求第三列元素之和A=[269;428;351]12/18A=magic(3);B1=A(1,:),B12=A(1:2,:),B13=A([1,3],[1,3])B1=816B12=816357B13=864212/18A=magic(3);B1=A(1,:),B13.1、字符串創(chuàng)建字符串-使用單引號創(chuàng)建Country=‘China’;name=[‘LiYi’;’HuXu’]//創(chuàng)建二維字符串數(shù)組name=LiYiHuXuname=[‘LiuYing’;’HuXu’]//字符串長度要相同name=char(‘LiuYing’,’HuXu’)//使用char函數(shù)創(chuàng)建3.1、字符串創(chuàng)建字符串-使用單引號創(chuàng)建Country=‘CStr2double函數(shù)將字符串單元數(shù)組轉(zhuǎn)換為雙精度值c={’37.294e-1’;’-58.375’;’13.796’};d=str2double(c)d=3.7294-58.375013.7960int2str:整型轉(zhuǎn)換為字符串型num2str:實數(shù)轉(zhuǎn)換為字符串型mat2str:矩陣轉(zhuǎn)換為字符串型Str2double函數(shù)將字符串單元數(shù)組轉(zhuǎn)換為雙精度值c={比較字符串str1=‘hello’;str2=‘help’;strcmp(str1,str2)C=0//falsestr1==str2ans=11100//確定兩個字符串中的相同字符strncmp:可選擇字符串的前n+1個字符進行比較比較字符串str1=‘hello’;strncmp:可選擇聚合字符串num_chars=28;s=[‘Thereare‘int2str(num_chars)’charactershere’];s=sprintf(‘Thereare%dcharactershere\n’,num_chars);country=‘China’;province=‘SiChuan’;strcat(country,’,’,province)ans=China,SiChuan聚合字符串num_chars=28;country=‘Chi3.2、多維數(shù)組索引生成A=[578;019;436];//創(chuàng)建一個二維數(shù)組A(:,:,2)=[104;356;987];//為A添加第三維MATLAB函數(shù)生成B=randn(4,3,2);//創(chuàng)建正態(tài)分布隨機數(shù)的4×3×2的數(shù)組類似的函數(shù)有ones(),zeros()等cat函數(shù)生成B=cat(dim,A1,A2…)//按指定的維數(shù)將多個數(shù)組聚合3.2、多維數(shù)組索引生成A=[578;019;434.1、結(jié)構(gòu)-調(diào)用字段的數(shù)組1、使用賦值語句創(chuàng)建結(jié)構(gòu)數(shù)組=‘Ludan’;//可包含任何類型的數(shù)據(jù)student.ID=02;student.test=[797573;807877.5;808585];student(2).name=‘Hanxu’;//擴展結(jié)構(gòu)數(shù)組student(2).ID=10;student(2).test=[687068;788881;929093];2、使用struct函數(shù)str_array=struct(‘field1’,val1,‘field2’,val2,…)4.1、結(jié)構(gòu)-調(diào)用字段的數(shù)組1、使用賦值語句創(chuàng)建結(jié)構(gòu)數(shù)組st3、獲取數(shù)據(jù)str=student(2).namestudent(3).test(2,2)=87IDs=[student.ID]//包含所有的ID字段4、操作字段student(2).gender=‘boy’;//為數(shù)組的每個結(jié)構(gòu)添加字段student=rmfield(student,’name’);//刪除給定字段mean((student(2).test));//計算test數(shù)組的行均值total=sum([student.ID]);所有ID字段求和3、獲取數(shù)據(jù)str=student(2).name4、操作字4.2、單元數(shù)組-能包含其它數(shù)組1、創(chuàng)建單元數(shù)組A[1,1]={[143;058;729]};A[1,2]={‘Liuzhong’};A[2,1]={3+7i;}A[2,2]={-pi:pi/10:pi};//通過矩陣單元索引訪問數(shù)據(jù)或A{1,1}=[143;058;729];A{1,2}=‘Liuzhong’;A{2,1}=3+7i;A{2,2}=-pi:pi/10:pi;//通過矩陣內(nèi)容索引訪問數(shù)據(jù)4.2、單元數(shù)組-能包含其它數(shù)組1、創(chuàng)建單元數(shù)組A[1,1]2.2數(shù)組_2細胞數(shù)組與結(jié)構(gòu)數(shù)組1
細胞數(shù)組[例2-8]
細胞數(shù)組是以單元為元素,每個單元可以包含其它類型數(shù)組,如實數(shù)矩陣、字符串數(shù)組、復(fù)數(shù)向量。細胞數(shù)組通常由{}創(chuàng)建,其數(shù)據(jù)通過數(shù)組下標引用。
2結(jié)構(gòu)數(shù)組[例2-9]結(jié)構(gòu)數(shù)組是根據(jù)屬性名組織起來的不同類型數(shù)據(jù)集合,屬性可以包含不同數(shù)據(jù)類型,結(jié)構(gòu)數(shù)組數(shù)據(jù)通過屬性名來引用。s=struct('field1',{},'field2',{},...)
2.2數(shù)組_2細胞數(shù)組與結(jié)構(gòu)數(shù)組1細胞數(shù)組[例2-82.3運算符_1算術(shù)運算符
2.3.1算術(shù)運算符
算術(shù)加、減、乘及乘方與傳統(tǒng)的基本相同;點運算(點乘、點乘方、點左除與點右除)是指元素點對點運算,要求參與運算變量結(jié)構(gòu)相似。除法運算:a/b=a÷b;(ax=b,x=a\b’)2.3運算符_1算術(shù)運算符2.3.1算術(shù)運算符2.3運算符_2關(guān)系運算符,邏輯運算符
,邏輯函數(shù)2.3.2關(guān)系運算符==~=>=<=[例if(a(5)==1&a(6)<=1);a(7)=2;end;]2.3.3邏輯運算符&(和)|(或)~(非)2.3.4邏輯函數(shù)B1=all(a)%判斷向量a中的每個元素是否為非零數(shù)[i,j,v]=find(A);%找出非零元素位置[i,j]及其值[v]2.3運算符_2關(guān)系運算符,邏輯運算符,邏輯函數(shù)2.3→2.3運算符_3字符串操作2.3.5字符串操作
1
字符串定義
s='str',name=['str1''str2''str3']
字符串中要輸入“'”必須通過兩個“'”實現(xiàn)。
2
字符串轉(zhuǎn)換[例2-21,2->to]S=char(T)%正整數(shù)矩陣T轉(zhuǎn)換為字符串矩陣S
int2str(A),num2str(A,k),num2str(A,format)
eval(S),str2num(S)表示將字符串S轉(zhuǎn)化為數(shù)值。→2.3運算符_3字符串操作2.3.5字符串操作2.3運算符_4字符串操作[例][例2-21]將數(shù)值矩陣A轉(zhuǎn)換成字符串矩陣。A=[;]
[算例代碼]%例2-21A=[;];B1=int2str(A)B2=num2str(A,0)
B3=num2str(A,'%10.3f')%3位有效位,10位長注意運行結(jié)果。2.3運算符_4字符串操作[例][例2-21]將數(shù)值矩陣2.3運算符_5字符串比較與求值3字符串比較strcmp(str1,str2)表示將兩個字符串進行比較4字符串求值
inli
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度酒店客房翻新裝修承包合同
- 2025年度廚師餐飲項目合伙人聘用合同范例
- 2025年離婚協(xié)議中共同債務(wù)分擔(dān)及清償協(xié)議范本
- 2025年度離婚協(xié)議書中子女心理健康關(guān)懷與輔導(dǎo)協(xié)議
- 2025年度城市綜合體房地產(chǎn)開發(fā)建設(shè)工程合同
- 制定客戶忠誠計劃的月度工作計劃
- 住院患者權(quán)益維護措施計劃
- 國際貿(mào)易的市場分析與預(yù)測計劃
- 應(yīng)對突發(fā)事件的生產(chǎn)計劃調(diào)整
- 秋季學(xué)期學(xué)業(yè)輔導(dǎo)計劃
- 2025新人教版英語七年級下單詞表(小學(xué)部分)
- 2025年春季1530安全教育記錄主題
- 川教版2024-2025學(xué)年六年級下冊信息技術(shù)全冊教案
- 2022年含麻黃堿類復(fù)方制劑培訓(xùn)試題和答案
- 玻璃水鉆行業(yè)需求分析及生產(chǎn)工藝流程
- 上科教版五年級上冊書法教案
- 中美個人所得稅征管與稅收流失現(xiàn)狀比較
- 可填充顏色的中國地圖,世界地圖,各省市地圖填色
- 第四軍醫(yī)大學(xué)擬招收博士后研究人員意見表
- 環(huán)保機制磚項目可行性研究報告寫作范文
- 中式烹調(diào)技藝PPT課件
評論
0/150
提交評論