MATLAB总复习_第1页
MATLAB总复习_第2页
MATLAB总复习_第3页
MATLAB总复习_第4页
MATLAB总复习_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 MATLAB期末总复习 MATLAB操作界面操作界面nCommand Window 命令窗口命令窗口nCommand History 历史命令窗口历史命令窗口nCurrent Directory 当前目录窗口当前目录窗口nWorkspace 工作空间窗口工作空间窗口第一章、第一章、MATLAB简介简介第二章、第二章、MATLAB语言基础语言基础 MATLAB 中变量名的命名规则:中变量名的命名规则: 变量名必须变量名必须以字母开头以字母开头,且只能由字母、数字或者下画线,且只能由字母、数字或者下画线3 类符号类符号组成,不能含有空格和标点符号等。组成,不能含有空格和标点符号等。(2) 变量名

2、变量名区分字母的大小写区分字母的大小写。(3) 变量名不能超过变量名不能超过63 个字符,第个字符,第63 个字符后的字符被忽略。个字符后的字符被忽略。(4) 关键字关键字(如如if、while 等等)不能作为变量名。不能作为变量名。(5) 最好不要用特殊常量符号作变量名。最好不要用特殊常量符号作变量名。常见的错误命名如常见的错误命名如f(x),y,y,A2 等。等。矩阵矩阵/ /数组运算中的算术运算符数组运算中的算术运算符向量运算向量运算 向量的生成方法:向量的生成方法:n1. 直接输入法 n2. 冒号表达式法 n3. 函数法:线性等分 linspace( ) ; A=linspace(a1

3、,an ,n) 对数等分 logspace( ) A=linspace(a1,an ,n) 向量的运算向量的运算 n1.向量的加减和数乘运算向量的加减和数乘运算n2. 点积运算点积运算 (dot(A,B) )n3. 叉积运算叉积运算 (cross(A,B) )矩矩 阵阵 运运 算算 n1. 矩阵元素的赋值(直接、全下标、单下标) n2. 矩阵的创建 n(1) 矩阵的所有元素必须放在方括号 () 内; (2) 每行的元素之间需用逗号或空格隔开; (3) 矩阵的行与行之间用分号或回车符分隔 (4) 元素可以是数值或表达式。 矩阵的创建矩阵的创建n1. 抽取法 n2. 拼接法 n3. 函数法 zer

4、os(m,n) 生成 mn 阶的全 0 矩阵 ones(m,n) 生成 mn 阶的全 1 矩阵 rand(m,n) 生成取值在 0 1 之间满足均匀分布的随机矩阵 randn(m,n) 生成满足正态分布的随机矩阵 eye(m,n) 生成 mn 阶的单位矩阵 magic 魔方矩阵 矩阵的创建矩阵的创建n4. 拼接函数和变形函数法 ncat 和 repmat 函数 ncat(n,A1,A2,A3,) , n=1 时,表示沿行方向拼接; n=2 ,表示沿列方向拼接。n repmat 函数的使用格式是: repmat(A,m,n) , m 和 n 分别是沿行和列方向重复拼接矩阵A 的次数。 n矩阵的代

5、数运算(矩阵加减、数乘与乘法)n矩阵的除法n求线性方程组的解n A=1 4 - 7 6;0 2 1 1;0 1 1 3;1 0 1 -1,B=0; - 8; - 2;1,x=AB nA=1 0 0 1;4 2 1 0; - 7 1 1 1;6 1 3 - 1,B=0 - 8 - 2 1,x=B/A 矩阵的提取与翻转矩阵的提取与翻转 ntriu(A) 提取矩阵 A 的右上三角元素,其余元素补 0 ntril(A) 提取矩阵 A 的左下三角元素,其余元素补 0n diag(A) 提取矩阵 A 的对角线元素 nflipud(A) 矩阵 A 沿水平轴上下翻转 nfliplr(A) 矩阵 A 沿垂直轴左

6、右翻转 nflipdim(A,dim) 矩阵 A 沿特定轴翻转。 dim=1 ,按行翻转; dim=2 ,按列翻转 nrot90(A) 矩阵 A 整体逆时针旋转 90 n1.数组的加减、数乘与乘法n2.数组的除法n3.数组的关系与逻辑运算数组运算数组运算常用的基本数学函数常用的基本数学函数字符串运算字符串运算n1.求字符串长度 size( ) length( )大n2.显示字符串 disp( )第三章、第三章、MATLAB数值运算数值运算多多 项项 式式n多项式的表达和创建n多项式:多项式:s4 + 3s3 15s2 2s + 9,表示成,表示成向量向量 x = 1 3 -15 -2 9的形式

7、的形式n多项式求值多项式求值y = polyval(p,x)n多项式求根多项式求根 x=roots(P)多项式插值函数多项式插值函数n重点重点nyi = interp1(x,y,xi,method) ,其中,其中x和和y是原已知数据,是原已知数据,xi 是要内插的数据点,是要内插的数据点,method 是插值方法:是插值方法:nnearest为寻找最近数据节点为寻找最近数据节点 (执行速度最快,输出结果执行速度最快,输出结果为直角转折为直角转折)nlinear为线性插值为线性插值(是默认值,在样本点上斜率变化很大是默认值,在样本点上斜率变化很大)nspline为分段三次样条插值函数,在数据节点

8、处光滑,即为分段三次样条插值函数,在数据节点处光滑,即左导等于右导左导等于右导(最花时间,但输出结果也最平滑最花时间,但输出结果也最平滑)ncubic为三次方程式插值为三次方程式插值(最占内存,输出结果与最占内存,输出结果与spline相似相似)如果数据变化较大,以如果数据变化较大,以spline函数内插所形成的曲函数内插所形成的曲线最平滑,效果最好。线最平滑,效果最好。n例:一个汽车发动机在转速为例:一个汽车发动机在转速为 2000r/min 时,温度与时间时,温度与时间s的的5 个测量值已知:个测量值已知:n时间时间/s 0 1 2 3 4 5n温度温度/C 0 20 60 68 77 1

9、10n估计在估计在t=2.5s 和和t=4.3s 时的温度。时的温度。多项式拟合函数多项式拟合函数请分别用拟合请分别用拟合(二阶至三阶二阶至三阶)和插值和插值(线性和三次样条线性和三次样条)的方法来估测的方法来估测 X=9.5 时时 Y 的值。的值。x=1:10 y=16 32 70 142 260 436 682 1010 1432 1960 p2=polyfit(x,y,2)yp2=polyval(p2,9.5)二阶二阶p3=polyfit(x,y,3)yp3=polyval(p3,9.5)三阶三阶yi1=interp1(x,y,9.5)线性线性yi2=interp1(x,y,9.5,sp

10、line)三次样条三次样条插值和拟合插值和拟合ninterp1(x,y,xi) (上例)(上例)ninterp1(x,y,xi,cubic) ninterp1(x,y,xi,spline) np=polyfit(x,y,n),结合,结合polyval(p,xi)数值微积分数值微积分n微分和差分diff函数:计算两个相邻点的差值:函数:计算两个相邻点的差值:diff(x):返回:返回x对预设独立变量的一次微分值;对预设独立变量的一次微分值;其中其中x代表一组离散点代表一组离散点xk,k= 1,n。dy(x)/dx的数值微分为的数值微分为dy=diff(y)./diff(x)。ncumsum(矩形

11、积分矩形积分):cumsum(x)*hntrapz(梯形积分梯形积分):z=trapz(x,y) nquad(辛普森积分辛普森积分):q=quad(f,a,b)nquadl(科茨积分,也称高精度数值积分科茨积分,也称高精度数值积分):q=quadl(f,a,b)数值积分数值积分x=linspace(0,1,100);y=x./(x.2+4);t=cumsum(y*(1/99);t(99)x=linspace(0,1,100);y=x./(x.2+4);t=trapz(x,y)t=quad(x./(x.2+4),0,1)t=quadl(x./(x.2+4),0,1)在在0,1区间内,分别用矩形法

12、,梯形法,辛普森积分法区间内,分别用矩形法,梯形法,辛普森积分法以及科茨积分法对以及科茨积分法对y=x/(x2+4)进行积分。进行积分。第四章、结构数组与细胞数组第四章、结构数组与细胞数组 结构数组结构数组n1. 通过赋值创建结构数组:通过赋值创建结构数组:struct_name(record#).field_name=datan2. 利用利用 struct 函数创建结构数组函数创建结构数组 利用利用 struct 函数创建结构数组的格式为函数创建结构数组的格式为 (1) struct_name = struct(field1,field2, ) (2) struct_name = struc

13、t(field1,values1, field2,values2, )结构数组的相关函数结构数组的相关函数 nstruct 创建结构数组创建结构数组 nisstruct 判定是否为结构数组,判定是否为结构数组, 是结构数组时,其值是结构数组时,其值为真为真 nisfield 判定域是否在结构数组中,判定域是否在结构数组中, 在结构数组中时,在结构数组中时,其值为真其值为真 ngetfield 获取域值获取域值 (重)nfieldnames 获取结构数组域名获取结构数组域名(重)n rmfield 删除结构数组中的域删除结构数组中的域nsetfield 设定域值设定域值 细胞数组细胞数组n细胞数

14、组的创建细胞数组的创建n1 通过赋值创建细胞数组通过赋值创建细胞数组 cell_namei,j = value 花括号和圆括号在使用上的细微区别, 花括号表示细胞元素的内容;圆括号表示细胞元素。 细胞数组的创建细胞数组的创建n2 利用函数 cell 创建细胞数组 (1) cell_name = cell(n) (2) cell_name = cell(m,n) 或 cell_name = cell(m n) (3) cell_name = cell(m,n,p,.) 或 cell_name = cell(m n p .) (4) cell_name = cell(size(A)n创建细胞数组可

15、以对细胞元素直接赋值或采用函数cell,采用函数创建的细胞数组所有元素为空。 例例n根据电子班教师和学生信息,建立结构数组teacher和student,并创建细胞数组class,其元素分别为teacher和student。numbernamecoursescore20050731021张小霞数电、高频75、9020050731031郭凯数电、高频56、87idnamecoursexx012姚大志数电xx066王佳高频表1 学生信息表2 老师信息nstudent=struct(number,20050731021,20050731031,name,张小霞,郭凯,. course,数电,高频,s

16、core,75 90,56 87);nteacher=struct(id,xx010,xx016,name,姚大志,王佳,course,数电,高频);nts1=teacher;ts2=student;nclass=ts1 ts2第六章、第六章、MATLAB 程序设计程序设计 9(重要)(重要)nM文件的两种形式文件的两种形式(区别)n脚本文件脚本文件(Script File):通常用于执行一系列简:通常用于执行一系列简单的单的 MATLAB 命令,运行时只需输入文件名命令,运行时只需输入文件名字,字,MATLAB 就会自动按顺序执行文件中的就会自动按顺序执行文件中的命令;命令;n函数文件函数文

17、件(Function File)。可以接受参数,也。可以接受参数,也可以返回参数,在一般情况下,用户不能靠单可以返回参数,在一般情况下,用户不能靠单独输入其文件名来运行函数文件,而必须由其独输入其文件名来运行函数文件,而必须由其他语句来调用,他语句来调用,MATLAB的大多数应用程序的大多数应用程序都以函数文件的形式给出。都以函数文件的形式给出。函数文件的组成部分函数文件的组成部分n(1) 函数定义行函数定义行n(2) H1行行(look for)n(3) 帮助文本帮助文本(help)n(4) 函数体函数体n(5) 注释注释函数的调用函数的调用n一般格式:一般格式:输出参数表输出参数表=函数名

18、函数名(输入参输入参数表数表)n在编写函数文件调用时常通过在编写函数文件调用时常通过 nargin、 nargout 函数来设置默认输入参数,并决函数来设置默认输入参数,并决定用户所希望的输出参数。定用户所希望的输出参数。描述下面函数完成的功能描述下面函数完成的功能 (考(考nfunction y=average_2(x)nm,n=size(x);nif(m=1)|(n=1)| (m=1)& (n=1)nerror(必须输入向量。必须输入向量。)nEndn(这个是求向量的平均值)MATLAB 的程序控制结构的程序控制结构n循环语句循环语句n条件语句条件语句n开关语句开关语句循环语句循环

19、语句n1. for 循环循环nfor 循环的一般形式循环的一般形式:n for 循环控制变量循环控制变量=数组表达式数组表达式n 语句语句n endn一般用来求和一般用来求和循环语句循环语句n2. while 循环循环nwhile 关系表达式关系表达式n 语句语句n endn一般用来求最大值或最小值一般用来求最大值或最小值例例n分别用for和while循环结构计算1+2+3+100。(考)(考)ns=0; for n=1:100 s=s+n; endnn=1;s=0; while n1 EPS=EPS/2; num=num+1; end num=num - 1 EPS=2*EPS (书上)条件

20、语句条件语句nif 语句语句nswitch 语句语句if 语句语句nn=input(n=);if isempty(n)=1 a=empty; elseif n=round(n) a=not an integer;elseif rem(n,2)=0,a=odd; elseif rem(n,2)=0,a=even; else a=not a number;endaswitch 语句语句n试用switch语句完成卷面成绩score的转换: (1) score90分,优; (2) 90score80分,良; (3) 80 score 70分,中;(4) 70 score60分,及格;(5) 60sco

21、re ,不及格。n(书上书上172讲讲switch与与case的用法)的用法) try 语句语句 n解释下列指令,并写出指令运行结果 nA=1,2,3;4,5,6; B=7,8,9;10,11,12; try C=A*B;判断矩阵判断矩阵A与矩阵与矩阵B,是就执行是就执行 catch C=A.*B;不是。就是数组的乘法不是。就是数组的乘法 end C 7,16,27,40,55,72程序流的控制程序流的控制数据的输入与输出数据的输入与输出n键盘输入语句(键盘输入语句(input)n键盘输出语句(键盘输出语句(disp)文件的打开文件的打开n1、fopen 语句语句 n(1) fid = fop

22、en(filename) : 以只读方式打开名为以只读方式打开名为 filename 的二进制文件,的二进制文件, 如果文件可以正常打开,则如果文件可以正常打开,则获得一个文件句柄号获得一个文件句柄号 fid ;否则;否则 fid = - 1 。 n(2) fid = fopen(filename,permission) :以:以 permission 指指定的方式打开名为定的方式打开名为 filename 的二进制文件或文本文件,的二进制文件或文本文件,如果文件可以正常打开,则获得一个文件句柄号如果文件可以正常打开,则获得一个文件句柄号 fid( 非非 0 整数整数 ) ;否则;否则 fid

23、 = - 1 。 文件的关闭文件的关闭n2. fclose 语句语句n (1) status = fclose(fid) : 关闭句柄号关闭句柄号 fid 指定指定的文件。如果的文件。如果 fid 是已经打开的文件句柄号,是已经打开的文件句柄号,成功关闭,成功关闭, status =0 ;否则;否则 status = - 1 。n (2) status = fclose(all) : 关闭所有文件关闭所有文件 ( 标标准的输入准的输入 / 输出和错误信息文件除外输出和错误信息文件除外 ) 。 成功成功关闭,关闭, status =0 ;否则;否则 status = - 1 。 n假设文件假设文

24、件alphabet.txt中包含中包含26个英文字个英文字母,都为大写。用母,都为大写。用 fopen函数打开该文件,函数打开该文件,并将前并将前5个值读到个值读到 c 变量中。变量中。例例 fid = fopen(alphabet.txt, r); c = fread(fid, 5) fclose(fid); 第七章第七章 数据可视化数据可视化基本二维图形绘制基本二维图形绘制nplot绘图n(1) plot(Y)n(2) plot(X,Y)nplot(X1,Y1,X2,Y2,Xn,Yn)画出多根曲线色彩和线型n颜色颜色ny:黄:黄yellownb:蓝:蓝blueng:绿:绿greennm:洋红:洋红magentanw:白:白whitenc:青:青cyannk:黑:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论