第二章MATLAB的基本使用方法课件

上传人:我*** 文档编号:141316362 上传时间:2020-08-06 格式:PPT 页数:58 大小:276.50KB
返回 下载 相关 举报
第二章MATLAB的基本使用方法课件_第1页
第1页 / 共58页
第二章MATLAB的基本使用方法课件_第2页
第2页 / 共58页
第二章MATLAB的基本使用方法课件_第3页
第3页 / 共58页
第二章MATLAB的基本使用方法课件_第4页
第4页 / 共58页
第二章MATLAB的基本使用方法课件_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《第二章MATLAB的基本使用方法课件》由会员分享,可在线阅读,更多相关《第二章MATLAB的基本使用方法课件(58页珍藏版)》请在金锄头文库上搜索。

1、2020/8/6,1,第2章 基本使用方法,教学内容: 简单的数学运算 常用的操作命令和快捷键 MATLAB R2010a 的数据类型 MATLAB R2010a 的运算符 MATLAB的一些基础函数 MATLAB脚本文件,2020/8/6,2,MATLAB变量,(1)MATLAB变量的特点:MATLAB不需要对变量进行事先声明,也不需要指定变量的类型,系统会根据对变量赋予的值为变量自动指定类型。 (2)MATLAB的变量命名规则: 1:变量名区分大小写。如 pi 和 Pi 是两个不同的变量。在命令窗口中输入如下的命令,查看其结果。 2:变量名长度不超过63个字符,超过的部分将会被忽略。 3:

2、变量名必须以字母开始,其后可以为字母、数字或者 下划线。MATLAB 中的变量名不支持其他符号,因为其 他符号在 MATLAB 中具有特殊的意义。 (3)系统预定义的特殊变量(P29表2-15),2020/8/6,3,MATLAB两大特点,1: 面向复数设计的运算 a=-8;ra=a(1/3) ra = 1.0000 + 1.7321i p=1 0 0 -a;r=roots(p) r = -2.0000 1.0000 + 1.7321i 1.0000 - 1.7321i,2020/8/6,4,2: 面向数组设计的运算 (1) MATLAB把数据都看作数组进行存储和运算。 标量看作(11)的数组

3、数据。 (2) 为了加快计算速度,MATLAB对以数组形式存 储的数据设计了两种基本运算: 1数组运算 2矩阵运算,2020/8/6,5,2.1简单的数学运算,直接输入法 pi*42 ans = 50.2655 没有将结果赋予一个变量 时,MATLAB自动将结果赋 予一个暂时的变量名ans,2. 存储变量法 s=pi*42 s = 50.2655 h=2 h = 2 v=s*h v = 100.5310,2.1.1 最简单的计算器使用方法,2020/8/6,6,2.1.2 MATLAB中的常用数学函数,MATLAB提供的基本初等函数包括三角函数、指数函数、对数函数、复数函数、取整和求余函数、坐

4、标变换函数、数理函数和一些特殊函数。 教材P14-16 MATLAB中使用函数不需要先对函数声明,2020/8/6,7, a=1;b=2;c=sqrt(3); cos_alpha=(a2+b2-c2)/(2*a*b) cos_alpha = 0.5000 alpha=acos(cos_alpha) %反余弦函数acos() alpha = 1.0472 alpha=alpha*180/pi %将弧度值转化为角度 alpha = 60.0000,例2-3:已知三角形三个边长度分别为1、2、 ,求长度为 1和2的两条边的夹角大小。,2020/8/6,8, a=1,b=2,c=sqrt(3) a =

5、 1 b = 2 c = 1.7321,观察一下符号分号“;”,逗号“,”的区别。,2020/8/6,9,2.1.3MATLAB的数学运算符,ab=b/a。,2020/8/6,10,例:矩阵乘法和点乘, a=1 2;3 4; b=2 3;1 1; c=a*b c = 4 5 10 13 d=a.*b d = 2 6 3 4, a=magic(3) a = 8 1 6 3 5 7 4 9 2, c=ones(2,3) c = 1 1 1 1 1 1,魔术矩阵为每行、每列以及 对角之和均相等的矩阵,2020/8/6,11,2.1.4 标点符号的使用,这些符号必须是在英文状态下输入的,2020/8/

6、6,12,1:分号(;) 功能:用于区分数组的行,或者用于一个语句的结尾处,取消运行行显示。 2:百分号(%) 功能:用于在程序文本中添加注释,提高程序的可读性。百分号之后的文本都将视为注释,系统不对其进行编译。 c=ones(2,3); c=ones(2,3) %create a 2*3 matrix of ones. c = 1 1 1 1 1 1,2020/8/6,13,3: 逗号(,) x=1.545,2.1 x = 1.5450 2.1000 round(x) ans = 2 2 x,x x = 1.5450 2.1000 ans = 1.5450 2.1000, x,b=x; x

7、= 1.5450 2.1000,2020/8/6,14,2.2 常用的操作命令和快捷键,掌握一些常用的操作命令和快捷键,可以使得对MATLAB的操作更加便利。,2020/8/6,15,clear命令, x x = 1.5450 2.1000 clear x x ? Undefined function or variable x.,2020/8/6,16,快捷键及其功能,2020/8/6,17,2.3 MATLAB R2010a的数据类型,Matlab常用的数据类型: 数值:numeric 字符:char 逻辑:logical 单元:cell 结构:struct,2020/8/6,18,数值类

8、型,整数: int8,uint8,int16,uint16等 浮点数:单精度(single)和双精度(double) 复数: complex,2020/8/6,19,2.3.1整数,MATLAB 支持8位、16位、32位和64位的有符号和无符号整数数据类型。 上述整数数据类型除了定义范围不同外,具有相同的性质。,2020/8/6,20,整数数据类型的定义,格式: 数据类型标识符(数据值) 例如:定义一个8位有符号的整数x=30 x=int8(30) 测试数据类型函数: class(), x=int8(30) x = 30 class(x) ans = int8 y=80 y = 80 clas

9、s(y) ans = double,MATLAB默认的 数据类型,2020/8/6,21,整数的运算, y=uint8(15) y = 15 x=uint8(30) x = 30 x+y ans = 45 x*y ans = 255, x/y ans = 2 yx ans = 2 xy ans = 1,左除和右除的关系: yx=x/y,在进行除法时,MATLAB 首先将两个数视为双精度类型进行运算,然后将结果转化为相应的整形数据,当运算结果溢出时,系统 将结果设置为该数据类型 的上限或者下限,2020/8/6,22, x=double(x),y=double(y) x = 30 y = 15

10、y/x ans = 0.5000 z=y/x z = 0.5000 z=int8(z) z = 1,2020/8/6,23,方式一: datatype(variable) 例: x=int8(4.5) x = 5,方式二: cast(x,type) 例: y=cast(4.5,int8) y = 5 class(y) ans = int8,各种数据类型之间的转换:,2020/8/6,24,不同整数类型之间不能进行运算, x=int8(5) x = 5 y=int16(23) y = 23 z=x+y ? Error using = plus Integers can only be combi

11、ned with integers of the same class, or scalar doubles.,2020/8/6,25,2.3.2 浮点数,MATLAB 的默认数据类型是双精度类型(double)。 为了节省存储空间,MATLAB 也支持单精度数据类型的数组。 创建单精度类型的变量时需要声明变量类型,与创建整型变量类似。, x=single(3.4) x = 3.4000 y=34 y = 34 x+y ans = 37.4000 class(x+y) ans = single,单精度数据类型的数据进行运算时,返回值为单精度。,2020/8/6,26, realmin(sing

12、le),realmax(single) ans = 1.1755e-038 ans = 3.4028e+038 eps(single) ans = 1.1921e-007 realmin(double),realmax(double) ans = 2.2251e-308 ans = 1.7977e+308 eps(double) ans = 2.2204e-016,例 2-12 单精度和双精度数据类型的取值范围和精度,2020/8/6,27,2.3.3复数,MATLAB的所有运算是定义在复数域上. MATLAB中虚数单位用i或者j表示 通过两种方法创建复数: 直接输入法 (不建议大家使用) 通

13、过 complex 函数,2020/8/6,28, z=2+3i z = 2.0000 + 3.0000i x=2,y=3,z1=x+y*i x = 2 y = 3 z1 = 2.0000 + 3.0000i,2+3i x+y*i,2020/8/6,29, x=2,y=3,z1=x+yi x = 2 y = 3 ? Undefined function or variable yi. x=int8(2),y=int8(3),z1=x+y*i x = 2 y = 3 ? Error using = mtimes Complex integer arithmetic is not supporte

14、d.,注意:,是不是复数的实部 和虚部不能为整数呢?,2020/8/6,30,complex 函数的调用方法如下。,c = complex(a,b):返回结果 c 为复数,其实部为 a,虚部为 b。输入参数 a 和 b 可以为标量,或者维数、大小相同的向量、矩阵或者多维数组,输出参数和 a 和 b 的结构相同。 a 和 b 可以有不同的数据类型,当 a 和 b 为各种不同的类型时,返回值分别为: 当 a 和 b 中有一个为单精度时,返回结果为单精度; 如果 a 和 b 其中一个为整数类型,则另外一个必须有相同的整数类型,或者为双精度型,返回结果 c 为相同的整数类型。,2020/8/6,31,

15、 x=int8(2),y=int8(3) x = 2 y = 3 z2=complex(x,y) z2 = 2 + 3i,complex()创建单个复数,2020/8/6,32, a=int8(1 2 3 4) a = 1 2 3 4 b=int8(2 3 4 5) b = 2 3 4 5 c=complex(a,b) c = 1 + 2i 2 + 3i 3 + 4i 4 + 5i,complex()创建复数数组,2020/8/6,33,复数直角坐标和极坐标之间转换,real(z): 给出复数z的实部 imag(z):给出复数z的虚步 abs(z):给出z的模 angle(z):以弧度为单位给

16、出复数z的幅角,2020/8/6,34,c = complex(a),只有一个输入参数,返回结果 c 为复数,其实部为 a,虚部为 0。但是此时 c 的数据类型为复数。, x=int8(x) x = 2 c=complex(x) c = 2 isreal(c) ans = 0, d=complex(a) d = 1 2 3 4 isreal(d) ans = 0 e=x+0*i e = 2 isreal(e) ans = 1,isreal(x)判断x是否为实数,2020/8/6,35,2.3.4逻辑变量,1. 逻辑变量的值:逻辑真(1)、逻辑假(0) 2.一些 MATLAB 函数或操作符会返回逻辑真或逻辑假表示条件是否满足。 例如:表达式 (5 * 10) 40 返回逻辑真。 3. 逻辑数组:数组的元素全部是逻辑值。 如下面的表达式返回逻辑数组: 30 40 50 60 70 40

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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