1MATALAB2014a基础-变量-数组-逻辑运算-函数.

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MATLAB基础matlab简介变量数组关系运算函数1.1MATLAB简介科学研究和工程实践中的计算问题简单问题:计算器或直接手工推导复杂问题:计算机编程计算机编程高级编程语言VisualBasic、C、C++、C#、JavaHtml、JavaScript、PHPPython、R科学计算软件工具MATLAB、Mathematica、Maple背景作为和Mathematica、Maple并列的三大数学软件。其强项就是其强大的矩阵计算以及仿真能力。要知道Matlab的由来就是Matrix+Laboratory=Matlab,所以这个软件在国内也被称作《矩阵实验室》。每次MathWorks发布Matlab的同时也会发布仿真工具Simulink。在欧美很多大公司在将产品投入实际使用之前都会进行仿真试验,他们所主要使用的仿真软件就是Simulink。Matlab提供了自己的编译器:全面兼容C++以及Fortran两大语言。所以Matlab是工程师,科研工作者手上最好的语言,最好的工具和环境。Matlab已经成为广大科研人员的最值得信赖的助手和朋友!5功能目前MATLAB产品族可以用来进行:-数值分析-数值和符号计算-工程与科学绘图-控制系统的设计与方针-数字图像处理-数字信号处理-通讯系统设计与仿真-财务与金融工程...特点MATLAB具有用法简单、灵活、结构性强、延展性好等优点,逐渐成为科技计算、视图交互系统和程序中的首选语言工具。功能强大的数值运算功能强大的图形处理能力高级但简单的程序环境丰富的工具箱与模块集易于扩充1.2基本运算功能MATLAB的基本运算可分为三类:算术运算关系运算逻辑运算1.2数据与变量程序中定义一些变量来保存和处理数据,变量可以认为是内存符号化的表示。不能使用的20个关键字,可以用iskeyword查看。如break、case、catch等1.2数据与变量MATLAB中变量的命名规则是:(1)变量名必须是不含空格的单个词;(2)变量名区分大小写;(3)变量名最多不超过19个字符;(4)变量名必须以字母打头,之后可以是任意字母、数字或下划线,变量名中不允许使用标点符号。有符号整数型:int8,int16,int32,int64无符号整数型:uint8,uint16,uint32,uint6单精度浮点型:single双精度浮点型:double逻辑型:logical字符串型:char特殊变量取值ans用于结果的缺省变量名pi圆周率eps计算机的最小数,16102204.2值等与当和1相加就产生一个比1大的数inf无穷大NaN不定量,如0/0i,ji=j=1realmin最小可用正实数realmax最大可用正实数特殊变量表指令含义举例说明Formatshort小数点后4位,最多不超过7位;对于大于1000的实数,用5位有效数字的科学技术形式表示3.14159显示为3.1415903114.59显示为3.1416e+003Formatlong15位数字表示3.14159265358979FormatShorte5位科学记数表示3.1416e+00Formatlonge15位科学记数表示3.14159265358979e+00Formathex十六进制数表示400921fb54442d18Format+显示大矩阵用Formatbank(金融)元、角、分表示数据显示格式的指令形式数学运算符号及标点符号(1)MATLAB的每条命令后,若为逗号或无标点符号,则显示命令的结果;若命令后为分号,则禁止显示结果.(2)“%”后面所有文字为注释.(3)“...”表示续行.+加法运算,适用于两个数或两个同阶矩阵相加.—减法运算*乘法运算.*点乘运算/除法运算./点除运算^乘幂运算.^点乘幂运算\反斜杠表示左除.1.3数组及其运算1、简单数组的建立x=[abcdef]%创建包含指定元素的行向量例如:x=[123458718]x=first:last%创建从first开始,加1计数,到last结束的行向量例如:y=1:7x=first:increment:last%创建从first开始,加increment计数,last结束的行向量例如:z=3:2:9x=linspace(first,last,n)%创建从first(起始值)开始,到last(终止值)结束,有n个元素的等比数列x=logspace(first,last,n)%创建等比级数例如:x=linspace(0,1,75)例如:x=logspace(0,2,11)产生的是一个起点为100,终点为102,包含11个数据的等比数列,公比为100.2由原有数组创建新数组例如:x=[1234];y=[2222];r=[xy]将两个数组粘合在一起2.数组元素的访问(1)访问一个元素:x(i)表示访问数组x的第i个元素.例如:x=1:9(2)访问一块元素:x(a:b:c)表示访问数组x的从第a个元素开始,以步长为b到第c个元素(但不超过c),b可以为负数,b缺损时为1.y=x(2:2:8)(3)直接使用元素编址序号.x([abcd])表示提取数组x的第a、b、c、d个元素构成一个新的数组[x(a)x(b)x(c)x(d)].z=[x(1)x(6)x(8)]3.数组的方向前面例子中的数组都是一行数列,是行方向分布的.称之为行向量.数组也可以是列向量,它的数组操作和运算与行向量是一样的,唯一的区别是结果以列形式显示.产生列向量有两种方法:直接产生例c=[1;2;3;4]转置产生例b=[1234];c=b’4.数组的运算(1)标量-数组运算数组对标量的加、减、乘、除、乘方是数组的每个元素对该标量施加相应的加、减、乘、除、乘方运算.设:a=[a1,a2,…,an],c=标量则:a+c=[a1+c,a2+c,…,an+c]a.*c=[a1*c,a2*c,…,an*c]a./c=[a1/c,a2/c,…,an/c](右除)a.\c=[c/a1,c/a2,…,c/an](左除)a.^c=[a1^c,a2^c,…,an^c]c.^a=[c^a1,c^a2,…,c^an](2)数组-数组运算当两个数组有相同维数时,加、减、乘、除、幂运算可按元素对元素方式进行的,不同大小或维数的数组是不能进行运算的.设:a=[a1,a2,…,an],b=[b1,b2,…,bn]则:a+b=[a1+b1,a2+b2,…,an+bn]a.*b=[a1*b1,a2*b2,…,an*bn]a./b=[a1/b1,a2/b2,…,an/bn]a.\b=[b1/a1,b2/a2,…,bn/an]a.^b=[a1^b1,a2^b2,…,an^bn]5.数组数据的导入1.先用Excel产生数据表格,并存为文本文件:*:\*.txt;再调用指令:load*:\*.txt。2.先用Excel产生数据表格;再打开数组编辑器进行粘贴。6.关系和逻辑运算关系操作符关系操作符说明小于=小于或等于大于=大于或等于==等于~=不等于几点说明:1、两个标量之间相比,若两者关系成立,则关系运算结果为逻辑真(1);若两者关系不成立,则返回值为逻辑假(0)。2、标量可以与任何维数的数组比较,但是比较是在此标量与数组每个元素之间进行,因此比较结果将与比较数组同维。3、“=”与“==”意味着两种不同的事情:==比较两个变量,当它们相等时返回1,不等时返回0;而=被用来将运算或的结果复制给另一个变量。逻辑运算符逻辑操作符说明&︱~与或非几点说明:1、在逻辑运算中,非零元素表示逻辑真,用“1”表示;零元素表示逻辑假,用“0”表示。2、&,|,和~代表了逻辑运算中的and,or,not。3、标量可以和任何维数的数组进行逻辑运算。4、在算术运算、关系运算和逻辑运算中,逻辑运算的优先级最低。当然可以用括号人为地改变优先级。例1:A=[122;-121;352];B=[346;589;453];a=A3b=(A=B)c=(A==B)1.4字符串、元胞1.字符串注1字符串必须用单引号进行标识。a='loveyou';b='赚钱拉';c=[b,a]注2字符串与数值之间通过num2str和str2num转换。a=4;b=sin(a);[num2str(a),'正弦值等于',num2str(b)]注3MATALAB指令可定义为字符串,再调用eval执行指令。y='sin(x)+cos(x)';x=2;eval(y)2.元胞(单元数组)注1数值和字符不能混合;小数组拼接大数组时,尺寸必须相符。注2元胞--将不同类型、不同尺寸的数组拼接在一起,加{}。a={1:3;'sd'};b={'ds';[12;34]};c=[a,b]结构体一个结构体可以通过字段存储多个不同类型的数据,相当于一个数据容器,将多个相关联但不同类型的数据组织在一个结构对象中。example.name=‘张三';example.adress='北京';example.age='18岁'如果我们要删除结构体的某一项属性,那么可以通过函数Rmfield,来实现,如果要增加一个属性,那么可以直接进行赋值便可。map容器类型map的含义是映射,可以将一个量(key)映射到另一个量(value),形成“key——value”的形式,可以快速查找数据的键。比如将一个字符串映射为一个数值,那个字符串就是map的key,那个值就是map的valueweekmap=containers.Map({'Monday','Tuesday'},{1,2})weekmap('Monday')ans=1添加新的元素:weekmap('Friday')=5删除里面的内容:remove(weekmap,'Monday')检查map的内容,可以使用map的几个函数,如keys(weekmap)ans='Friday''Monday''Tuesday‘values(weekmap)ans=[5][1][2]values(weekmap,{'Monday','Friday'})ans=[1][5]函数在一个变化过程中,假设有两个变量x、y,如果对于任意一个x都有唯一确定的一个y和它对应,那么就称y是x的函数,其中x是自变量,y是因变量,x的取值范围叫做这个函数的定义域,相应y的取值范围叫做函数的值域。在各类编程语言中,函数是一种过程,也称为子程序,它执行一个或一系列指定的运算或操作。取整函数(1)fix(x):截尾取整fix([3.12-3.12])ans=3-3(2)floor(x):不超过x的最大整数.(高斯取整)floor([3.12-3.12])ans=3-4取整函数(3)ceil(x):大于x的最小整数ceil([3.12-3.12])ans=4-3(4)四舍五入取整round([3.12-3.12])ans=3-3测试函数在运算过程中测试特殊值或条件是否存在,并返回相应的逻辑值。Isempty参量为空,返回1isinf元素无群大,返回1isletter元素为字母,返回1isstr元素为字符串,返回1字符串函数length(str)返回str的长度isstr()元素为字符串,返回1strcmp(str1,str2)比较两个字符串是否完全相等,是,返回真,否则,返回假isletter(str)检测字符串中每个字符时否属于英文字母findstr(str1,str2)查找str1和str2中,较短字符串在较长字符串中出现的位置,没有出现返回空数组strrep(A,str1,str2)将A中str1替换为str2字符串函数lower()转换为小写upper()转换为大写int2str()整数转换为字符串str2mat()字符串转换为文本矩阵sin正弦函数asin反正弦函数cos余弦函数acos反余弦函数tan正切函数atan反正切函数cot余切函数acot反余切函数sec正割函数asec反正割函数csc余割函数acsc反余割函数sinh双曲

1 / 42
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功