




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、MATLAB快速入门,Matlab 简介,Matlab 提供了强大的科学计算、灵活的程序设计流程、高质量的图形可视化与界面设计等功能,被广泛应用于科学计算、控制系统、信息处理等领域的分析、仿真和毕业设计。Matlab 功能强大、简单易学、编程效率高,深受广大科技工作者的欢迎。,Matlab是一种广泛应用于工程计算及数值分析领域的新型高级语言,现已成为国际公认的最优秀的工程应用开发环境。,Matlab 具有很强的数值计算功能,Matlab 以矩阵作为数据操作的基本单位,但无需预先指定矩阵维数(动态定维),提供十分丰富的数值计算函数,方便计算,提高效率,简便易学:Matlab 命令与数学中的符号、
2、公式非常接近,可读性强,容易掌握,Matlab: Matrix Laboratry,Matlab 的绘图功能强大,Matlab提供丰富的绘图命令,很方便实现数据的可视化,Matlab 的特点与功能,Matlab 符号计算功能强大,Matlab 丰富的工具箱(toolbox),根据专门领域中的特殊需要而设计的各种可选工具箱,Matlab 的基本用法,注:在任何时候,只要按ctrl+c,MATLAB将停止运行的所有工作,Matlab 的工作界面,命令窗口,当前工作目录,当前工作空间,输入命令的历史记录,命令 提示符,Matlab 的命令窗口,cos(0),210,2+4i A=1 2 3;2 4
3、6;3 6 9 det(A) t=0:pi/100:2*pi; y=sin(t); plot(t,y,r*),变量命名原则,Matlab 变量,系统预定义变量,Matlab 变量,pi 圆周率 ,inf/Inf 无穷大,nan/NaN Not-a-Number,一个不定值,如 0/0,eps 浮点运算相对精度,特殊变量 ans,i/j 虚部单位,即,应尽量避免给系统预定义变量重新赋值!,数与算术表达式,Matlab 数值运算,浮点数表示范围为:10-308 10308,数学运算符,+ 加法,Matlab 数值运算,- 减法,* 乘法,/ 和 除法(右除和左除), 幂运算,.* ./ . . 点
4、运算,常用数学函数,常用数学函数,简单实例,练习: 求29的自然对数和无理数e的值 ,矩阵的基础操作,矩阵的直接输入,矩阵用方括号“ ”括起,例: A = 1 2 3; 4 5 6; 7 8 9,矩阵同一行中的元素之间用空格或逗号分隔,矩阵行与行之间用 分号分开,直接输入法中,分号可以用回车代替,矩阵,Matlab 的操作对象是 矩阵,矩阵下标,单个元素的引用,例: A(2,3),矩阵元素的引用,矩阵操作,提取矩阵的部分元素: 冒号运算符,A(i,j) A的第i行第j列元素,A(:,k) A的第 k 列 A(k,:) A的第 k 行,A(:,k:m) A的第 k 到第 m 列组成的子矩阵 A(
5、end,end) A的最后一行最后一列,如何获得由 A 的第一、三行和第一、二列组成的子矩阵?,矩阵的各种处理,A(2,3) %查询第2行第3列所对应的元素 A(12) %查询第12个元素 A(9 14,10 15) %思考之 A(:,4) %查询第4列元素 A(4,:) %查询第4行元素 A(end,:) %最后一行元素 A(find(A5) %查询大于5的元素 A(2,3) = 5 %重新赋值第2行3列元素为5,向量与矩阵的生成,向量与矩阵的生成,从矩阵中抽取行或列 生成线性等分向量:x=linspace(a,b,n),x=linspace(0,1,5),x2=a+h:h:b-h;%2倍的
6、点 x4=a+h/2:h:b-h/2;%4倍的点,大矩阵可以把小矩阵作为其元素,矩阵元素赋值,如何在原矩阵的右边添加一列?,已知矩阵A和行向量b,如何得到矩阵,常见矩阵生成函数,矩阵操作,查看矩阵的大小:size,size(A) 列出矩阵 A 的行数和列数,size(A,1) 返回矩阵 A 的行数,size(A,2) 返回矩阵 A 的列数,length(x) 返回向量 X 的长度,length(A) 等价于 max(size(A),逆矩阵与行列式计算,矩阵的逆矩阵:inv(A),矩阵的行列式:det(A) 要求A为方阵,矩阵的秩:rank(A),例:A=1 2 3; 4 5 6; 2 3 5;
7、 A1=inv(A), d=det(A1), rank(A1),矩阵的数组运算,数组运算:对应元素进行运算,点与算术运算符之间不能有空格!,数组运算包括:点乘、点除、点幂,相应的数组运算符为: “.* ” , “./ ” , “. ” 和“ . ”,数与数组的点幂,x.y =14,25,36=1,32,729,x.2 =12,22,32=1,4,9,2.x = ?,例:x=1 2 3; y=4 5 6;,矩阵的“除法”,矩阵的除法:/、 右除和左除,若 A 可逆方阵,则,AB A 的逆左乘 B inv(A)*B,B/A A 的逆右乘 B B*inv(A),X=AB A*X=B X=B/A X*
8、A=B,通常,矩阵除法可以理解为,当 A 和 B 行数相等时即可进行左除 当 A 和 B 列数相等时即可进行右除,向量特殊运算介绍,例:A=magic(3)或A=1:5 %运算对向量或矩阵都适用 B=mean(A) C=sum(A),矩阵操作,矩阵的上、下三角阵,对角阵,triu(A,k) upper triangular part 上三角 tril(A,k) lower triangular part 下三角,矩阵的旋转,fliplr(A) 左右旋转,flipud(A) 上下旋转,rot90(A) 逆时针旋转 90 度; rot90(A,k) 逆时针旋转 k90 度,变量的存储,存储当前工作
9、空间中的变量,save 将所有变量存入文件 matlab.mat,save mydata 将所有变量存入指定文件 mydata.mat,存储指定的变量,save mydata.mat 将所有变量存入文件 mydata.mat,save 文件名 变量名列表,例: save mydata A x z,变量名列表中各变量之间用空格分隔。,变量的读取,清除当前工作空间中的变量,clear 清除当前工作空间中的所有变量,clear A x 清除指定的变量,输出格式,Matlab 的输出,Matlab 以双精度执行所有的运算,运算结果可以在屏幕上输出,同时赋给指定变量;若无指定变量,则系统会自动将结果赋给
10、变量 “ans”,File菜单,选择Preferences菜单项,可以设置显示格式 Matlab 中数的输出格式可以通过 format 命令指定,format 只改变变量的输出格式,但不会影响变量的值!,Matlab帮助系统,例: help eig help sqrt,例: doc eig,基础编程,编程基础,用 Matlab 语言编写的程序称为 M 文件。,M 文件是由若干 Matlab 命令组合在一起构成的,它可以完成某些操作,也可以实现某种算法。事实上,Matlab 提供的内部函数以及各种工具箱,都是利用 Matlab 语言开发的 M 文件。用户也可以结合自己的工作需要,开发自己的程序或
11、工具箱。,M 文件,M 文件以 .m 为扩展名。,M 文件是一个文本文件,可以用任何文本编辑器来建立和编辑,通常使用 Matlab 自带的 M 文件编辑器。,M 文件的建立与打开,程序控制结构有三种:顺序结构、选择结构和循环结构。,M文件控制流,选择结构 是根据给定的条件成立或不成立,分别执行不同的语句。Matlab 用于实现选择结构的语句有 if 语句和 switch 语句。,关系运算,比较大小,如果结论是 真 则返回 1 ,否则返回 0,注意 = 与 = 的区别,关系操作符能用来比较两个同样大小的数组,或用来比较一个数组和一个标量,在后一种情况,标量和数组中的每一个元素相比较,比较结果与数
12、组大小一样。,关系运算符,逻辑运算,逻辑运算符,A 4 5 6; 7 8 9; disp(B),数据输出 disp,数据的输出:disp,单分支结构,if expression (条件) statements (语句组) end,if 条件语句,数据输出 fprintf,format 中还可以使用一些特殊格式,如:,n ( 换行 ) t ( 制表符 ) b ( 退格 ) ( 反斜杆 ) % ( 百分号 ),function out1,out2,=函数名(in1,in2,) % 注释说明部分(可选) 函数体语句(必须),第一行为引导行,表示该 M文件是函数文件 函数名的命名规则与变量名相同 (
13、必须以字母开头 ) 当输出行参多于一个时,用方括号括起来 函数必须是一个单独的 M文件 函数文件名必须与函数名一致 以百分号开始的语句为注释语句,函数文件,函数文件由 function 语句引导,函数文件举例,myfun.m,function x1,x2=myfun(a,b,c) temp=sqrt(b2-4*a*c); x1=(-b+temp)/2/a; x2=(-b-temp)/2/a;,函数调用的一般格式,输出实参列表=函数名(输入实参列表),函数调用,子函数,function avg = fun(x) % 主函数 n = length(x); avg = mean(x, n); fun
14、ction a = mean(x, n) % 子函数 a = sum(x)/n;,M文件的编辑,进入MATLAB的Editor/Debugger窗口来编辑程序 在编辑环境中,文字的不同颜色显示表明文字的不同属性。 绿色:注解;黑色:程序主体;红色:属性值的设定;蓝色:控制流程。,程序设计技术,程序出错主要为两类: 1)格式错误,如缺(或)等,在运行时可检测出大多数该类错误,并指出错在哪一行。 2)算法错误,逻辑上的错误,不易查找,遇到此类错误时需耐心。,程序控制结构有三种:顺序结构、选择结构和循环结构。任何复杂的程序都由这三种基本结构组成。,顺序结构,M文件控制流,选择结构 是根据给定的条件成
15、立或不成立,分别执行不同的语句。Matlab 用于实现选择结构的语句有 if 语句和 switch 语句。,选择结构,if expression1 (条件1) statements1(语句组1) elseif expression2 (条件2) statements2(语句组2) . . elseif expressionm (条件m) statementsm(语句组m) else statements(语句组) end,多分支结构,if 条件语句,for variable=expression statement(循环体) end,循环变量,循环结构,while expression (条件
16、) statement(循环体) end,for循环,【练习】一个三位整数各位数字的立方和等于该数本身则称该数为水仙花数。输出全部水仙花数。,循环语句可以嵌套使用,while 循环,while expression (条件) statement(循环体) end,不能在 for 循环体内改变循环变量的值,为了提高代码的运行效率,应尽可能提高代码的向量化程度,避免 for 循环的使用,如果预先就知道循环的次数,则可以采用 for 循环;否则,如果预先无法确定循环的次数,则可以使用 while 循环。,break 和 continue,break 语句用于终止循环的执行,即跳出最内层循环 cont
17、inue 语句用于结束本次循环,进行下一次循环 break 和 continue 一般与 if 语句配合使用,其它流控制语句,根据表达式的不同取值,分别执行不同的语句。,switch expression (表达式) case value1 (表达式1) statement1(语句组1) case value2 (表达式2) statement2(语句组2) . . case valuem (表达式m) statementm(语句组m) otherwise statement (语句组) end,switch 语句,首先由计算机随机产生一个 1,100 之间的一个整数,然后由用户猜测所产生的这
18、个数。根据用户猜测的情况给出不同的提示,如果猜测的数大于产生的数,则显示 “High” ,小于则显示 “ Low ” ,等于则显示 “You won!”,同时退出游戏。用户最多有 7 次机会。,上机作业,猜数游戏,Matlab 绘图,Matlab 二维作图,plot(x,y),基本形式,x, y 都是向量,则以 x 中元素为横坐标, y 中元素为纵坐标作平面曲线。此时 x, y 必须具有相同长度。,x, y 都是矩阵,则将 x 的列和 y 中相应的列相组合,绘制多条平面曲线。此时 x, y 必须具有相同的大小。,x 是向量, y 是矩阵,若 x 的长度与 y 的行数相等,则将 x 与 y 中的
19、各列相对应,绘制多条平面曲线;否则,若 x 的长度与 y 的列数相等,则将 x 与 y 中的各行相对应,绘制多条平面曲线。此时 x 的长度必须等于 y 的行数或列数。,点和线的基本属性,图形的属性,属性可以全部指定,也可以只指定其中某几个 排列顺序任意,同时绘制多个函数图像,plot(x1,y1,s1,x2,y2,s2, . ,xn,yn,sn),属性选项 可以省略,等价于:,hold on plot(x1,y1,s1) plot(x2,y2,s2) . plot(xn,yn,sn),图形的基本属性,help plot 查看,图形的其他属性,标题,title(text),坐标轴标注,xlabel(text) 或 y
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 配电柜安全培训
- 虚拟现实疼痛管理-洞察阐释
- 【正版授权】 IEC 60704-2-3:2025 EN-FR Household and similar electrical appliances - Test code for the determination of airborne acoustical noise - Part 2-3: Particular requirements for d
- 【正版授权】 IEC 60332-1-2:2025 CMV EN Tests on electric and optical fibre cables under fire conditions - Part 1-2: Test for vertical flame propagation for a single insulated wire or cab
- 股权低价转让合同签订与履行保障合同
- 2025至2030中国现成的游泳池行业产业运行态势及投资规划深度研究报告
- 家宴中心厨师培训课件
- 智慧安防在商业领域的应用实践
- 智慧城市的数据安全法规与监管探讨
- 提升学习效果教育心理学的力量
- 小儿重症专科进修汇报
- 2025广西中医药大学赛恩斯新医药学院教师招聘考试试题
- 京东居家客服面试题及答案
- 制造业中数字孪生技术的市场推广策略研究
- JJF(赣) 028-2024 气相分子吸收光谱仪校准规范
- (王瑞元版本)运动生理学-课件-2-第二章-骨骼肌机能
- 2023年广东省高中生物学业水平合格性考试试卷真题(含答案详解)
- 孩子上学劳动合同协议
- 胎膜早破的护理查房
- 强奸赔偿和解协议书
- 【阿里妈妈】2025未来商业奖案例大赏
评论
0/150
提交评论