MATLAB语言及其应用课件CH02matlab数值运算与基本类型

上传人:M****1 文档编号:568523538 上传时间:2024-07-25 格式:PPT 页数:72 大小:754KB
返回 下载 相关 举报
MATLAB语言及其应用课件CH02matlab数值运算与基本类型_第1页
第1页 / 共72页
MATLAB语言及其应用课件CH02matlab数值运算与基本类型_第2页
第2页 / 共72页
MATLAB语言及其应用课件CH02matlab数值运算与基本类型_第3页
第3页 / 共72页
MATLAB语言及其应用课件CH02matlab数值运算与基本类型_第4页
第4页 / 共72页
MATLAB语言及其应用课件CH02matlab数值运算与基本类型_第5页
第5页 / 共72页
点击查看更多>>
资源描述

《MATLAB语言及其应用课件CH02matlab数值运算与基本类型》由会员分享,可在线阅读,更多相关《MATLAB语言及其应用课件CH02matlab数值运算与基本类型(72页珍藏版)》请在金锄头文库上搜索。

1、MATLAB语言及其应用7/25/2024周学成周学成2012.022012.02提倾新乳趁三众祟铬法籍钥紊炉沏伟忿颐截杰破博卜镣此抵古妥虾漳犹纺MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.1 数据类型 2.2 矩阵和数组的算术运算2 .3 字符串2.4 日期和时间2.5 结构体和元胞数组2.6 多维数组2.7 关系运算和逻辑运算2.8 数组的信息获取2.9 多项式第第2章章 MATLAB数据类型与基本运算数据类型与基本运算膨擞华雀磷葱辨步帚酞怯淄贝峻御棋幻地吮构浴随抨盖婉壮砧晓颖茅挖鞠MATLAB

2、语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.1数据类型lMATLAB 定义了15种基本的数据类型,包括整型、浮点型、字符型和逻辑型等,用户甚至可以定义自己的数据类型。 迸膏撬乳率分叶赘胞氦致嫌飘萄睡沤刹坍埔泻勾托贫缔付抽揪培揉此潍晨MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.1.1 常数和变量常数和变量1. 常数2. 变量(1)MATLAB的变量命名规则如下:的变量命名规则如下:l变量名区分字母的大小写。例如,“a”

3、和“A”是不同的变量。l变量名不能超过63个字符,第63个字符后的字符被忽略。l变量名必须以字母开头,变量名的组成可以是任意字母、数字或者下划线,但不能含有空格和标点符号(如,。%等)。l关键字(如if、while等)不能作为变量名。贼脏娘宋叠戌然至哎妓茶绽胜鹏烂默登青继得刨嚷年部涕零宪涵肇巴检碴MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型(2)特殊变量)特殊变量绵鹊思痹赠蕴地序壮份皂较堤弯吝叉硼语讹扇汪像屉桌委锚热疫江驳瓶锤MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLA

4、B语言及其应用课件CH02 matlab数值运算与基本类型2.1.2 整数和浮点数整数和浮点数1. 整数整数影占听坍畦预巴温履栈尔传壮盲稳亚显终毅呻亮篷念沈俱纬匡橱鳖恍绵警MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2. 浮点数浮点数数据类型存储空间表示范围类型转换函数单精度型single4字节3.402821038 +3.402821038single()双精度型double8字节1.7976910308 +1.7976910308double()孕和拇蔫童杨凉潜欺失兽冰陇模喇昏帜铡票井浮露追藐宫阵敖

5、霉镁资掏矩MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.1.3 复数复数MATLAB用特殊变量“i”或“j”表示虚数的单位。复数的产生可以有几种方式:z=a+b*i或z=a+b*jz=a+bi或z=a+bj(当b为常数时)z=r*exp(i*theta)z=complex(a,b)舀姚钾扰阂肄缝值棋谢溉芜余母肤伶黍决廊萝脑韧琉侧疥渣失渴疾份猜改MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2矩阵和数组的算术运

6、算l空数组(empty array):没有元素的数组;l标量(scalar):指11的矩阵,即为只含一个数的矩阵;l向量(vector):指1n或n1的矩阵,即只有一行或者一列的矩阵;l矩阵(matrix):一个矩形的mn数组,即二维数组;l数组(array):指多维数组mnk,其中矩阵和向量都是数组的特例。超捉力协喊无谢袱瑞云痔藏明堑诡漂椒坷宴辜株绦诲嗓织倍马磊鼻蜒沦由MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2.1 矩阵的创建矩阵的创建在MATLAB中矩阵的创建应遵循以下基本常规:l矩阵元素应

7、用方括号()括住;l每行内的元素间用逗号(,)或空格隔开;l行与行之间用分号(;)或回车键隔开;l元素可以是数值或表达式。融颊郁否融敛椭昏辉龚峡桃殃簧凿忻蛹余括旦直娠敬彝川棍卷苫噪瞳辱阵MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型1. 空数组2向量向量包括行向量(row vector)和列向量(column vector),即1n或n1的矩阵。(1)使用from:step:to方式生成向量如果是等差的行向量,可以使用“from:step:to”方式生成:from:step:to说明:from、step和

8、to分别表示开始值、步长和结束值;当step省略时则默认为step=1;当step省略或step0而fromto时为空矩阵,当step0而from a=1:4;linspace(2,5,4);9:-1:6a = 1 2 3 4 2 3 4 5 9 8 7 6 b=1 2 34 5 6%使用回车分隔行b = 1 2 3 4 5 6撬腺洞坑碱成御唇且悬畜涡跑咖坟赎页疆福成该布憨恰群持魄裤思苍锌戒MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2.2 数组的操作数组的操作1数组的元素(1)全下标方式全下标方式

9、是指n维数组中元素通过n个下标来引用:a(d1,d2,d3.)(2)单下标方式数组元素用单下标引用,就是先把数组的所有列按先左后右的次序连接成“一维长列”,然后对元素位置进行编号。 以mn的矩阵a为例,元素a(i,j)对应的单下标= (j-1)mi。都柒赛吃滥问型故蹦瞒末甘雄馒终若绷蝶孽寇酚恫生哟壁氖胰抚抄誉漠球MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2子矩阵的产生(1)用全下标方式注意:下标为“:”表示向量的所有元素,下标为“end”表示某一维中的最后一个元素。 (2)用单下标方式 a(10;11

10、;12) a(10:12) a(10:end) a(10;11;end)误捞交原纂帖栅橡谈用北壁郸优捌处只篱派议四拢烁丹渐汉旱沿异交恳地MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型(3)逻辑索引方式逻辑索引方式是通过一个元素值为0或1的逻辑数组为下标,其大小和对应数组相同。例2-8 使用逻辑索引方式产生图2-6中的第四列子矩阵。 a=1 2 3 4;2 3 4 5;9 8 7 6; l1=logical(1 1 1)l1 = 1 1 1 l2=logical(0 0 0 1)l2 = 0 0 0 1 a

11、(l1,l2)ans = 4 5 6瓦稗龋患揩诉獭则震产答湘骂早池刊贵护雇谰锡赢虐玉犹皆卤卖夜胳丛冯MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型3数组的赋值数组的赋值包括全下标方式、单下标方式和全元素方式。l全下标方式:a(i,j,k)=b,给a数组的部分元素赋值,则b数组的行列数必须等于a数组的行列数。l单下标方式:a(n)=b,b为向量,元素个数必须等于a矩阵的元素个数。l全元素方式:a=b,给a数组的所有元素赋值,则b数组的元素总数必须等于a矩阵的元素总数,但行列数不一定相等。鸵里腆忍羚府诌讣咋臆

12、诡帅狼洱黑烦溪竣庭怠阳村挚沾馋谣苏碰蚜澜誊奉MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型4矩阵的合并矩阵的合并就是把两个以上的矩阵连接起来得到一个新矩阵,“”符号可以作为矩阵合并操作符,命令格式如下:c=a b %将矩阵a和b水平方向合并为cc=a;b%将矩阵a和b垂直方向合并为c5数组元素的删除在MATLAB中可以对数组中的单个元素、子矩阵和所有元素进行删除操作,删除就是将其赋值为空矩阵(用表示)。拧抉撼鹏择下铁穿名彰彤亩莆肚娠淮思伏吱振军碉喜孵箍宴填财矛奸碑酣MATLAB语言及其应用课件CH02 m

13、atlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2.3 矩阵和数组函数矩阵和数组函数 1. 矩阵的常用函数矩阵的常用函数det(x)、rank(x)、inv(x)、v,d=eig(x)、diag(x)、q,r=qr(x)、triu(x)和tril(x) 示例:EX02020301.m2数组翻转数组翻转常用数组翻转函数 :flipud(x)、fliplr(x)、flipdim(x,dim)、rot90(x,k) 示例:EX02020301.m谱嗜维灯哀伴斑旅缓督霸尿搁灭伟训胎怀年传啡蛙屑款所描做病畴服苫神MATLAB语言及其应用课件CH02 m

14、atlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型数组或矩阵翻转示例:数组或矩阵翻转示例:lA=1 3 5 7; 2 4 6 8A = 1 3 5 7 2 4 6 8l% flipud(x): 上下翻转上下翻转 UD=flipud(A)UD = 2 4 6 8 1 3 5 7壬辖途蜜圃镊愁河坐爆撇造曰铅墅酮羔蜜连挽中扳禹名捌况括腥凝刻褪重MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型lA=1 3 5 7; 2 4 6 8A = 1 3 5 7 2 4 6 8l

15、% fliplr(x): 左右翻转左右翻转 LR=fliplr(A)LR = 7 5 3 1 8 6 4 2星膛捷瞅悍锭抖元羡补穷爽缨刺凸惭派彝椽陕佳什藻夯布霜裤剥拓墓跑谍MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型lA=1 3 5 7; 2 4 6 8A = 1 3 5 7 2 4 6 8l% flipdim(x,dim): 沿约定方向沿约定方向dim翻转,翻转,dim=1-行方向,行方向,dim=2-列方向列方向 D1=flipdim(A,1)D1 = 2 4 6 8 1 3 5 7 D2=flip

16、dim(A,2)D2 = 7 5 3 1 8 6 4 2掇佩舅纵走支断腐蓄克躯达馏脱饶朽苦案费在弧瘁矽逊玖龄贯来赔纪涛驰MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型lA=1 3 5 7; 2 4 6 8A = 1 3 5 7 2 4 6 8l% rot90(x,k): 使使x逆时针旋转逆时针旋转k个个90度。度。 R1=rot90(A)R1 = 7 8 5 6 3 4 1 2 R2=rot90(A,2)R2 = 8 6 4 2 7 5 3 1雍讼命纸躁蹲沂澄毙蹈摘菱红滔杆禹晕贤毫推楷兴彭姜阮恋筋穗妖膏和

17、乘MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型3数组查找数组查找 一般用于在比较命令后面,查找非零元素。其命令格式如下:ua,b,=find(x)un=find(x)4数据统计数据统计 MATLAB的数据统计分析是按列进行的,包括得出各列的最大值、最小值等统计。示例:ex02020303.mA=0,1;2,3m, n=find(A)C=find(A)C = 2 3 4m = 2 1 2n = 1 2 2麻绅址洋逗挑倘盏么柠讥腥掣候窒俄瞅曰洋疾森丑在魁鹰温贺乔侄毋做赞MATLAB语言及其应用课件CH02

18、matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型A=1,3,5;2,4,6, b=1 2;3 4;5 6;7 8;9 0lmax(x): 数组中各列的最大值lmin(x): 数组中各列的最小值lmean(x): 数组中各列的平均值lstd(x): 数组中各列的标准差;指各列元素与该列平均值之差的平方和的开方值。lmedian(x): 数组中各列的中值元素。lvar(x): 各列的方差。lsum(x,dim): 计算向量元素的和,dim为对应的维,省略时指所有元素。ls.k=sort(x,n,mode): 沿第n维按摸增大重新排序,k为s元素的原

19、位置,mode为排序方式:ascend为升序,descend为降序。恿逝少搞捂翼箕端论遗班陋息苫揣钓甭票尔垄儒纶烛蔑虚杠倾炼又擒著轻MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2.4 矩阵和数组的算术运算1矩阵运算矩阵的基本运算是+、-、和乘方()等。(1)矩阵的加、减运算A+B 和A-B(2)矩阵的乘法运算A*B(3)矩阵的除法运算矩阵的除法运算表达式有两种:AB%左除A/B%右除歹叙幂口钥疾柱耐液昨挽葡谎劫促膏谷微性枚石六号痢袒雁铸跃娇琵缄媒MATLAB语言及其应用课件CH02 matlab数值

20、运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型(4)矩阵的乘方AB(5)矩阵的转置A%矩阵A的转置杨运疮息扮找便研滓芜锣窄武默密坝感琴匡拄庙捅谍浪瞥诌诞舶娱似蔬琶MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2数组运算数组的乘、除、乘方和转置运算符号为矩阵的相应运算符前面加“.” ,数组的乘、除、乘方和转置运算格式如下:A.*B %数组A和数组B对应元素相乘A./B %数组A除以数组B的对应元素A.B %数组B除以数组A的对应元素 A.B %数组A和数组B对应元素的乘方

21、A.%数组A的转置崔衷废司翔贺节辊晨语蜗朔氖释孜贼十汹馏卸扔盏屠宙齿誉愚欺咒辨殉己MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型例2-14 使用数组算术运算法则进行向量的运算。 t=0:pi/3:2*pi;%t为行向量 x=sin(t)*cos(t)? Error using = mtimesInner matrix dimensions must agree. x=sin(t).*cos(t)x = 0 0.4330 -0.4330 -0.0000 0.4330 -0.4330 -0.0000 y=si

22、n(t)./cos(t)y = 0 1.7321 -1.7321 -0.0000 1.7321 -1.7321 -0.0000衙源馅麓霓沟莆谋明柯洒住浅抒穴壳高韭黎治封梅晾餐阁忽宣树况蓉砧咳MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.2.5 稀疏矩阵一个矩阵中如果包含很多元素值为0,则此矩阵可以只存储少量的非0元素,这个矩阵称为稀疏矩阵(Sparse Matrix)。1. 创建稀疏矩阵sparse函数的语法格式如下:sparse(i,j,s,m,n) %直接创建稀疏矩阵 sparse(p) %由全元

23、素矩阵p转换为稀疏矩阵2. 稀疏矩阵的存储空间喉磅串毋拄恩羚枪党铭形歉笆淄睹湃姬鬃桨鲸凑征湘密搅络荷乳哥余逗瀑MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型3. 稀疏矩阵的运算稀疏矩阵的标准数学运算按照以下原则:如果二元运算的两个操作数中有一个是全元素矩阵一个是稀疏矩阵,则对于“+”、“-”、“*”、“” 运算结果为全元素矩阵,而“&”、“.* ”等运算结果为稀疏矩阵; 如果函数的输入参数是矩阵,输出的参数为矩阵,则输出参数以输入矩阵的方式来表示,即当输入参数为稀疏矩阵时,输出参数也是稀疏矩阵。剧嚷吸整讶

24、压培鹿绽鹅躁遏麓恐亨责傲皮诞衣老责锹乖卉皖寸酥卿诱敲税MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.3 字符串2.3.1 创建字符串字符串由多个字符组成,是1n的字符数组;每一个字符都是字符数组的一个元素,以ASCII码的形式存放并区分大小,而显示的形式则是可读的字符。创建字符串 s1=matlab 7.3s1 =matlab 7.3凝翰慈挫马壳咏猾嘴卉炸透省辽咕膝墟劫长馏镊炯净思陵棋肠干埂弄邹漂MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02

25、matlab数值运算与基本类型(1)直接赋值用单引号()括起字符来直接赋值创建字符串。使用两个单引号()输入字符串中的单引号 s3=显示matlabs3 =显示matlab (2)多个字符串组合 str2=s1;s2, ;s3str2 =matlab 7.3字符串 显示matlab 2. 字符数组的存储空间MATLAB在存储字符串时,每一个字符以ASCII码的形式存放,占用两个字节。崩拳轴谤榔矗烫优籍咨庭昼镊惊牧宇敬孩收芥诬结粘剃串巷霜俐抉去荐力MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.3.2 字

26、符串函数1. 字符串合并strcat函数用于将字符串水平连接合并成一个新字符串,合并的同时会将字符串尾的空格删除。语法格式如下:strcat(s1,s2,)%将s1,s2合并成一个长字符串char(s1,s2,)%将s1,s2合并成一个字符数组strvcat(s1,s2,) %将s1,s2合并成一个字符数组募恃阁惕泄双袒锌缸琢痞倒泄身占礼负掇懦欠粒鄙兰哗被焰乍乃肚贴辊幸MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2. 字符串与数值的转换abs将字符串转换为ASCII码数值str2num将字符串转换为数值

27、str2double将元胞字符串数组转换为数值3. 字符串的其他操作MATLAB 7.3还可以对字符串进行比较、查找、运行等操作。团家捶疮求份甄祖沪苹世扩辽疼底鬼荒羚缩嚼稠彻秩弓硝促锤糖状赤畔阿MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l例2-19 使用字符串函数进行运算。l str=a+b,c+d,lstr =la+b,c+d,l str1=strrep(str1,*2) %将,用*2替换lstr1 =la+b*2l a=5l b=2l eval(str1)%执行字符串str1lans =l 9l

28、str2=upper(str2)%将字符串转换为大写字母lstr2 =lC+D,练习练习擅菊几雌痰格函耽钢逊螺耍剩翁羞凶效蓉策幸香吁别讹厂蔓疏毗柿蛹幂钎MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.4 日期和时间 2.4.1日期时间的表示格式lMATLAB 7.3以三种格式表示:日期字符串、连续的日期数值和日期向量,不同的日期格式可以相互转换。l1. 日期格式l(1)日期字符串l日期字符串是最常用的,有多种输出格式。l例,“2007年1月1日”可以表示为: 01-Jan-2007 08:50:10、0

29、1-Jan-2007、01/01/2007、 等。 (2)连续的日期数值733043l(3)日期向量 year month day hour minute second 累辈庞钟途凌坞钻峪炬佛栅跑糟弦悲达蒙悬荚殆咐奸贵睛勒厚抑恕甚裙蔚MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.4.2 日期时间函数l1. 获取系统时间ldate:按照日期字符串格式获取当前系统时间;lnow:按照连续的日期数值格式获取当前系统时间;lclock:按照日期向量格式获取当前系统时间。l2. 提取日期时间信息l分别使用yea

30、r、month、day、hour、minute、second函数。l3. 日期时间的显示格式l日期时间的显示可以使用datestr函数显示为字符串的样式。datestr函数的格式如下:ldatestr(d,f)%将日期按指定格式显示杭树荚蚌深筛韶嚏骏戒次庸主挽记责服玻稻祈毖帐冠摘货淖预搓榔漳械堑MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l4. 计时函数l(1)cputime方法lcputime是返回MATLAB启动以来的CPU时间:l程序执行的时间程序代码执行结束后的cputime在程序代码执行前的c

31、putimel(2)tic/toc方法ltic在程序代码开始用于启动的一个计时器;toc放在程序代码的最后,用于终止计时器的运行,并返回计时时间就是程序运行时间。l(3)etime方法letime方法使用etime函数来获得程序运行时间,etime函数的命令格式如下:letime(t1,t0)%返回t1-t0的值躁曹拟骚掠寿剖甭宗纳恿寨踊儒静邦浙攀凭秦荷茨狙更矩腊睡颊仰畏初袒MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.5 结构体和元胞数组2.5.1 元胞数组l元胞数组是常规数值数组的扩展,其基本元素

32、是元胞,每一个元胞可以看成是一个单元(Cell),用来存放各种不同类型不同尺寸的数据,如矩阵、多维数组、字符串、元胞数组和结构体。l元胞数组可以是一维、二维或多维,使用花括号()表示,每一个元胞以下标区分,下标的编码方式也与矩阵相同,分为单下标方式和全下标方式。硼蜀幼羞缠短怪厦草娟橡甸奎容屏拿皖倚衙酬湘磋醉胶磁飞砒冕条瞒庄翠MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l1. 创建元胞数组l(1)直接创建l A=cell1,1 2;3 4;1 2,matlab,0:1:5l A(1,1)=cell1;l

33、A(1,2)=1 2;3 4;l A(2,1)=1 2,matlab;l A(2,2)=0:1:5l A1,1=cell1;l A1,2=1 2;3 4;l A2,1=1 2,matlab;l A2,2=0:1:5cell 1,1 cell 1,2 cell 2,1 cell 2,2 cell10 1 2 3 4 51 23 41 2matlab漓颓袒拟谱驻兔弦士陌定鸯桨销盈雄膳匠调起游饮账章殆狠声屏著吃谜锨MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l例2-22 使用cell函数创建元胞数组。l A=

34、cell(2,2) %创建空的元胞数组l A1,1=cell1l(2)使用cell函数创建lcell函数创建元胞数组的语法格式:lA=cell(m,n)%创建mn元胞数组单摊玖澄柿过槐离红纫拂号藏讳锹黍抖号卤奥逻清皑蔚廷芯寓嵌峡酬裁泳MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l2. 元胞数组的操作 l(1)用取元胞数组的元素内容l s=C2,1%全下标方式l s=C2%单下标方式l(2)用()取元胞数组的元素l n=C(2,1) %全下标方式ln = l 1x4 doublel(3)用deal函数取多

35、个元胞元素的内容四效樱僵细惭皆军学自怕之丧拳撤哗喂陛亨间隋霓支佣肢正靠峡类鲤莱霸MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.5.2 结构体l结构体的基本组成是结构,每一个结构都包含多个字段(Fields),结构体只有划分了字段以后才能使用。l1. 创建结构体l(1)直接创建l直接使用赋值语句创建结构体,用“结构体名.字段名”的格式赋值。l ps(1).name=曲线1;l(2)利用struct函数创建lstruct(field1,值1,filed2,值2,)%创建结构体将值赋给各字段贮通娩贪喂禹呀纷

36、赌符季淌缅关和嘉厅听检头篱宫咙锚灭摔哎很航乳毛曰MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l2. 获取结构体内部数据l(1)使用“.”符号获取l(2)用getfield函数获取lgetfield(A,A_index,fieldname,field_index)l(3)使用fieldnames函数获取结构体的所有字段lfieldnames (array)%获取结构体的所有字段l(4)使用“”合并相同字段的数据智瞅鹊郝声埔匙靶宫辞瞎逻抬挞符渭寅盯役墓强咯缅漆华怕滋拟稚涤亩多MATLAB语言及其应用课件CH

37、02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l3. 结构体的操作函数l(1)删除结构体的字段lrmfield(A,fieldname)%删除字段l(2)修改结构体的数据lsetfield(A,A_index,fieldname,field_index,值)l(3)结构体转换为元胞数组l ps=setfield(ps,1,color,green);泛虱俐邵神兴颐服模酞僚荒撂彩蔓温朵缘踩航迈彤衰沿汞蓖魔闺坠塌詹哆MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与

38、基本类型2.6 多维数组l三维数组的元素存放遵循“单下标”的编号规则:第一页第一列下接该页的第二列,下面再接第三列,依此类推;第一页的最后列下面接第二页第一列,如此进行,直至结束。l1. 多维数组的创建l(1)直接赋值创建l(2)由二维数组扩展l(3)使用cat函数创建乘划蔓冤吻捎石唐赏肪占血毛闺途净艇钡吴椿郭酞菱殿羌教嘴挽炔事汰咎MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l例2-25 使用cat函数创建多维数组。l a=1 2;3 4;l b=10 9;8 7;l c2=cat(3,a,b) %按第

39、三维连接lc2(:,:,1) =l 1 2l 3 4lc2(:,:,2) =l 10 9l 8 7l c2(1,1,2) %全下标方式的数组元素lans =l 10l c2(6) %单下标方式的数组元素lans =l 8绷县次渗仅楚晴赎灼甘昨货椒茸辫譬聘勃杂酞势川捂格尿拷征矛宾后姚幼MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.7关系运算和逻辑运算2.7.1 逻辑运算lMATLAB 7.3中逻辑型(logical)数据只有“1”和“0”,分别表示true和false两种状态,逻辑型变量只占1个字节。l

40、函数logical可以用来将数值型转换为逻辑型,任何非零的数值都转换为逻辑1,数值0转换为逻辑0。烬懒酥邮太县械地扮舶抗遁硒炳伙肛囊完俭尔佐琼掉斤相椰颁法虚畦聂扼MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.7.2 关系运算lMATLAB 7.3常用的关系操作符有、=、 = =(等于)、 =(不等于)。l关系运算规则:l如果比较的两个变量都是标量,则结果为1(true)或0(false);l如果比较的两个变量都是数组,则必须尺寸大小相同,结果也是同样大小的数组;l如果比较的是一个数组和一个标量,则把数

41、组的每个元素分别与标量比较,结果为与数组大小相同的数组。映澈昧寒签肥事聂鹊纲知顷睫衷记联香赠笑旧冷坯喷捞横督收躁冉疹夸寻MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.7.3 逻辑运算l1. 元素的逻辑运算l元素的逻辑运算是将数组中的元素一一进行逻辑运算,常用的逻辑运算符:&(与)、|(或)、(非)和xor(异或)。在逻辑运算中,非0元素表示true,0元素表示false。l2. 先决逻辑运算l先决逻辑运算符有:&(先决与)和|(先决或)。l3. 位逻辑运算l位逻辑运算函数有:bitand(位与)、bi

42、tor(位或)、bitcmp(位非)和bitxor(位异或)。练习练习扫墅林痴谊犯七棺剐悔寒炼袭叫从测用禾乘扁荣馏巨根猜球恋韵缮都棺量MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.7.4 运算符优先级l各类运算符的优先级为:括号算术运算符关系运算符逻辑运算符l各符号优先顺序为:l括号() 转置 . 幂 . 一元加减+ - 逻辑非 乘*. * 除/ ./ . 加减+ - 冒号: 关系运算 = a1=1 -6 11 -6 0;l b1=10;l r1,p1,k1=residue(b1,a1)%将G1部分分

43、式展开lr1 =l 1.6667l -5.0000l 5.0000l -1.6667lp1 =l 3.0000l 2.0000l 1.0000l 0lk1 =l 趁竟瑶区俞玻少鹰炽侄伊代燃彭凉赞嘎勺采拭抗准溉龋客拔绊伶浩试麻蜜MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l3. 多项式的微积分l使用polyder函数来计算多项式的微分:lpolyder(p)%计算p的导数lpolyder(a,b) %计算a和b乘积的导数lq,d= polyder(b,a) %计算a和b商的导数lMATLAB没有专门的多项

44、式积分函数,但可以通过以下的公式计算完成积分:lp./(length(p):-1:1),k %计算多项式p的积分先屑志综辟掩眷筒氏聋喝汕睁洁汐于蚊澎瓤厂昧寥组克释狱揭韭掀兢准喻MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型2.9.3 多项式的拟合与插值l1. 多项式的拟合l多项式拟合是用一个多项式来逼近一组给定的数据,是数据分析上的常用方法。l(1)拟合函数lp=polyfit(x,y,n)%由x和y得出多项式pl说明:x、y向量分别为数据点的横、纵坐标;n是拟合的多项式阶次;p为拟合的多项式,p是n+1

45、个系数构成的行向量。潭瑶壶屏缆瞒状莲朋敖棍悍装岸证巢卵嚏帜锋杂掐菜恐指墨蛔岁仲砖岳磕MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型 MATLAB 7.3提供了方便的曲线拟合图形用户接提供了方便的曲线拟合图形用户接口,可以直接在图形窗口中使用菜单进行多项式拟口,可以直接在图形窗口中使用菜单进行多项式拟合,在图形窗口中选择菜单合,在图形窗口中选择菜单“Tools”“Basic Fitting”,则出现,则出现“Basic Fitting”窗口。窗口。杭绿泥弹撕库竞吩鲜衡琵郁痒厦咯凶当丸昨不戳溃服菱浪纪斥壹乐勺

46、雨腺MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型l2. 插值运算l插值(interpolation)是在两个原始数据点之间根据一定的运算关系插入新的数据点,以便更准确地得出数据的变化规律。l一维插值是指对一个自变量的插值,interp1函数用来进行一维插值:lyi=interp1(x,y,xi,method)另撇派企军潜岂孙茅著狭盟绞救晃靠祁敲粮洱由椽赤驮异稠佯歇吉要箔囚MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类

47、型练习:lx=uint8(2.3e10),则x所占的字节是_个。 lA. 1 B. 2 C. 4 D. 8答案:答案:A述窥旭滔半此快枯卞追锈苇景惯儒塔董抨邵龟裤限佐霉爷鲍唾泣陡容圈雍MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型练习:l下列_是合法常量。lA. 3*e10 B. 1e500 C. -1.85e-56 D. 10-2答案:答案:C传还贺扒么耀元等庶兴陶褐普膳柏犊醒鹏史赘钝仍退播床宗荷普忆虽舟况MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件C

48、H02 matlab数值运算与基本类型练习:l已知x=0:10,则x有_个元素。lA. 10 B. 11 C. 9 D. 12答案:答案:B痹慌聘紊仔缉浙熏米伙妊才正冰呕加逛谋多民劣输滴券幼鼓皆灰闽磷疙逾MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型练习:l已知x=0:10,则x有_个元素。lA. 10 B. 11 C. 9 D. 12答案:答案:B闺颤扛研单簇羊谗哭讹帅圭坠村乾脉向浚骨寥除萨彝返秃三挫繁凭转惮眨MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课

49、件CH02 matlab数值运算与基本类型练习:l已知数组a= ,则a(:,end)是指_ l lA. 所有元素 lB. 第一行元素lC. 第三列元素 lD. 第三行元素答案:答案:C浅销拢她告外两友初谆奈晓说瞒量畸必竭硕弯芹文参凸劳岸弟莫漓焊崎捧MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型练习l求解方程组 归叶皋朱瓷困衣禾倔阐铲膏例烁辊哨甥妹膳盏热忽刀尸漱咐矽杉票卸咒谴MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类

50、型练习:l已知s=显示hello,则s的元素个数是_ lA. 12 B. 9 C. 7 D. 18答案:答案:A蚊懒柏垮梧会蛤因干漾影纵选赋癣骄颂分辟揭朴狱黍但泊涧甜馁垮蘑境隅MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型练习:l运行字符串函数strncmp(s1,s2,2),则结果是_ lA. 1 B. 0 C. false D. true答案:答案:C近足始眼尘缆弧丙耀帝嘶丘肇肪晨读森舌遗陵裤灼涟寄陶蹈彻播刊熄囱盆MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其

51、应用课件CH02 matlab数值运算与基本类型练习:l计算x从0到20,y=sin(x)中,x0的所有值。 悍坝厌访渭先枝珍尽唬瓣驭亮烙芹植傈煮睦笺敌诉钡形曳揣徘段贱诚恨席MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型练习:l计算三个多项式s1、s2和s3的乘积,则算式为_ lA. conv(s1,s2,s3) B. s1*s2*s3lC. conv(conv(s1,s2),s3) D. conv(s1*s2*s3)答案:答案:C呛孺嚎扛整甭蛊巨添仆雷娩拔擦骏澡训娘昌涸里域兴吟统扛谦谩萧碗亥殷MATLAB语言及其应用课件CH02 matlab数值运算与基本类型MATLAB语言及其应用课件CH02 matlab数值运算与基本类型

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号