matlab入门教程().ppt

上传人:F****n 文档编号:107383653 上传时间:2019-10-19 格式:PPTX 页数:182 大小:709.45KB
返回 下载 相关 举报
matlab入门教程().ppt_第1页
第1页 / 共182页
matlab入门教程().ppt_第2页
第2页 / 共182页
matlab入门教程().ppt_第3页
第3页 / 共182页
matlab入门教程().ppt_第4页
第4页 / 共182页
matlab入门教程().ppt_第5页
第5页 / 共182页
点击查看更多>>
资源描述

《matlab入门教程().ppt》由会员分享,可在线阅读,更多相关《matlab入门教程().ppt(182页珍藏版)》请在金锄头文库上搜索。

1、MATLAB 数学建模基础教程,MATLAB 数学建模基础教程,MATLAB的概述 MATLAB程序设计基础 MATLAB在数值计算中的应用 MATLAB的符号计算 MATLAB的图形处理,MATLAB程序设计基础,MATLAB语言的基本要素 MATLAB语言的核心矩阵 单元型数据和结构型数据 M文件 流程控制语句,变量 变量不需要事先声明,也不需要指定变量类型,它会自动根据所赋予变量的值或对变量的操作来确定变量的类型;赋值过程中,如果变量已存在,则用新值代替旧值,以新的类型代替旧的类型。 变量的命名规则: 变量名区分大小写; 变量名长度不超过31位,第31位之后的字符被忽略; 变量名以字母开

2、头,变量名中可以包含字母、数字、下划线,但不能使用标点。 变量一般为局部变量,即仅在其调用的M文件内部有效;若要定义全局变量,须在变量前加关键字global。,2019年10月19日1时29分,4,MATLAB语言的基本要素,Matlab语言主要是由几个基本要素构建而成的,其中包括变量、常量、数值、字符串、运算符及标点等。,回到主目录,常量 matlab中预定义的一些特殊的量。 i,j 虚数单位 Realmin 最小的正浮点数, pi 圆周率 Realmax 最大的浮点数, eps 浮点运算的相对精度 Inf 无穷大 NaN Not-a-Number ,表示不定值 例如: pi ans = %

3、ans是默认的结果变量 3.1416,2019年10月19日1时29分,5,2019年10月19日1时29分,6,1/0 Warning: Divide by zero. ans = Inf 0/0 Warning: Divide by zero. ans = NaN,定义变量时应避免与常量名相同,如果改变了某个常量的值,可以用“clear+常量名”命令来恢复该常量的初始设定值。,2019年10月19日1时29分,7,pi=1 pi = 1 clear pi pi ans = 3.1416,数值 数值缺省为实数保留小数点后4位浮点数表示。其输入格式与C语言一致:如:9 -73 0.1999 1

4、.475e6 输出格式由format命令控制,只是影响屏幕显示效果,不影响内部存储和计算。下面以pi为例。,2019年10月19日1时29分,8,format long;pi ans = 3.14159265358979 format long e;pi ans = 3.141592653589793e+000 format long g;pi ans = 3.14159265358979,2019年10月19日1时29分,9, z=2*exp(pi/3i) z = 1.0000 + 1.7321i,Matlab语言还提供了复数的表达和运算功能。复数的基本单位表示为i或j。例如: 如果是表达式

5、,必须在虚部的数值与i、j之间使用乘号。, sin(pi/3)+cos(pi/3)j ? sin(pi/3)+cos(pi/3)j Error: Unexpected MATLAB expression. sin(pi/3)+cos(pi/3)*j ans = 0.8660 + 0.5000i,字符串 字符串用单引号输入或赋值; 字符串的每个字符都是都是字符数组的一个元素; 字符串和字符数组基本上等价。,2019年10月19日1时29分,10, s=i love you s = i love you, size(s) ans = 1 10, s(2) ans = s(10) ans = u,字

6、符串的每个字符(包括空格)都是字符数组的一个元素。 在matlab中,字符串与字符数组或矩阵基本上是等价的。,如果在字符串内使用单引号时,可以用连续两个单引号表示。例如:,2019年10月19日1时29分,11,字符串之间的转换函数: double 字符串转换为数值代码 num2str 数字转换为字符串 int2str 整数转换为字符串 mat2str 矩阵转换为字符串 str2num 转换字符串为数字, double(s) %s=i love you ans = 105 32 108 111 118 101 32 121 111 117, s=its good s = its good,20

7、19年10月19日1时29分,12, a=1:5 a = 1 2 3 4 5 b=num2str(a) b = 2 3 4 5 a*2 ans = 2 4 6 8 10 b*2 ans = 98 64 64 100 64 64 102 64 64 104 64 64 106,matlab对字符串的操作与C语言中的几乎完全相同: strcat 链结串 strcmp 比较串 strvcat 垂直链结串 strncmp 比较串的前n个字符 findstr 在其他串中找此串 upper 转换串为大写 lower 转换串为小写 blanks 生成空串 deblank 移去串中空格 ,2019年10月19

8、日1时29分,13,例如:把前面的字符串s转化成大写。s=“it good” upper(s) ans = ITS GOOD,执行字符串的功能用eval来实现。 t=1/(a*b-1);a=2;b=3;c=eval(t) % 可以在一行中表示。 c = 0.2000,运算符 在matlab语言中运算符包括算术运算符、关系运算符和逻辑运算符。其中算术运算符见右表: 其中点运算是指操作元素点对点的运算,也就是说矩阵内元素对元素之间的运算,点运算要求参与运算的变量在结构上必须是相似的。 例如:,2019年10月19日1时29分,14, a=1,2,3;4,5,6;7,8,9 a = 1 2 3 4

9、5 6 7 8 9 b=1 2 3 4 5 6 7 8 9 b = 1 2 3 4 5 6 7 8 9,2019年10月19日1时29分,15, c=a*b c = 30 36 42 66 81 96 102 126 150 d=a.*b d = 1 4 9 16 25 36 49 64 81,思考: 题目:通过描点法得到sin(x)xcos(x)函数在0-pi区间上的曲线。 提示:通过点运算获得。(附件diancheng。txt),Matlab语言的关系运算符如右表: 当判断一个矩阵是否为空矩阵时,一般不用“=”,而应当使用函数isempty。,2019年10月19日1时29分,16,Mat

10、lab语言的逻辑运算符如右表: 进行逻辑判断时,所有非零数值均被认为为真,而零为假;在逻辑判断结果中,判断为真时输出1,为假时输出0. 三种运算符中,它们的优先级关系先后为:算术运算符、关系运算符、逻辑运算符。,2019年10月19日1时29分,17,2019年10月19日1时29分,18,a=1:3;4:6;7:9; x=5; y=ones(3)*5; xa=xb=0 1 0;1 0 1;0 0 1;,ab=a&b ab = 0 1 0 1 0 1 0 0 1 nb=b nb = 1 0 1 0 1 0 1 1 0,2019年10月19日1时29分,19,a=magic(5); a(:,3)

11、=zeros(5,1) a = 17 24 0 8 15 23 5 0 14 16 4 6 0 20 22 10 12 0 21 3 11 18 0 2 9 a1=all(a(:,1)10) a1 = 0,a2=all(a3) a2 = 1 1 0 0 0 a11=any(a(:,1)10) a11 = 1 a22=any(a10) a22 = 1 1 0 1 1,标点 在matlab中一些标点符号也被赋以特殊的意义,或表示要进行一定的运算等,如下表:,2019年10月19日1时29分,20,下面对上表中各标点作进一步的介绍。 首先,用冒号来定义行向量。 基本格式:xx1:step:x2(初始

12、值:步长:尾元素数值限) xx1:x2 (默认步长为1) 注意:这里强调x2为尾元素数值限,而不是尾元素值。当x2-x1恰为步长的整数倍时,x2才能成为尾值。 例如:,2019年10月19日1时29分,21,2019年10月19日1时29分,22, a=1:2:12 a = 1 3 5 7 9 11 a=12:-2:1 a = 12 10 8 6 4 2 a=1:6 a = 1 2 3 4 5 6 a=2:2:12 a = 2 4 6 8 10 12,其次,通过使用冒号,可以截取指定矩阵中的部分。例如:,2019年10月19日1时29分,23, a=1:18;a=reshape(a,3,6)

13、%重组矩阵 a = 1 4 7 10 13 16 2 5 8 11 14 17 3 6 9 12 15 18 a1=a(:,1:3) %提取矩阵a的第1到3列元素组成的子矩阵。 a1 = 1 4 7 2 5 8 3 6 9 a2=a(1:2,3:end) a2 = 7 10 13 16 8 11 14 17,思考:B1=a(1:3,:)?,分号在matlab语言中所起的作用是作为分隔行的标志,这里包括在矩阵定义中对行的区分以及在程序代码中对行的划分。在矩阵定义中,分号之间的数据被认为是矩阵的同一行。对于以分号结尾的行语句,matlab语言不会把其运算结果显示在命令窗口中。 逗号主要起两个作用。

14、其一是逗号是函数参数的分隔符,也是矩阵下标的分隔符。其二是逗号也是区分矩阵列的标志,在同一行中,逗号分隔开的是各个列。 括号是调整运算先后次序的标点,可以通过引用括号来调整运算次序。 矩阵的定义需要使用中括号。此外,中括号可以表示空矩阵,并通过该空矩阵实现对矩阵的部分删除。以下举例:,2019年10月19日1时29分,24, a=1,2,3,4;5,6,7,8;4,3,2,1;8,7,6,5 a = 1 2 3 4 5 6 7 8 4 3 2 1 8 7 6 5 a(:,1:2)= a = 3 4 7 8 2 1 6 5 b=a(1 3,:) b = 3 4 2 1,2019年10月19日1时

15、29分,25,大括号是单元型数据所特有的标点。后面介绍。 小数点“.”,它起到了数学符号的作用;而作为点运算的标志符,它又构成了各种各样的点运算;最重要的是它可作为结构型数组应用时的专有符号。 “”为matlab语言中的续行符,但是该续行符只能出现在各个语义群之间,也就是说不能出现在变量名之间,否则出错。例如:,2019年10月19日1时29分,26, a=sin(pi/4)+cos(pi/4)-tan(pi/4). +cot(pi/4) a = 1.4142 a=sin(pi/4)+cos(pi/4)-t. an(pi/4) ? an(pi/4) | Error: Unexpected MATLAB expression.,在matlab语言中,一行内在“%”之后的文字均被认为是对M文件或程序代码的解释部分。 “!”可以在命令窗口直接调用操作系统命令,例如DOS命令,并将结果展示在命令窗口中,比如在命令窗口中调用“!dir

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

当前位置:首页 > 幼儿/小学教育 > 小学教育

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