MATLAB数值计算

上传人:飞*** 文档编号:46345443 上传时间:2018-06-25 格式:PPTX 页数:88 大小:1.22MB
返回 下载 相关 举报
MATLAB数值计算_第1页
第1页 / 共88页
MATLAB数值计算_第2页
第2页 / 共88页
MATLAB数值计算_第3页
第3页 / 共88页
MATLAB数值计算_第4页
第4页 / 共88页
MATLAB数值计算_第5页
第5页 / 共88页
点击查看更多>>
资源描述

《MATLAB数值计算》由会员分享,可在线阅读,更多相关《MATLAB数值计算(88页珍藏版)》请在金锄头文库上搜索。

1、1MATLAB的数值计算Matlab 具有出色的数值计算 能力,占据世界上数值计算软件 的主导地位2数值运算的功能n创建矩阵n矩阵运算n多项式运算n线性方程组n线性插值、拟合n微分方程的数值解3数据结构n整数数据类型表示范围类型转换函数有符号1字节整数-27-27-1int8( )有符号2字节整数-215-215-1int16( )有符号4字节整数-231-231-1int32( )有符号8字节整数-263-263-1int64( )无符号1字节整数0-28-1uint8( )无符号2字节整数0-216-1uint16( )无符号4字节整数0-232-1uint32( )无符号8字节整数0-2

2、64-1uint64( )4数据结构n浮点数数据类型 存储大 小表示范围类型转换函 数双精度浮 点数8字节double ( )单精度浮 点数4字节single( )5数据结构n支持复数、逻辑类型、字符及字符串。n从5.0开始,允许其他更高级的数据结构,如 多维数组、数据结构体、单元数组、类和对 象等6数据结构n字符串型数据:用单引号括起来 n多维数组:是矩阵的直接扩展,多个下标n单元数组:将不同类型数据集成到一个变 量名下面,用表示n结构体:根据属性名组织起来的不同类型 数据的集合。 引用 A.b,n类与对象:可以定义各种复杂详细的变量7MATLAB 语言基础nMATLAB 语言的变量名规则n

3、变量名的第一个字符必须是英文字母,最多包 含个字符(包括英文字母、数字和下划线 ),变量中不得包含空格和标点符号,不得包 含加减号.n区分大小写 Abc ABcn有效 MYvar12, MY_Var12 和 MyVar12_n错误的变量名 12MyVar, _MyVar12 8MATLAB 语言基础nMATLAB 的保留常量ans命令窗最近一次命令的结果eps正的极小值2.2204e-016i 和 j虚数单位inf无穷大NaN不定式,如00pi圆周率的双精度浮点表示 3.1416lasterr最新一次的错误信息lastwarn最新一次的警告信息9MATLAB 的基本语句结构n直接赋值语句【例2

4、-2】表示矩阵 A=eye(3); A; 1 2 3 A=eye(4);A 1;2;3;410【例2-3】 试输入复数矩阵需要避免的语句不能有空格11n函数调用语句U S V=svd(X);12n n用线性等间距生成向量矩阵(用线性等间距生成向量矩阵(start:step:endstart:step:end)n nstartstart为起始值为起始值n nstepstep为步长,步长为为步长,步长为1 1时可省略时可省略stepstep参数;另外参数;另外stepstep也可以也可以 取负数取负数n nendend为终止值为终止值13用不同的步距生成 (0,p) 间向量v1=0 : 0.2 :

5、 piv2=0 : -0.1 : piv3=0 : piv4=pi:-1:0v5=0:0.2:pi, piv6=pi : -1 : 0 014n na=a=linspacelinspace(n1,n2,n)(n1,n2,n)n n在线性空间上,在线性空间上,行向量行向量的值从的值从n1n1到到n2n2,数据个数为,数据个数为n n, 缺省缺省n n为为100100例:例: a=a=linspacelinspace(1,10,10)(1,10,10) a=a=1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 1015na=logspace(n1,n2,n)n在对数空间

6、上,行向量的值从10n1到10n2,数据个数为n ,缺省n为50。这个指令为建立对数频域轴坐标提供了 方便。 例: a=logspace(1,3,3) a=10 100 100016特殊矩阵的生成特殊矩阵的生成单位矩阵单位矩阵eye(n)eye(n) % %生成生成n n维单位阵维单位阵eye(eye(m,nm,n) )%生成生成mnmn的单位阵的单位阵 eye(eye(m,nm,n) ) %生成生成mnmn的单位阵的单位阵 eye(size(A)eye(size(A) % %生成与生成与A A矩阵同样大小的单位阵矩阵同样大小的单位阵全全1 1矩阵矩阵 ones(n)ones(n) ones(

7、ones(m,nm,n) ) ones(ones(m,nm,n) ) ones(size(A)ones(size(A)全全0 0矩阵矩阵 zeros(n)zeros(n)zeros(m,n)zeros(m,n) zeros(m,n)zeros(m,n) zeros(size(A)zeros(size(A)随机矩阵随机矩阵 rand(n)rand(n) rand(rand(m,nm,n) ) rand(rand(m,nm,n) ) rand(size(Arand(size(A) ) 生成的随机矩阵的各个元素值在生成的随机矩阵的各个元素值在0 0和和1 1之间均匀随机分布。之间均匀随机分布。 ra

8、ndnrandn(n)(n)产生均值为产生均值为0 0,方差为,方差为1 1的正态分布的随机矩阵。的正态分布的随机矩阵。17建立随机矩阵: (1) 在区间20,50内均匀分布的5阶随机矩 阵。 (2) 均值为0.6、方差为0.1的5阶正态分布随 机矩阵。 命令如下:x=20+(50-20)*rand(5)x=20+(50-20)*rand(5)y=0.6+sqrt(0.1)*y=0.6+sqrt(0.1)*randnrandn(5)(5)18nA(m,n):提取第m行,第n列元素nA(:,n):提取第n列元素nA(m,:):提取第m行元素nA(m1:m2,n1:n2):提取第m1行到第 m2行

9、和第n1列到 第n2列的所有元素 (提取子块)。nA(:):得到一个长列矢量,该矢量的 元素按矩阵的列进行排列。矩阵的提取 1、矩阵下标 MATLAB通过确认矩阵下标,可以对矩阵进行插入 子块,提取子块和重排子块的操作。n n基本语句格式基本语句格式19n子矩阵提取n提取 A 矩阵全部奇数行,所有列n 提取 A 矩阵 3,2,1 行、2,3,4 列构成子矩阵n将 A 矩阵左右翻转,即最后一列排在最前面20(3) 矩阵的抽取n用下标可以从大矩阵里面抽取某些元素组成小的矩阵。 例: A=1 2 3;4 5 6;7 8 9;B=A(1,1),A(2,3)B =1 6(4) 删除矩阵的行和列n把空的

10、称为空矩阵,可以通过把矩阵的行或列赋值为空 矩阵来删除某行或某列。例: X %将一个00的矩阵赋给XA(:,2 4)= %将A的第二列和第四列删除A(:,2)= %删除矩阵A的第二列212. 矩阵的组合n即把小矩阵组合成大矩阵,组合符号为中括号。例:A=1 2;3 4; B=5 6;7 8;C=A B C=A;BC = C =1 2 5 6 1 23 4 7 8 3 45 67 822(5)矩阵扩展n如果在原矩阵中一个不存在的地址位置上设定一个数(赋 值),则该矩阵会自动扩展行列数,并在该位置上添加这 个数,而且在其他没有指定的位置补零。(6)矩阵的大小m,n=size(A,x):返回矩阵的行

11、列数m与n,当x=1,则只 返回行数m,当x=2,则只返回列数n。length(A)=max(size(A):返回行数或列数的最大值。23数据结构体数据结构体将某一类相关的信息纳入一个统一的变量名下 进行管理。比如要建立学生档案就可以采用数据结构体。结 构体可以理解成在MATLAB语言下的一个小型“数据库”例. 考虑建立学生档案结构体,这里应包含下列信息(成员变 量或属性):l 编号(用number表示):数值型。l 姓名(name):字符串型。l 身高(height):数值型l 考试成绩(test):矩阵,其第i行为第i次考试的成绩,第j 列为第j门考试的成绩结构体的建立、修改及应用24建立

12、结构体student_recstudent_rec.number=1;student_rec.name=张三;student_rec.height=180; student_rec.test=100,80,75;77,60,92;67,28,90;100,89,78;student_rec=struct(number,1,name,张三 ,height,180,test,100,80,75;77,60,92;67,28,90;100,89,78)显示结构体的内容 student_recstudent_rec = number: 1name: 张三height: 180test: 4x3 dou

13、ble25引用结构体中成员变量时直接引用即可获得该结构体中的test成员变量 student_rec.testans =100 80 7577 60 9267 28 90100 89 7826建立结构体矩阵b b=struct(number,1,2,3, name,张三, 李四,王五 ,height,180,170,185,test,100,80,75;77,60,92;67,28,90;10 0,89,78,) ) %构造13结构体矩阵b = 1x3 struct array with fields:numbernameheighttest27结构体的添加,修改给b的一个结构体元素加一个成员

14、变量体重(weight),则 可以将结构体矩阵中任意一个结构体元素后面加一个weight 成员变量,即 b(1,2).weight=90b = 1x3 struct array with fields:numbernamehighttestweight28成员变量的消除 rmfield()消除b结构体中weight成员变量 b=rmfield(b,weight)b = 1x3struct array with fields:numbernamehighttest29单元结构n单元 (cell)结构。该结构把不同属性的数据都纳入 到一个变量之下,而这个变量称为单元。单元结 构的概念有些类似于结构体,所不同的是,结构 体下的各子项称为成员变量,每个成员变量都有 自己的名字。单元变量的表示方法更类似于带有 下标的矩阵和多维数组。并且单元结构不要求每 个矩阵元素具有相同的属性。n用户可以将各种不同属性的数据全部归并到一个 单元变量中。30用单元数据结构来构造某个学生档案 B=1,张三,180,100 80 75;77 60 92;67 28 90;100 89 78B = 1 张三 180 4x3 double size(B)ans =1 4 B4ans =100 80 7577 60 9267 28 9010

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

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