版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1 MATLAB是美国MathWorks公司出品的一款商业数学软件。 目前,MATLAB已经成为国际最流行的科学与工程计算软件之一,它以模块化的计算方法、可视与智能化的人机交互功能、丰富的矩阵运算、图形绘制和数据处理函数,以及模块化图形的动态系统仿真工具Simulink,成为控制系统设计和仿真领域最受欢迎的软件系统。 在欧、美大学的高等数学、数理统计、自动控制、数字信号处理、模电与数电、时间序列分析等课程的教科书中,都把MATLAB作为其中的内容。同时,在欧、美这些大学里,MATLAB是攻读学位的本科生、研究生必须掌握的基本工具。MATLAB的发展历程及其影响2 MATLAB是一个高精度的科学
2、计算语言,它将计算、可视化和编程结合在一个容易使用的环境中,在这个环境中,用户可以把提出的问题和解决问题的办法用熟悉的数学符号表示出来。MATLAB的典型应用包括:l数学和计算 l运算法则l建模和仿真l数据分析、研究和可视化l科学的工程图形l应用程序开发,包括创建图形用户接口。典型应用3 MATLAB是一个交互式系统,主要由5部分组成:l开发环境:一组实用工具,利用这些工具,用户可以使用MATLAB函数和文件。l数学函数库:庞大的算法库,包括基本函数、复杂函数等。l语言:高级的矩阵/数组编程语言,具有流程控制语句、函数、数据结构、输入/输出和面向对象编程的特点。l图形处理系统:主要包括能够生成
3、二维/三维数据可视化、图像处理、动画及演示图形的高级命令。l应用程序接口(API):一个用户编写与MATLAB接口的C和Fortran程序的函数库。基本组成4主要目标l了解MATLAB的基本知识l熟悉MATLAB的上机环境l掌握利用MATLAB进行基本运算的方法l初步具备将一般数学问题转化成对应的计算机模型并进行处理的能力5主要内容l1 MATLAB数值运算数值运算l2 MATLAB程序设计程序设计l3 MATLAB绘图绘图l4 MATLAB符号运算符号运算61 MATLAB数值运算l掌握矩阵、向量、数组和多项式的构造和运算方法l能够使用常用的几种函数进行一般的数值问题求解7矩阵及其运算l通过
4、直接输入矩阵的元素构造矩阵:通过直接输入矩阵的元素构造矩阵:l用中括号 把所有矩阵元素括起来l同一行的不同数据元素之间用空格或逗号间隔l用分号(;)指定一行结束l可分成几行进行输入,用回车符代替分号l数据元素可以是表达式,系统将自动计算结果8例:例:输入矩阵输入矩阵A、B的值的值A=1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16B=1,sqrt(25),9,13 2,6,10,7*2 3+sin(pi),7,11,15 4, abs(-8),12,169矩阵下标与子矩阵提取矩阵下标与子矩阵提取lA(m, n)提取第提取第m行,第行,第n列元素列元素lA(:,
5、 n)提取第提取第n列元素列元素lA(m, :)提取第提取第m行元素行元素lA(m1:m2, n1:n2) 提取第提取第m1行到第行到第m2行和第行和第n1列到第列到第n2列的所有元素列的所有元素lA(m:end, n)提取从第提取从第m行到最末行和第行到最末行和第n列的子块列的子块lA(:)得到一个长列矢量,该矢量的元素按矩得到一个长列矢量,该矢量的元素按矩阵的列进行排列阵的列进行排列10例:例:修改矩阵A中元素的数值A=1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16;A(1,1)=0;A(2,2)=A(1,2)+A(2,1);A(4,4)=cos(0);
6、则矩阵变为:A = 0 2 3 4 5 7 7 8 9 10 11 12 13 14 15 111矩阵的算术运算l1矩阵的加减运算:矩阵的加减运算:(加加)、(减减)l2矩阵乘法:矩阵乘法:*(乘乘)l3矩阵除法:矩阵除法:/ (右除右除)、 (左除左除)l4矩阵的乘方:矩阵的乘方:(乘方乘方)l5矩阵转置:矩阵转置: (转置运算符转置运算符)几点注意l允许参与运算的两矩阵之一是标量。标量与矩阵的所有元素分别进行加减操作;l标量可与任何矩阵相乘;lAB=inv(A)*B,即x为Ax=B的解;lA/B=B*inv(A), 即x为xAB的解;1213矩阵的关系运算l关系运算符:关系运算符:(小于)
7、、(大于)=(大于或等于)、=(等于)、=(不等于)。l关系运算符的运算法则:关系运算符的运算法则:l关系运算将对两个矩阵的对应元素进行比较。 14矩阵的逻辑运算l必须是两个同维矩阵或其中一个矩阵为标量才能进行必须是两个同维矩阵或其中一个矩阵为标量才能进行 lMATLAB提供了一些逻辑函数提供了一些逻辑函数逻逻 辑辑 函函 数数功功 能能all如果所有的元素都是非零值,返回1;否则,返回0。any如果有一个元素为非零值,那么返回1;否则,返回0isempty判断是否空矩阵isequal判断两矩阵是否相同isreal判断是否是实矩阵find返回一个由非零元素的下标组成的向量15向量的构造l1逐个
8、输入逐个输入a=1 3 9 10 15 16%采用空格和逗号分隔构成行向量b=1; 3; 9; 10; 15; 16 %采用分号隔开构成列向量l2利用冒号表达式利用冒号表达式“:”生成向量生成向量x=1:2:9%初值=1,终值=9,步长=2z=1:5%初值=1,终值=5,默认步长=1l3利用函数生成向量利用函数生成向量 x=linspace(1, 9, 5)%初值=1,终值=9,元素数目=516数组的运算l数组运算方式是一种元素对元素的运算(数组运算方式是一种元素对元素的运算(不按不按照线性代数的规则照线性代数的规则) ;l除了加、减法的与矩阵相同以外,乘、除、幂除了加、减法的与矩阵相同以外,
9、乘、除、幂的数组运算符都是通过在标准的运算符前面加的数组运算符都是通过在标准的运算符前面加一个圆点来生成。一个圆点来生成。数组的除法a./b=b.aa.b=b./aa./b=b.a 都是a的元素被b的对应元素除a.b=b./a 都是b的元素被a的对应元素除例: a=1 2 3;b=4 5 6; c1=a.b; c2=b./ac1 = 4.0000 2.5000 2.0000c2 = 4.0000 2.5000 2.000017 给出a,b对应元素间的商.18多项式多项式是形如 P(x) = a0 xn+a1xn-1+an-1x+an的式子。在MATLAB中,多项式用行向量表示 P= a0 a1
10、 an-1 an19多项式的运算l1. 多项式的算术运算多项式的算术运算l参加加减运算的多项式应该具有相同的阶次。l构造多项式采用ploy2sym函数。l多项式乘法采用conv函数,除法由deconv函数完成。l2. 求根求根l求多项式的根采用roots函数。l3. 求值求值l函数polyval可以将某个特定数值代入多项式l函数polyvalm可以求出当多项式中的未知数为方阵时的值。l4. 求导求导l使用polyder函数对多项式求导。202 MATLAB程序设计l 掌握MATLAB的几种基本控制转移语句l学会使用M文件进行编程l具备对复杂问题的编程求解能力21MATLAB程序结构l按照程序设
11、计的观点按照程序设计的观点, 任何算法功能都可以通过任何算法功能都可以通过由程序模块组成的三种基本程序结构的组合来由程序模块组成的三种基本程序结构的组合来实现实现: l顺序结构:程序按程序语句或模块在执行流中的顺序逐个执行。 l选择结构:程序按设定的条件实现程序执行流的多路分支。 l循环结构:程序按给定的条件重复地执行指定的程序段或模块。22顺序结构程序程序模块模块1 1程序模块程序模块2 2lMATLAB中实现顺序结构的方法非常简单:中实现顺序结构的方法非常简单:l只需将程序语句顺序排列即可 23选择结构l在在MATLAB中,选择结构由中,选择结构由两种语句结构实现:两种语句结构实现:lif
12、 语句lswitch 语句条件条件程序模块程序模块1成立成立不成立不成立程序模块程序模块23.2.2 选择结构24If条件语句if 表达式表达式 程序模块程序模块1 else 程序模块程序模块2end25If条件语句的两种变形l(1) 单分支单分支 if 语句:只有一个分支的选择结构语句:只有一个分支的选择结构 if 表达式 程序模块endl(2) 多分支多分支 if 语句:超过语句:超过2个的选择个的选择if 表达式1 程序模块1 elseif 表达式2 程序模块2 elseif 表达式n 程序模块n else 程序模块n+1end26例:将百分制的学生成绩转换为五级制的成绩输出clearn
13、=input(输入输入n= ); if n=90 r=Aelseif n=80 r=Belseif n=70 r=Celseif n=60 r=Delse r=Eend27switch语句 switch 表达式表达式 case 数值数值1 程序模块程序模块1 case 数值数值2 程序模块程序模块2otherwise 程序模块程序模块n end28例:将百分制的学生成绩转换为五级制的成绩输出使用switch语句 clearn=input(输入输入n= ); switch fix(n/10) case 10,9 r=A case 8 r=B case 7 r=C case 6 r=D other
14、wise r=Eend29循环结构l在在MATLAB中,循环结构可中,循环结构可以由两种语句结构实现:以由两种语句结构实现:lfor 语句循环结构lwhile 语句循环结构程序模块程序模块不成立不成立成立成立条件条件3.2.2 选择结构30for语句和语句和While循环结构循环结构for 循环变量起始值:步长:终止值循环变量起始值:步长:终止值循环体循环体endwhile 表达式表达式 循环体循环体end31例:使用for结构计算1+2+3+100clearsum=0;for i=1:100 sum=sum+i;endsum运行结果:运行结果:sum =505032例:使用while结构计算
15、1+2+3+100clearsum=0; i=0;while i100i=i+1;sum=sum+i;endsum33M文件文件lMATLAB工作模式工作模式l命令行方式。l程序文件驱动模式l MATLAB文本编辑器文本编辑器 34函数文件函数文件l函数文件基本格式:函数文件基本格式:function 输出形参列表=函数名(输入形参列表) 注释说明语句段 程序语句段353 MATLAB绘图l了解MATLAB的绘图功能l掌握二维图形和三维图形的绘制方法l能够进行常用的数据可视化处理36二维图形lplot函数绘制二维曲线,常用格式有:函数绘制二维曲线,常用格式有:lplot(x):缺省自变量的绘图
16、格式,x可为向量或矩阵。lplot(x, y):基本格式,x和y可为向量或矩阵。lplot(x1, y1, x2, y2,):多条曲线绘图格式,在同一坐标系中绘制多个图形。lplot(x, y, s):开关格式,开关量字符串s设定了图形曲线的颜色、线型及标示符号。37图形颜色、标记和线形参数表色彩字符色彩字符所定颜色所定颜色线型字符线型字符线型格式线型格式标记符号标记符号数据点形式数据点形式标记符号标记符号数据点形式数据点形式y黄黄-实线(默认)实线(默认).点点右三角形右三角形38例:二维图形绘制 x=3 5 7 6 12 24 15 33 6 9 7 2; plot(x)%绘制以序号为横坐
17、标,元素值为纵坐标的曲线绘制以序号为横坐标,元素值为纵坐标的曲线 x=0:pi/10:2*pi; y=sin(x); plot(x,y)%绘制以绘制以x为横坐标,为横坐标,y为纵坐标的曲线为纵坐标的曲线0246810120510152025303501234567-1-0.8-0.6-0.4-0.200.20.40.60.8139图形修饰与控制图形修饰与控制ltitle 给图形加标题给图形加标题lxlable 给给x轴加标注轴加标注lylable 给给y轴加标注轴加标注ltext 在图形指定的任意位置加标注在图形指定的任意位置加标注lgtext 利用鼠标将标注加到图形任意位置利用鼠标将标注加到
18、图形任意位置lgrid on 打开坐标网格线打开坐标网格线lgrid off关闭坐标网格线关闭坐标网格线llegend 添加图例添加图例laxis 控制坐标轴刻度控制坐标轴刻度40例:绘制正弦和余弦曲线,并加入网格和标注cleart=0:0.1:10;y1=sin(t);y2=cos(t);plot(t,y1,r,t,y2,b-);x=1.7*pi;1.6*pi;y=-0.3; 0.7;s=sin(t);cos(t);text(x, y, s);指定位置加标注指定位置加标注title(正弦和余弦曲线正弦和余弦曲线);标题标题legend(正弦正弦,余弦余弦)%添加图例注解添加图例注解xlabe
19、l(时间时间)x坐标名坐标名ylabel(正弦正弦&余弦余弦)y坐标名坐标名grid on%添加网格添加网格axis square%将图形设置为正方形将图形设置为正方形0246810-1-0.8-0.6-0.4-0.200.20.40.60.81sin(t)cos(t)正 弦 和 余 弦 曲 线时 间正弦&余弦正 弦余 弦41采用采用hold函数对图形进行比较显示函数对图形进行比较显示 cleart=0:pi/10:2*pi;y1=sin(t);y2=cos(t);y3= sin(t)-cos(t);plot(t,y1);hold on; %后续图形叠加显示后续图形叠加显示pl
20、ot(t,y2);plot(t,y3);01234567-1.5-1-0.500.511.542采用图形窗口分割方法进行比较显示采用图形窗口分割方法进行比较显示 cleart=0:pi/10:2*pi;y1=sin(t);y2=cos(t);y3=cos(t+pi/2);y4=cos(t+pi); %将图形窗口分割成两行两列将图形窗口分割成两行两列,要画的图形为第要画的图形为第1行第行第1列列subplot(2,2,1);plot(t,y1);%将图形窗口分割成两行两列将图形窗口分割成两行两列,要画的图形为第要画的图形为第1行第行第2列列subplot(2,2,2); plot(t,y2);%
21、将图形窗口分割成两行两列将图形窗口分割成两行两列,要画的图形为第要画的图形为第2行第行第1列列subplot(2,2,3); plot(t,y3);%将图形窗口分割成两行两列,要画的图形为第将图形窗口分割成两行两列,要画的图形为第2行第行第2列列subplot(2,2,4);plot(t,y4);02468-1-0.500.5102468-1-0.500.5102468-1-0.500.5102468-1-0.500.5143三维图形三维图形l三维曲线图三维曲线图lplot3函数可以绘制三维曲线: plot3(x1, y1, z1, s1, x2, y2, z2, s2)l三维网格图三维网格图
22、lmesh函数为数据点绘制网格线:mesh(z) z为nm的矩阵,x与y坐标为元素的下标位置mesh(x, y, z) x, y, z分别为三维空间的坐标位置l三维曲面图三维曲面图l三维曲面的绘图是由surf函数完成的,用法和mesh类似。444 MATLAB符号运算l理解符号运算的有关概念l掌握使用符号运算解决符号推导、微积分、方程等问题的方法45数值运算与符号运算l数值运算在运算前必须先对变量赋值,再参加运数值运算在运算前必须先对变量赋值,再参加运算。算。l符号运算不需要对变量赋值就可运算,运算结果符号运算不需要对变量赋值就可运算,运算结果以标准的符号形式表达。以标准的符号形式表达。46符
23、号变量和符号表达式l符号变量和符号表达式在使用前必须说明符号变量和符号表达式在使用前必须说明lsym函数f1=sym(ax2+bx+c) %创建符号变量f1和一个符号表达式lsyms函数 clear syms a b c x whos Name Size Bytes Class a 1x1 126 sym object b 1x1 126 sym object c 1x1 126 sym object x 1x1 126 sym object47符号表示式的运算l算术运算算术运算clear f1 = sym(1/(a-b) ); f2 = sym(2*a/(a+b) ); f3 = sym(
24、(a+1)*(b-1)* (a-b) ); f1+f2%符号和ans =1/(a-b)+2*a/(a+b) f1*f3 %符号积ans = (a+1)*(b-1) f1/f3 %符号商ans = 1/(a-b)2/(a+1)/(b-1)48函数运算l1合并、化简、展开等函数合并、化简、展开等函数lcollect函数:将表达式中相同幂次的项合并;lfactor函数:将表达式因式分解;lsimplify函数:利用代数中的函数规则对表达式进行化简;lnumden函数:将表示式从有理数形式转变成分子与分母形式。l2反函数反函数lfinverse(f,v) 对指定自变量为v的函数f(v)求反函数l3复合
25、函数复合函数lcompose(f,g) 求f=f(x)和g=g(y)的复合函数f(g(y)lcompose(f,g,z) 求 f=f(x)和g=g(y)的复合函数f(g(z)l4表达式替换函数表达式替换函数lsubs(s)用赋值语句中给定值替换表达式中所有同名变量 lsubs (s, old, new) 用符号或数值变量new替换s中的符号变量old49符号替换例例 已知数学表达式已知数学表达式 ,试对其进行以下,试对其进行以下 的符号的符号替换:替换: 1) a=sint,b=lnz,c=de2t的符号变量替换。 2) n=3,c=的符号常量替换。 3) c=1:2:5替换。 4) c= 的数组矩阵替换。 nyaxbtc123450因式分解因式分解例 已知数学表达式 ,试对其进行因式分解。表达式展开表达式展开 例 已知数学表达式y(x)=sin(3arccosx),试将其展开。表达式简化 例 已知数学表达式y(x)=2cos2x-sin2x,试对其进行简化。表达式通分例 已知数学表达式 ,试对其进行通分。3425556yxxxx231( )(1)(2)xxy xx xxx51微积分l极限极限52微分ldiff(f) 求表达式求表达式f对默认自变量的一次微分值;对默认自
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国对香豆酸市场需求量预测与重点企业发展分析报告
- 《笔算乘法》教案(2课时)-2025-2026学年北京版(新教材)小学数学三年级下册
- 建筑施工安全培训考核方案
- 3.2.1 序列标注-新闻稿件词性标注
- 金属加工厂切削液管理细则
- 某铝业厂生产安全检查细则
- 某制药厂药品研发流程细则
- 食品安全卫生知识培训
- 2026年农产品市场流通体系优化:政策赋能与技术创新双轮驱动
- 25-26学年语文(统编版)选择性必修下册课件:第4单元 第13课 (2)宇宙的边疆
- 医疗器械质量安全风险会商管理制度
- 交银金科校招笔试题库
- 铁路防胀知识培训
- 《商标品牌价值评估规范》团体标准-征求意见稿
- GB/T 31703-2025陶瓷球轴承氮化硅球
- GB/T 19466.2-2025塑料差示扫描量热(DSC)法第2部分:玻璃化转变温度和台阶高度的测定
- 浙江国企招聘2025绍兴市科技产业投资有限公司下属合资企业浙江城华新能源发展有限公司招聘3人笔试参考题库附带答案详解(3卷)
- 2025年中国科学技术大学网络信息中心劳务派遣岗位招聘4人(公共基础知识)综合能力测试题附答案解析
- 云计算架构技术与实践(第2版)
- 2025年禁毒知识竞赛题库(含答案)
- 电厂锅炉保温培训课件
评论
0/150
提交评论