MATLAB的基本使用方法.ppt_第1页
MATLAB的基本使用方法.ppt_第2页
MATLAB的基本使用方法.ppt_第3页
MATLAB的基本使用方法.ppt_第4页
MATLAB的基本使用方法.ppt_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

2019/11/19,1,第2章基本使用方法,教学内容:简单的数学运算常用的操作命令和快捷键MATLABR2010a的数据类型MATLABR2010a的运算符MATLAB的一些基础函数MATLAB脚本文件,2019/11/19,2,MATLAB变量,(1)MATLAB变量的特点:MATLAB不需要对变量进行事先声明,也不需要指定变量的类型,系统会根据对变量赋予的值为变量自动指定类型。(2)MATLAB的变量命名规则:1:变量名区分大小写。如pi和Pi是两个不同的变量。在命令窗口中输入如下的命令,查看其结果。2:变量名长度不超过63个字符,超过的部分将会被忽略。3:变量名必须以字母开始,其后可以为字母、数字或者下划线。MATLAB中的变量名不支持其他符号,因为其他符号在MATLAB中具有特殊的意义。(3)系统预定义的特殊变量(P29表2-15),2019/11/19,3,MATLAB两大特点,1:面向复数设计的运算a=-8;ra=a(1/3)ra=1.0000+1.7321ip=100-a;r=roots(p)r=-2.00001.0000+1.7321i1.0000-1.7321i,2019/11/19,4,2:面向数组设计的运算(1)MATLAB把数据都看作数组进行存储和运算。标量看作(11)的数组数据。(2)为了加快计算速度,MATLAB对以数组形式存储的数据设计了两种基本运算:1数组运算2矩阵运算,2019/11/19,5,2.1简单的数学运算,直接输入法pi*42ans=50.2655没有将结果赋予一个变量时,MATLAB自动将结果赋予一个暂时的变量名ans,2.存储变量法s=pi*42s=50.2655h=2h=2v=s*hv=100.5310,2.1.1最简单的计算器使用方法,2019/11/19,6,2.1.2MATLAB中的常用数学函数,MATLAB提供的基本初等函数包括三角函数、指数函数、对数函数、复数函数、取整和求余函数、坐标变换函数、数理函数和一些特殊函数。教材P14-16MATLAB中使用函数不需要先对函数声明,2019/11/19,7,a=1;b=2;c=sqrt(3);cos_alpha=(a2+b2-c2)/(2*a*b)cos_alpha=0.5000alpha=acos(cos_alpha)%反余弦函数acos()alpha=1.0472alpha=alpha*180/pi%将弧度值转化为角度alpha=60.0000,例2-3:已知三角形三个边长度分别为1、2、,求长度为1和2的两条边的夹角大小。,2019/11/19,8,a=1,b=2,c=sqrt(3)a=1b=2c=1.7321,观察一下符号分号“;”,逗号“,”的区别。,2019/11/19,9,2.1.3MATLAB的数学运算符,ab=b/a。,2019/11/19,10,例:矩阵乘法和点乘,a=12;34;b=23;11;c=a*bc=451013d=a.*bd=2634,a=magic(3)a=816357492,c=ones(2,3)c=111111,魔术矩阵为每行、每列以及对角之和均相等的矩阵,2019/11/19,11,2.1.4标点符号的使用,这些符号必须是在英文状态下输入的,2019/11/19,12,1:分号(;)功能:用于区分数组的行,或者用于一个语句的结尾处,取消运行行显示。2:百分号(%)功能:用于在程序文本中添加注释,提高程序的可读性。百分号之后的文本都将视为注释,系统不对其进行编译。c=ones(2,3);c=ones(2,3)%createa2*3matrixofones.c=111111,2019/11/19,13,3:逗号(,)x=1.545,2.1x=1.54502.1000round(x)ans=22x,xx=1.54502.1000ans=1.54502.1000,x,b=x;x=1.54502.1000,2019/11/19,14,2.2常用的操作命令和快捷键,掌握一些常用的操作命令和快捷键,可以使得对MATLAB的操作更加便利。,2019/11/19,15,clear命令,xx=1.54502.1000clearxx?Undefinedfunctionorvariablex.,2019/11/19,16,快捷键及其功能,2019/11/19,17,2.3MATLABR2010a的数据类型,Matlab常用的数据类型:数值:numeric字符:char逻辑:logical单元:cell结构:struct,2019/11/19,18,数值类型,整数:int8,uint8,int16,uint16等浮点数:单精度(single)和双精度(double)复数:complex,2019/11/19,19,2.3.1整数,MATLAB支持8位、16位、32位和64位的有符号和无符号整数数据类型。上述整数数据类型除了定义范围不同外,具有相同的性质。,2019/11/19,20,整数数据类型的定义,格式:数据类型标识符(数据值)例如:定义一个8位有符号的整数x=30 x=int8(30)测试数据类型函数:class(),x=int8(30)x=30class(x)ans=int8y=80y=80class(y)ans=double,MATLAB默认的数据类型,2019/11/19,21,整数的运算,y=uint8(15)y=15x=uint8(30)x=30x+yans=45x*yans=255,x/yans=2yxans=2xyans=1,左除和右除的关系:yx=x/y,在进行除法时,MATLAB首先将两个数视为双精度类型进行运算,然后将结果转化为相应的整形数据,当运算结果溢出时,系统将结果设置为该数据类型的上限或者下限,2019/11/19,22,x=double(x),y=double(y)x=30y=15y/xans=0.5000z=y/xz=0.5000z=int8(z)z=1,2019/11/19,23,方式一:datatype(variable)例:x=int8(4.5)x=5,方式二:cast(x,type)例:y=cast(4.5,int8)y=5class(y)ans=int8,各种数据类型之间的转换:,2019/11/19,24,不同整数类型之间不能进行运算,x=int8(5)x=5y=int16(23)y=23z=x+y?Errorusing=plusIntegerscanonlybecombinedwithintegersofthesameclass,orscalardoubles.,2019/11/19,25,2.3.2浮点数,MATLAB的默认数据类型是双精度类型(double)。为了节省存储空间,MATLAB也支持单精度数据类型的数组。创建单精度类型的变量时需要声明变量类型,与创建整型变量类似。,x=single(3.4)x=3.4000y=34y=34x+yans=37.4000class(x+y)ans=single,单精度数据类型的数据进行运算时,返回值为单精度。,2019/11/19,26,realmin(single),realmax(single)ans=1.1755e-038ans=3.4028e+038eps(single)ans=1.1921e-007realmin(double),realmax(double)ans=2.2251e-308ans=1.7977e+308eps(double)ans=2.2204e-016,例2-12单精度和双精度数据类型的取值范围和精度,2019/11/19,27,2.3.3复数,MATLAB的所有运算是定义在复数域上.MATLAB中虚数单位用i或者j表示通过两种方法创建复数:直接输入法(不建议大家使用)通过complex函数,2019/11/19,28,z=2+3iz=2.0000+3.0000ix=2,y=3,z1=x+y*ix=2y=3z1=2.0000+3.0000i,2+3ix+y*i,2019/11/19,29,x=2,y=3,z1=x+yix=2y=3?Undefinedfunctionorvariableyi.x=int8(2),y=int8(3),z1=x+y*ix=2y=3?Errorusing=mtimesComplexintegerarithmeticisnotsupported.,注意:,是不是复数的实部和虚部不能为整数呢?,2019/11/19,30,complex函数的调用方法如下。,c=complex(a,b):返回结果c为复数,其实部为a,虚部为b。输入参数a和b可以为标量,或者维数、大小相同的向量、矩阵或者多维数组,输出参数和a和b的结构相同。a和b可以有不同的数据类型,当a和b为各种不同的类型时,返回值分别为:当a和b中有一个为单精度时,返回结果为单精度;如果a和b其中一个为整数类型,则另外一个必须有相同的整数类型,或者为双精度型,返回结果c为相同的整数类型。,2019/11/19,31,x=int8(2),y=int8(3)x=2y=3z2=complex(x,y)z2=2+3i,complex()创建单个复数,2019/11/19,32,a=int8(1234)a=1234b=int8(2345)b=2345c=complex(a,b)c=1+2i2+3i3+4i4+5i,complex()创建复数数组,2019/11/19,33,复数直角坐标和极坐标之间转换,real(z):给出复数z的实部imag(z):给出复数z的虚步abs(z):给出z的模angle(z):以弧度为单位给出复数z的幅角,2019/11/19,34,c=complex(a),只有一个输入参数,返回结果c为复数,其实部为a,虚部为0。但是此时c的数据类型为复数。,x=int8(x)x=2c=complex(x)c=2isreal(c)ans=0,d=complex(a)d=1234isreal(d)ans=0e=x+0*ie=2isreal(e)ans=1,isreal(x)判断x是否为实数,2019/11/19,35,2.3.4逻辑变量,1.逻辑变量的值:逻辑真(1)、逻辑假(0)2.一些MATLAB函数或操作符会返回逻辑真或逻辑假表示条件是否满足。例如:表达式(5*10)40返回逻辑真。3.逻辑数组:数组的元素全部是逻辑值。如下面的表达式返回逻辑数组:304050607040ans=00111,2019/11/19,36,创建逻辑数组,1:创建逻辑数组的最简单的方法为直接输入元素的值为true或者falsex=true,false,truex=1012:逻辑数组也可以通过逻辑表达式生成x=12342x=0011class(x)ans=logical,2019/11/19,37,MATLAB中返回逻辑值的函数和操作符,2019/11/19,38,逻辑数组的应用,用于条件表达式如果仅当条件成立时执行某段代码,可以应用逻辑数组进行判断和控制str=hellostr=helloifisempty(str)a=5c1=(ac2=(abin2dec(10100)ans=20a=dec2bin(28)a=11100,2019/11/19,50,表2-19MATLAB中的位操作函数,2019/11/19,51,dec2bin(A)ans=11100dec2bin(B)ans=10101bitand(A,B)ans=20bitor(A,B)ans=29bitxor(A,B)ans=9,2019/11/19,52,表2-20MATLAB中的逻辑运算函数,2019/11/19,53,2.6MATLAB脚本文件,对于多数问题,所需的命令较多,或者需要逻辑运算,进行流程控制,此时采用直接输入命令的方法则会引起不便。针对这些问题,一个合理的解决方法是使用脚本文件(M文件)。脚本文件不接受输入参数,不返回任何值,而是代码的结合,该方法允许用户将一系列MATLAB命令输入到一个简单的脚本文件中,只要在MATLAB命令窗口中执行该文件,则会依次执行该文件中的命令。,2019/11/19,54,2.6.1脚本文件的用法,在使用脚本文件时需要注意一点:当前工作区中存在与该脚本同名的变量时,则当输入该文件名时,系统将其作为变量名执行。新建脚本文件可以通过两种方法:1.单击工具栏中的“新建”图表:2.选择File|New|M-file命令,2019/11/19,55,columethesurfaceareaofthecolumeis:12.5664thevolumeofthecolumeis:3.1416,2019/11/19,56,在MATLAB7.0以前的版本中,注释是逐行进行的,采用百分号(%)进行标记。逐行注释不利于用户增加和修改注释内容。在MATLAB7.0及以后的版本中,用户可以使用“%”和“%”符号进行块注释,“%”和“%”分别代表注释块的起始和结束。,2.6.2块注释,2019/11/19,57,2.6.3代码单元,在以往的版本中,MATLAB通过编译器提供的操作命令和工具执行一段选中的代码。在MATLAB7.0及以后的新版本中,用户可以使用代码单元完成这一操作。一个代码单元指用户在M文件中指定的一段代

温馨提示

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

评论

0/150

提交评论