




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、http:/ 电子发烧友 http:/ 电子技术论坛应自炉应自炉五邑大学信息学院五邑大学信息学院20072007年年http:/ 电子发烧友 http:/ 电子技术论坛2.1 MATLAB 基本数据类型基本数据类型2.2 变量、常量与赋值语句结构变量、常量与赋值语句结构2.3 矩阵的矩阵的 MATLAB 表示表示2.4 多维数组的定义多维数组的定义2.5 字符串变量及其处理字符串变量及其处理2.6 稀疏矩阵稀疏矩阵2.7 矩阵的基本运算矩阵的基本运算2.8 综合例子与练习题综合例子与练习题http:/ 电子发烧友 http:/ 电子技术论坛MATLAB 基本数据类型为双精度浮点数的矩阵,在基本
2、数据类型为双精度浮点数的矩阵,在4.2版本及之前版本,只有这一数据类型,但从版本及之前版本,只有这一数据类型,但从5.0后增加了许多其它数据类型,主要有后增加了许多其它数据类型,主要有charcharacter array (string).cellcell array.structstructure arraysinglesingle precisionuint8unsigned 8-bit integeruint16unsigned 16-bit integer.uint32unsigned 32-bit 8signed 8-bit 16sign
3、ed 16-bit 32signed 32-bit integer.http:/ 电子发烧友 http:/ 电子技术论坛MATLAB 变量的命名规则和其它语言的类似,区分大小变量的命名规则和其它语言的类似,区分大小写,基本变量类型为矩阵,不用定义维数写,基本变量类型为矩阵,不用定义维数直接赋值语句直接赋值语句 变量变量 赋值表达式赋值表达式 例:例: a=5函数调用语句函数调用语句 返回变量列表返回变量列表 函数名(输入变量列表)函数名(输入变量列表) 例:例: a=ones(10,100); m,n=size(a)http:/ 电子发烧友 http:/ 电子技术论坛MA
4、TLAB 语言中还为特定常数保留了一些名称,而这些语言中还为特定常数保留了一些名称,而这些常量都可以重新赋值,但建议避免这样做。常量都可以重新赋值,但建议避免这样做。ans命令窗最近一次命令的结果命令窗最近一次命令的结果eps机器的浮点误差限机器的浮点误差限2.2204e-016i 和和 j纯单位虚数纯单位虚数inf无穷大无穷大NaN不定式,如不定式,如00pi圆周率的双精度浮点表示圆周率的双精度浮点表示 3.1416lasterr最新一次的错误信息最新一次的错误信息lastwarn最新一次的警告信息最新一次的警告信息http:/ 电子发烧友 http:/ 电子技术论坛在在 MATLAB 中表
5、示矩阵是非中表示矩阵是非常方便灵活的,如输入矩阵常方便灵活的,如输入矩阵987654321在在 MATLAB 命令窗中输入命令窗中输入下面语句:下面语句: a=1 2 3;4 5 6;7 8 9a = 1 2 3 4 5 6 7 8 9左边语句在工作区中建立了变量左边语句在工作区中建立了变量 a ,语句的末尾没有分号,显示,语句的末尾没有分号,显示结果,否则不显示结果,如下面结果,否则不显示结果,如下面语句语句 a=1 2 3;4 5 6;7 8 9; http:/ 电子发烧友 http:/ 电子技术论坛下面语句输入行向量和列向量下面语句输入行向量和列向量 b=3 5 2 4 7b = 3 5
6、 2 4 7 c=1;3;6;9;3c = 1 3 6 9 3由已知矩阵获得新的矩阵由已知矩阵获得新的矩阵 bb=b;2*b;1 2 3 4 5bb = 3 5 2 4 7 6 10 4 8 14 1 2 3 4 5 cc=c,2*c,1;3;5;7;9cc = 1 2 1 3 6 3 6 12 5 9 18 7 3 6 9http:/ 电子发烧友 http:/ 电子技术论坛访问矩阵的某一个元素访问矩阵的某一个元素(第二行第三列)(第二行第三列)设矩阵设矩阵 a 为为 a=magic(3)a = 8 1 6 3 5 7 4 9 2 a(2,3)ans = 7提取提取 a 矩阵的子矩阵矩阵的子矩
7、阵 aa=a(1,3,2,3)aa = 1 6 9 2提取提取 a 矩阵的某一些行矩阵的某一些行 a(1,3,:)ans = 8 1 6 4 9 2提取提取 a 矩阵的某一些列矩阵的某一些列 a(:,2,3)ans = 1 6 5 7 9 2http:/ 电子发烧友 http:/ 电子技术论坛修改矩阵的某一个元素修改矩阵的某一个元素设矩阵设矩阵 a 为为 a=magic(3)a = 8 1 6 3 5 7 4 9 2 a(2,3)=4a = 8 1 6 3 5 4 4 9 2修改矩阵的一些元修改矩阵的一些元素,注意维数的大素,注意维数的大小要相同小要相同冒号表达式冒号表达式 a(1,:)=2
8、3 4a = 2 3 4 3 5 7 4 9 2 b=1:3:20b = 1 4 7 10 13 16 19http:/ 电子发烧友 http:/ 电子技术论坛除了标准的二维矩阵外,除了标准的二维矩阵外,MATLAB从从5.0开始定义三维或多开始定义三维或多维数组,三维数组如图所示维数组,三维数组如图所示1A2AmAhttp:/ 电子发烧友 http:/ 电子技术论坛以下语句定义一个三维数组或矩阵以下语句定义一个三维数组或矩阵 a1=magic(3);a2=a1;a3=a1-a2; a4(:,:,1)=a1;a4(:,:,2)=a2;a4(:,:,3)=a3a4(:,:,1) = 8 1 6
9、3 5 7 4 9 2a4(:,:,2) = 8 3 4 1 5 9 6 7 2a4(:,:,3) = 0 -2 2 2 0 -2 -2 2 0http:/ 电子发烧友 http:/ 电子技术论坛MATLAB提供了另一个函数提供了另一个函数 cat 函数来构造多维数组函数来构造多维数组B = cat(n,A1,A2,A3,A4,.) 沿着第沿着第 n 维方向连接矩阵维方向连接矩阵A1,A2,A3,A4,. a1=magic(3);a2=pascal(3);a3=a1+a2; a4=cat(1,a1,a2,a3)a4 = 8 1 63 5 74 9 21 1 11 2 31 3 69 2 74
10、7 105 12 8 a5=cat(2,a1,a2,a3)a5 = 8 1 6 1 1 1 9 2 73 5 7 1 2 3 4 7 10 4 9 2 1 3 6 5 12 8http:/ 电子发烧友 http:/ 电子技术论坛cat 函数的另一个例子函数的另一个例子 a = magic(3); b = pascal(3); c = cat(4,a,b)c(:,:,1,1) = 8 1 6 3 5 7 4 9 2c(:,:,1,2) = 1 1 1 1 2 3 1 3 6size 函数用来求的矩阵的维数大小函数用来求的矩阵的维数大小 size(c)ans = 3 3 1 2length 函数用
11、来求矩阵各维的最大值函数用来求矩阵各维的最大值 length(c)ans = 3http:/ 电子发烧友 http:/ 电子技术论坛MATLAB 字符串由单引号括起来定义,例如字符串由单引号括起来定义,例如 a=This is a string arraya =This is a string array字符串可由如下方式连接起来字符串可由如下方式连接起来 a=This is ; b=an example ; c=for strings.; d=a b cd =This is an example for strings.http:/ 电子发烧友 http:/ 电子技术论坛字符串比较字符串比较
12、 strcmp(s1,s2)当字符串当字符串 s1 和和 s2 完全相同时,函数返回完全相同时,函数返回 1,否则返回,否则返回 0. a=hello; b=hello; c=hellp; strcmp(a,b), strcmp(b,c)ans = 1ans = 0字符串查找字符串查找 findstr(s1,s2)该函数返回较短一个字符串在另一个字符串中出现的下标位置。若该该函数返回较短一个字符串在另一个字符串中出现的下标位置。若该字符串不另一个字符串中出现,则返回一个空矩阵。字符串不另一个字符串中出现,则返回一个空矩阵。 findstr(a,lo), findstr(c,lo)ans = 4
13、ans = http:/ 电子发烧友 http:/ 电子技术论坛其他字符串函数其他字符串函数字符串替换字符串替换 str = strrep(s1, s2, s3) 获得字符串长度获得字符串长度 k = length(str) 删除字符串尾部的空格删除字符串尾部的空格 deblank(str) 字符串与双精度数的相互转换字符串与双精度数的相互转换 d = double(str), str = char(d) 将矩阵变换成字符串表示将矩阵变换成字符串表示 mat2str ( A ) http:/ 电子发烧友 http:/ 电子技术论坛稀疏矩阵是一种特殊的矩阵,它的大部分元素都为零,只有少稀疏矩阵是
14、一种特殊的矩阵,它的大部分元素都为零,只有少部分元素为非零,例如一个很大的单位矩阵。部分元素为非零,例如一个很大的单位矩阵。在在 MATLAB 中稀疏矩阵中一个元素占中稀疏矩阵中一个元素占 16 个字节的空间,个字节的空间,8个个字节表示该元素的值,用另两个字节表示该元素的值,用另两个4字节的整数表示其行列的值。字节的整数表示其行列的值。下面例子产生一个下面例子产生一个 100 X 100 的单位矩阵,用稀疏矩阵表示的单位矩阵,用稀疏矩阵表示 a=speye(100)a = (1,1) 1 (2,2) 1 (3,3) 1 (100,100) 1 b=eye(100); whos Name Si
15、ze Bytes Class a 100 x100 1604 sparse array b 100 x100 80000 double arrayhttp:/ 电子发烧友 http:/ 电子技术论坛变量类型测试变量类型测试k = iscell(C) TF = isnan(A)k = iscellstr(S) k = isnumeric(A)k = ischar(S) k = isobject(A)k = isempty(A) TF = isprime(A)k = isequal(A,B,.) k = isreal(A)k = isfield(S,field) TF = isspace(str)
16、TF = isfinite(A) k = issparse(S)k = isglobal(NAME) k = isstruct(S)TF = isinf(A) k = isstudentTF = isletter(str) k = isunixk = islogical(A)http:/ 电子发烧友 http:/ 电子技术论坛矩阵的矩阵的 Hermit转置转置 a=round(sqrt(10*rand(3,3)-5)+1+j), b=aa = 2.0000 + 1.0000i 1.0000 + 2.0000i 1.0000 + 2.0000i 1.0000 + 2.0000i 1.0000 +
17、 3.0000i 1.0000 + 3.0000i 2.0000 + 1.0000i 1.0000 + 3.0000i 1.0000 + 2.0000ib = 2.0000 - 1.0000i 1.0000 - 2.0000i 2.0000 - 1.0000i 1.0000 - 2.0000i 1.0000 - 3.0000i 1.0000 - 3.0000i 1.0000 - 2.0000i 1.0000 - 3.0000i 1.0000 - 2.0000ihttp:/ 电子发烧友 http:/ 电子技术论坛矩阵加减法,矩阵必须相同维数矩阵加减法,矩阵必须相同维数 a=magic(3);b=
18、pascal(3);c=a+b;d=b-a; a b c dans = 8 1 6 1 1 1 9 2 7 -7 0 -5 3 5 7 1 2 3 4 7 10 -2 -3 -4 4 9 2 1 3 6 5 12 8 -3 -6 4http:/ 电子发烧友 http:/ 电子技术论坛矩阵乘法,两相乘的矩阵维数必须相容矩阵乘法,两相乘的矩阵维数必须相容 a=2 5 3,b=1 3;2 4;3 1,c=a*ba = 2 5 3b = 1 3 2 4 3 1c = 21 29http:/ 电子发烧友 http:/ 电子技术论坛矩阵左除矩阵左除 矩阵左除矩阵左除 AB 表示由表示由Gauss消去法获得
19、线性方程消去法获得线性方程 AX=B 的的解解 X。亦即。亦即 XA1B。如果矩阵。如果矩阵 A 不是方阵,这是将使不是方阵,这是将使用作小二乘解法求取用作小二乘解法求取AX=B 的解的解 X。 a=2 4 3 5;1 4 5 2,b=3;2,c=aba = 2 4 3 5 1 4 5 2b = 3 2c = 0 0 0.2105 0.4737http:/ 电子发烧友 http:/ 电子技术论坛矩阵右除矩阵右除 矩阵右除矩阵右除 B/A 表示线性方程表示线性方程 XA=B 的解的解 X。矩阵。矩阵 A 为非为非奇异矩阵时奇异矩阵时 B/A 为为 BA1,更精确地有,更精确地有 B/A = (A
20、B)。 a=magic(3), b=2 3 1, b/aa = 8 1 6 3 5 7 4 9 2b = 2 3 1ans = 0.0917 -0.0333 0.3417http:/ 电子发烧友 http:/ 电子技术论坛矩阵翻转矩阵翻转 fliplr(A) , flipud(A), rot90(A) a=magic(4)a = 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 b=fliplr(a);c=flipud(a);d=rot90(a); b c dans = 13 3 2 16 4 14 15 1 13 8 12 1 8 10 11 5 9 7 6 12
21、 3 10 6 15 12 6 7 9 5 11 10 8 2 11 7 14 1 15 14 4 16 2 3 13 16 5 9 4http:/ 电子发烧友 http:/ 电子技术论坛矩阵乘方矩阵乘方 a=magic(3), b=a3a = 8 1 6 3 5 7 4 9 2b = 1197 1029 1149 1077 1125 1173 1101 1221 1053http:/ 电子发烧友 http:/ 电子技术论坛点运算点运算矩阵点运算即对应元素之间的运算,有时称为数组运算。矩阵点运算即对应元素之间的运算,有时称为数组运算。 a=magic(3);b=pascal(3); a ban
22、s = 8 1 6 1 1 1 3 5 7 1 2 3 4 9 2 1 3 6 c=a.*b;d=a./b;e=a.3;c d eans =8.0000 1.0000 6.0000 8.0000 1.0000 6.0000 512.0000 1.0000 216.0000 3.0000 10.0000 21.0000 3.0000 2.5000 2.3333 27.0000 125.0000 343.00004.0000 27.0000 12.0000 4.0000 3.0000 0.3333 64.0000 729.0000 8.0000http:/ 电子发烧友 http:/ 电子技术论坛点
23、运算点运算矩阵的点运算或数组运算应用很普遍,矩阵的点运算或数组运算应用很普遍,例如已知例如已知 x 为一向量,计算为一向量,计算 y=f(x) 在在 x 对应点上的值,对应点上的值,这是这是 f(x) 中的运算都必须是点运算。中的运算都必须是点运算。例如:例如: 12sin8cossin25xxexxxfx x=0:0.01:1; y=(sin(x).*cos(x).*exp(-5*x)+8)./(sin(2*pi*x)+x.2+1); plot(x,y)http:/ 电子发烧友 http:/ 电子技术论坛矩阵的逻辑运算矩阵的逻辑运算逻辑与逻辑与 或或 and(A, B)逻辑或逻辑或 或或 or(A, B)逻辑非逻辑非 或或 not(A)逻辑异或逻辑异或 xor(A, B)矩阵的逻辑运算都是对应元素之间的运算或其中一个为标矩阵的逻辑运算都是对应元素之间的运算或其中一个为标量,结果为同维数的矩阵,由量,结果为同维数的矩阵,由 0 和和 1 组成。组成。http:/ 电子发烧友 http:/ 电子技术论坛矩阵的比较关系矩阵的比较关系矩阵的比较关系都是对应元素之间的比较关系或其中一个矩阵的比较关系都是对应元素之间的比较关系或其中一个为标量,结果为同维数的矩阵,由为标量,结果为同维数的矩阵,由 0 和和 1 组成。比较结果组成。比较结果为真取为真取 1,比较结果为假取,比较结果为假取 0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 4《不做“小马虎”》(教学设计) 2023-2024学年统编版道德与法治一年级下册
- 河北对外经贸职业学院《生物合成药物学》2023-2024学年第二学期期末试卷
- 广州东华职业学院《织物产品结构与工艺(二)》2023-2024学年第二学期期末试卷
- 郑州工程技术学院《国外文学》2023-2024学年第二学期期末试卷
- 河源广东河源紫金县专门学校驻校教官招聘7人笔试历年参考题库附带答案详解
- 新疆农业大学《工作分析》2023-2024学年第二学期期末试卷
- 梅河口康美职业技术学院《缅甸语阅读》2023-2024学年第二学期期末试卷
- 冻土共振柱试验机项目效益评估报告
- Unit 5 In the Park Lesson 2(教学设计)-2024-2025学年人教新起点版英语二年级上册
- 重庆城市科技学院《建筑结构与平法识图》2023-2024学年第二学期期末试卷
- 全日制普通高级中学体育教学大纲
- 《Web前端综合实战》实训-课程标准
- 物理化学全册电子教案
- 苏教版小学数学四年级下册教材分析课件
- Unit+1+Cultural+Heritage+Grammar导学案 高中英语人教版必修第二册
- 跌倒坠床的评估及预防课件
- 自闭症机构与家长协议书
- 压缩空气管道施工组织设计
- 《建筑防水构造(CPS反应粘结型防水材料)》
- 第1课调查旅游意向(课件)四年级下册信息技术粤教版
- 跨境电子商务基础与实务PPT全套完整教学课件
评论
0/150
提交评论