MATLAB矩阵及运算南京信息工程大学MATLABPPT课件
合集下载
MATLAB程序设计与教程课件 第2章 1MATLAB矩阵及其运算
% 【例2-11】数组a为[1 2 3],数组b为[4 5 6], 求数组的幂c=a.^b. a=[1 2 3]; b=[4 5 6]; c=a.^b % 【例2-12】数组a为[1 2 3],求数组的幂c=a.^2. a=[1 2 3]; c=a.^2
% 【例2-13】数组a为[1 2 3],求数组的幂运算 c=2.^a. a=[1 2 3]; c=2.^a % 【例2-14】矩阵a为[1 2 3;4 5 6;7 8 9],计算a 的转置. a=[1 2 3;4 5 6;7 8 9]; c=a'
练习
2.2.1 变量的命名
MATLAB的变量命名规则如下: 变量名区分字母的大小写.例如,"a"和"A"是 不同的变量. 变量名不能超过63个字符,第63个字符后的字符 被忽略. 变量名必须以字母开头,变量名的组成可以是任 意字母,数字或者下划线,但不能含有空格和标点 符号(如,.%等). 不合法例子:1 1 a/b a-1 变量1 关键字(如if,while等)不能作为变量名. MATLAB提供的标准函数名以及命令名必须用小运算符前面加"." , 两矩阵进行点运算是指它们的对应元素进行相 关运算,要求两矩阵的维参数相同. 格式如下: A.*B %数组A和数组B对应元素相乘 A./B %数组A除以数组B的对应元素 A.\B %数组B除以数组A的对应元素 A.^B %数组A和数组B对应元素的乘方
(三)利用MATLAB函数建立矩阵
几个产生特殊矩阵的函数: zeros 产生全0矩阵(零矩阵) ones 产生全1矩阵 (么矩阵) eye 产生单位矩阵 rand 产生0~1间均匀分布的随机矩阵 randn 产生0~1间正态分布的随机矩阵
这几个函数的调用格式相似,下面以产生零矩阵的zeros 函数为例进行说明.其调用格式是: zeros(m) 产生m×m零矩阵 zeros(m,n) 产生m×n零矩阵. zeros(size(A)) 产生与矩阵A同样大小的零矩阵 相关的函数有: size(A) 返回包含2个元素的向量,分别是A的行数,列 数 length(A) 给出行数和列数中的较大者,即 length(A)=max(size(A)); ndims(A) 给出A的维数. reshape(A,m,n) 它在矩阵总元素保持不变的前提下,将 矩阵A重新排成m×n的二维矩阵.
matlab PPT第三章 矩阵运算
– 使计算程序简单、易读,使程序指令更接近于数学计算公式; – 提高程序的向量化程度,提高计算效率,节省计算机开销。
西安邮电学院计算机系
Matlab程序设计基础
例: 绘制函数 y xex在0 x 1时的曲线。 x=[0:0.1:1] y=x.*exp(-x) plot(x,y) 图解
西安邮电学院计算机系
Matlab程序设计基础
引导
数组:是指由一组实数或复数排成的长方阵列(Array)。 数组运算:是指无论在数组上施加什么运算(+、-、×、
÷或函数),总认为那种运算对被运算数组中的每个元素 (Element)平等地实施同样的操作。 MATLAB精心设计数组和数组运算的目的在于:
西安邮电学院计算机系
Matlab程序设计基础
Sub2ind([3,5],2,3) ans = 8
[a,b]=Ind2sub([3,5],8) a= 2 b= 3
西安邮电学院计算机系
Matlab程序设计基础
“逻辑1”标识
所谓“逻辑1”标识 法是:通过与原数组A同样 大小的逻辑数组L中“逻辑值1”所在的位置,指 出A中元素的位置。
西安邮电学院计算机系
Matlab程序设计基础
多(高)维数组的定义
数组的第一维称为“行(Row)”,第二维称 为“列(Column)”,第三维称为“页 (Page)”,第四维称为“箱 (Box)”,……
西安邮电学院计算机系
Matlab程序设计基础
多(高)维数组的创建
创建多维数组最常用的四种方法:
虽然数组运算尚缺乏严谨的数学推理,数组运 算本身仍在完善和成熟中,但它的作用和影响 正随着MATLAB的发展而扩大。
西安邮电学院计算机系
Matlab程序设计基础
例: 绘制函数 y xex在0 x 1时的曲线。 x=[0:0.1:1] y=x.*exp(-x) plot(x,y) 图解
西安邮电学院计算机系
Matlab程序设计基础
引导
数组:是指由一组实数或复数排成的长方阵列(Array)。 数组运算:是指无论在数组上施加什么运算(+、-、×、
÷或函数),总认为那种运算对被运算数组中的每个元素 (Element)平等地实施同样的操作。 MATLAB精心设计数组和数组运算的目的在于:
西安邮电学院计算机系
Matlab程序设计基础
Sub2ind([3,5],2,3) ans = 8
[a,b]=Ind2sub([3,5],8) a= 2 b= 3
西安邮电学院计算机系
Matlab程序设计基础
“逻辑1”标识
所谓“逻辑1”标识 法是:通过与原数组A同样 大小的逻辑数组L中“逻辑值1”所在的位置,指 出A中元素的位置。
西安邮电学院计算机系
Matlab程序设计基础
多(高)维数组的定义
数组的第一维称为“行(Row)”,第二维称 为“列(Column)”,第三维称为“页 (Page)”,第四维称为“箱 (Box)”,……
西安邮电学院计算机系
Matlab程序设计基础
多(高)维数组的创建
创建多维数组最常用的四种方法:
虽然数组运算尚缺乏严谨的数学推理,数组运 算本身仍在完善和成熟中,但它的作用和影响 正随着MATLAB的发展而扩大。
MATLAB矩阵及其运算精品PPT课件
2021/2/3
20
3.利用冒号表达式建立一个向量 冒号表达式可以产生一个行向量,一般格式是:
e1:e2:e3 其中e1为初始值,e2为步长,e3为终止值。 在MATLAB中,还可以用linspace函数产生行向 量。其调用格式为:
linspace(a,b,n) 其中a和b是生成向量的第一个和最后一个元素, n是元素总数。 显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。 4.建立大矩阵 大矩阵可由方括号中的小矩阵或向量建立起来。
➢MATLAB的函数
sin 正弦函数
sinh 双曲正弦函数
asin 反正弦函数 asinh 反双曲正弦函数
cos 余弦函数
cosh 双曲余弦函数
acos 反余弦函数 acosh 反双曲余弦函数
tan 正切函数
tanh 双曲正切函数
atan 反正切函数 atanh 反双曲正切函数
cot 余切函数
sech 双曲正割函数
MATLAB文件管理命令
what
dir
cd type(文件名) delete(文件名) which(文件名)
返回当前目录下M、MAT、MEX文件列表
列出当前目录下的所有文件 显示当前的工作目录 在命令窗口下显示该文件的内容 删除M文件 显示M文件所在的目录
2021/2/3
11
————MATLAB 常用函数————
文件中存在即可,变量名之间以空格分隔。
当变量名表省略时,保存或装入全部变量。 -ascii选项使文件以ASCII格式处理,省略 该选项时文件将以二进制格式处理。save命 令中的-append选项控制将变量追加到MAT 文件中。
2021/2/3
1第四讲MATLAB矩阵课件PPT
21 实例:以不同的格式显示pi的值
学习内容
一.变量和数据操作 二.数组和矩阵的创建 三.数组和矩阵的寻访和操作 四.数组和矩阵运算
22
MATLAB矩阵简介
从结构上讲,矩阵(数组)是MATLAB数 据存储的基本单元。
从运算角度讲,矩阵形式的数据有多种 运算形式,例如向量运算,矩阵运算, 数组运算等。
19
5.数据的输出格式
MATLAB用十进制数表示一个常数,具体 可采用日常记数法和科学记数法(如 3.5e5)两种表示方法。
在一般情况下,MATLAB内部每一个数据 元素都是用双精度数来表示和存储的。
20
5.数据的输出格式
数据输出时用户可以用format命令设置或 改变数据输出格式,
format命令的格式为:format+格式符 注:格式符决定数据的输出格式,格式符的 形式可以为 compact; losse;bank; short;long;short e;long e等。
8
一、变量和数据操作
1. 变量命名 在MATLAB 中,变量名是以字母开头,后接
字母、数字或下划线的字符序列,但不得 使用空格和标点符号,最多63个字符。如 my_var_201是合法的变量而my,var201就 不是变量名
9
变量命名命名规则(续)
在MATLAB中,变量名区分字母的大小 写,如变量myvar和MyVar表示两个不同 的变量,sin是MATLAB定义的正弦函数 名,但SIN,Sin等都不是。
1 0 % x1 2 5 % x2 2 0 % x3 5 % x4 1 2 %
x1 x2 x3 x4 1
2
0
x1
16 x2
10 x3
15x4
学习内容
一.变量和数据操作 二.数组和矩阵的创建 三.数组和矩阵的寻访和操作 四.数组和矩阵运算
22
MATLAB矩阵简介
从结构上讲,矩阵(数组)是MATLAB数 据存储的基本单元。
从运算角度讲,矩阵形式的数据有多种 运算形式,例如向量运算,矩阵运算, 数组运算等。
19
5.数据的输出格式
MATLAB用十进制数表示一个常数,具体 可采用日常记数法和科学记数法(如 3.5e5)两种表示方法。
在一般情况下,MATLAB内部每一个数据 元素都是用双精度数来表示和存储的。
20
5.数据的输出格式
数据输出时用户可以用format命令设置或 改变数据输出格式,
format命令的格式为:format+格式符 注:格式符决定数据的输出格式,格式符的 形式可以为 compact; losse;bank; short;long;short e;long e等。
8
一、变量和数据操作
1. 变量命名 在MATLAB 中,变量名是以字母开头,后接
字母、数字或下划线的字符序列,但不得 使用空格和标点符号,最多63个字符。如 my_var_201是合法的变量而my,var201就 不是变量名
9
变量命名命名规则(续)
在MATLAB中,变量名区分字母的大小 写,如变量myvar和MyVar表示两个不同 的变量,sin是MATLAB定义的正弦函数 名,但SIN,Sin等都不是。
1 0 % x1 2 5 % x2 2 0 % x3 5 % x4 1 2 %
x1 x2 x3 x4 1
2
0
x1
16 x2
10 x3
15x4
matlab程序设计入门20PPT 09-矩阵的处理与运算
特殊用途矩阵
说明 产生维度为 m×n ,构成元素全为 0 的矩阵 产生维度为 m×n ,构成元素全为 1 的矩阵 产生维度为 n×n ,对角线的各元素全为 1 ,其它各元素全为 0 的单位矩 阵 产生维度为 m×n 的 Pascal 矩阵 产生维度为 m×n 的 Vandermonde 矩阵 产生维度为 n×n 的 Hilbert 矩阵 产生 [0, 1] 均匀分布的随机数矩阵,其维度为 m×n 产生 μ = 0, σ= 1 的正规分布随机数矩阵,其维度为 m×n 产生维度为 n×n 的魔方阵,其各个直行、横列及两对角线的元素和都相等
MATLAB 中,所有矩阵的内部表示法都是以 直行为主的一维向量
A(i, j) 和 A(i+(j-1)*m) 是完全一样的~m为矩阵A 的列数
我们可以使用一维或二维下标来存取矩阵
矩阵的索引或下标
矩阵的索引或下标
可以使用矩阵下标来进行矩阵的索引(Indexing)
A(4:5,2:3) -取出矩阵 A 的 第四、五 横列与 二、三 直行 所形成的部份矩阵 A([9 14; 10 15]) - 用一维下标的方式来达到同样目的
x = magic(5); [colMax, colMaxIndex] = max(x); [maxValue, maxIndex] = max(colMax); fprintf('Max value = x(%d, %d) = %d\n', colMaxIndex(maxIndex), maxIndex, maxValue);
不同数据的储存
我们要节省内存空间,可以依矩阵元素值的范围,选用不同的数 据来储存 范例9-23: datatype01.m
clear all x_double = magic(10); x_single = single(x_double); x32 = uint32(x_double); x16 = uint16(x_double); x8 = uint8(x_double); whos % 清除所有工作空间的变量
MATLAB教程第3讲矩阵的运算.ppt
3.1.3 逻辑运算
MATLAB提供了3种逻辑运算符:&(与)、 |(或)和~(非)。 逻辑运算的运算法则为: (1) 在逻辑运算中,确认非零元素为真, 用1表示,零元素为假,用0表示。
逻辑运算的运算法则为: (1) 在逻辑运算中,确认非零元素为真, 用1表示,零元素为假,用0表示。 (2) 设参与逻辑运算的是两个标量a和b, 那么: a&b a,b全为非零时,运算结果为1,否 则为0。 a|b a,b中只要有一个非零,运算结果为1。 ~a 当a是零时,运算结果为1;当a非零 时,运算结果为0。
(3) 矩阵除法 在MATLAB中,有两种矩阵除法运算:\ 和/,分别表示左除和右除。 如果A矩阵是非奇异方阵(行列式不等于 零),则A\B和B/A运算可以实现。 A\B等效于A的逆左乘B矩阵,也就是 inv(A)*B,而B/A等效于A矩阵的逆右乘B矩 阵,也就是B*inv(A)。
对于含有标量的运算,两种除法运算的 结果相同,如 3/4和 4\3有相同的值,都等于 0.75。又如,设a=[10.5 ,25],则 a/5=5\a=[2.1000 5.0000]。 对于矩阵来说,左除和右除表示两种不 同的除数矩阵和被除数矩阵的关系。对于矩 阵运算,一般A\B≠B/A。 (4) 矩阵的乘方 一个矩阵的乘方运算可以表示成A^x, 要求A为方阵,x为标量。X为正整数
2. 点运算 在MATLAB中,有一种特殊的运算,因 为其运算符是在有关算术运算符前面加点, 所以叫点运算。 点运算符有 .*、./、.\和 .^。两矩阵进行 点运算是指它们的对应元素进行相关运算, 要求两矩阵的维参数相同。
例3-1 矩阵乘与矩阵点乘的区别: (1) 矩阵乘: A=[1 2 3;0 3 4; 2 0 1], B=[1 0 2;0 1 1; 2 1 0], A*B (2) 矩阵点乘: A=[1 2 3;0 3 4; 2 0 1], B=[1 0 2;0 1 1; 2 1 0], A.*B
第3章 MATLAB程序设计 南京信息工程大学MATLAB
共四十页
return
(2) while语句(yǔjù)
while 条件(tiáojiàn)
循环体语句
end
exam共四p十l页e
return
从学号1~65中任意抽取(chōu qǔ)5个,不能是未选修的学号
notselected=[5,8,25,33,34,39,42,43,44,45,46,48,51,56,57,60 ]; % 未选修(xuǎnxiū)的学生学号 for i=1:5
②
% % %
Faonelefrsdfseoeonnsr=imfrdSd=sins=Usaayi=mr1+tgM=:(risAnzii(zse(cie=,r1:X(eo)=A+;s:,,s(121s1,),i)|AszSidze(iieUmsi((,AMA:=a,2)=,)(;)c1X1)o;))luomr nSUvMec(tXo,r1)ofisroawroswumv函esc.数to体r of column sums
若有输入参数,需要以调用方式运行
共四十页
7
return
MATLAB程序设计
2. 程序控制 结构 (chéngxùkòngzhì)
❖ 顺序结构(jiégòu)
go
❖ 选择结构
go
❖ 循环结构
go
next part
应用实例(shílì)分析
8
共四十页
顺序结构编程实例(shílì): 求一元二次方程ax2 +bx+c=0的根。 (教材P60 例3-3)
return
try语句(yǔjù)编程实例: ex3_7.m
A=[1,2,3;4,5,6]; B=[7,8,9;10,11,12]; try
matlab教程ppt(完整版)
转置
可以使用`'`运算符对矩阵进行 转置。
矩阵高级运算
01
逆矩阵
可以使用`inv`函数求矩阵的逆矩阵 。
行列式
可以使用`det`函数求矩阵的行列式 。
03
02
特征值和特征向量
可以使用`eig`函数求矩阵的特征值 和特征向量。
秩
可以使用`rank`函数求矩阵的秩。
04
04
matlab绘图功能
绘图基本命令
控制设计
MATLAB提供了控制系统设计和分析 工具箱,可以方便地进行控制系统的 建模、分析和优化。
03
信号处理
MATLAB提供了丰富的信号处理工具 箱,可以进行信号的时域和频域分析 、滤波器设计等操作。
05
04
图像处理
MATLAB提供了图像处理工具箱,可 以进行图像的增强、分割、特征提取 等操作。
02
matlab程序调试技巧分享
01
调试模式
MATLAB提供了调试模式,可以 逐行执行代码,查看变量值,设 置断点等。
日志输出
02
03
错误处理
通过使用fprintf函数,可以在程 序运行过程中输出日志信息,帮 助定位问题。
MATLAB中的错误处理机制可以 帮助我们捕获和处理运行时错误 。
matlab程序优化方法探讨
显示结果
命令执行后,结果将在命令窗口中显示。
保存结果
可以使用`save`命令将结果保存到文件中。
matlab变量定义与赋值
定义变量
使用`varname = value`格式定义变 量,其中`varname`是变量名, `value`是变量的值。
赋值操作
使用`=`运算符将值赋给变量。例如 ,`a = 10`将值10赋给变量a。
可以使用`'`运算符对矩阵进行 转置。
矩阵高级运算
01
逆矩阵
可以使用`inv`函数求矩阵的逆矩阵 。
行列式
可以使用`det`函数求矩阵的行列式 。
03
02
特征值和特征向量
可以使用`eig`函数求矩阵的特征值 和特征向量。
秩
可以使用`rank`函数求矩阵的秩。
04
04
matlab绘图功能
绘图基本命令
控制设计
MATLAB提供了控制系统设计和分析 工具箱,可以方便地进行控制系统的 建模、分析和优化。
03
信号处理
MATLAB提供了丰富的信号处理工具 箱,可以进行信号的时域和频域分析 、滤波器设计等操作。
05
04
图像处理
MATLAB提供了图像处理工具箱,可 以进行图像的增强、分割、特征提取 等操作。
02
matlab程序调试技巧分享
01
调试模式
MATLAB提供了调试模式,可以 逐行执行代码,查看变量值,设 置断点等。
日志输出
02
03
错误处理
通过使用fprintf函数,可以在程 序运行过程中输出日志信息,帮 助定位问题。
MATLAB中的错误处理机制可以 帮助我们捕获和处理运行时错误 。
matlab程序优化方法探讨
显示结果
命令执行后,结果将在命令窗口中显示。
保存结果
可以使用`save`命令将结果保存到文件中。
matlab变量定义与赋值
定义变量
使用`varname = value`格式定义变 量,其中`varname`是变量名, `value`是变量的值。
赋值操作
使用`=`运算符将值赋给变量。例如 ,`a = 10`将值10赋给变量a。
matlab矩阵操作基础ppt课件
MATLAB矩阵操作基础
精品ppt
1
MATLAB作为线性系统的一种分析和仿真 工具,是理工科大学生应该掌握的技术工具,它 作为一种编程语言和可视化工具,可解决工程、 科学计算和数学学科中许多问题。 MATLAB建立在向量、数组和矩阵的基 础上,使用方便,人机界面直观,输出结果可 视化。
矩阵是MATLAB的核心
(1)MATLAB的每条命令后,若为逗号或无标点符号,
则显示命令的结果;若命令后为分号,则禁止显示结果.
(2)“%” 后面所有文字为注释.
(3) “...”表示续行.
精品ppt
6
3、数学函数
函数 sin(x) cos(x) tan(x) abs(x) min(x) sqrt(x) log(x) sign(x)
例 m=[1 2 3 4 ;5 6 7 8;9 10 11 12] p=[1 1 1 1 2222 3 3 3 3]
精品ppt
13
特殊矩阵的建立:.
a=[ ]
产生一个空矩阵,当对一项操作无结 果时,返回空矩阵,空矩阵的大小为零.
b=zeros(m,n) 产生一个m行、n列的零矩阵
c=ones(m,n) 产生一个m行、n列的元素 全为1的矩阵
精品ppt
9
3、数组的方向
前面例子中的数组都是一行数列,是行方向分布的. 称之为行向量. 数组也可以是列向量,它的数组操作和运 算与行向量是一样的,唯一的区别是结果以列形式显示.
产生列向量有两种方法: 直接产生 例 c=[1;2;3;4] 转置产生 例 b=[1 2 3 4]; c=b’
说明:以空格或逗号分隔的元素指定的是不同列的 元素,而以分号分隔的元素指定了不同行的元素.
a./b= [a1/b1,a2/b2,…,an/bn]
精品ppt
1
MATLAB作为线性系统的一种分析和仿真 工具,是理工科大学生应该掌握的技术工具,它 作为一种编程语言和可视化工具,可解决工程、 科学计算和数学学科中许多问题。 MATLAB建立在向量、数组和矩阵的基 础上,使用方便,人机界面直观,输出结果可 视化。
矩阵是MATLAB的核心
(1)MATLAB的每条命令后,若为逗号或无标点符号,
则显示命令的结果;若命令后为分号,则禁止显示结果.
(2)“%” 后面所有文字为注释.
(3) “...”表示续行.
精品ppt
6
3、数学函数
函数 sin(x) cos(x) tan(x) abs(x) min(x) sqrt(x) log(x) sign(x)
例 m=[1 2 3 4 ;5 6 7 8;9 10 11 12] p=[1 1 1 1 2222 3 3 3 3]
精品ppt
13
特殊矩阵的建立:.
a=[ ]
产生一个空矩阵,当对一项操作无结 果时,返回空矩阵,空矩阵的大小为零.
b=zeros(m,n) 产生一个m行、n列的零矩阵
c=ones(m,n) 产生一个m行、n列的元素 全为1的矩阵
精品ppt
9
3、数组的方向
前面例子中的数组都是一行数列,是行方向分布的. 称之为行向量. 数组也可以是列向量,它的数组操作和运 算与行向量是一样的,唯一的区别是结果以列形式显示.
产生列向量有两种方法: 直接产生 例 c=[1;2;3;4] 转置产生 例 b=[1 2 3 4]; c=b’
说明:以空格或逗号分隔的元素指定的是不同列的 元素,而以分号分隔的元素指定了不同行的元素.
a./b= [a1/b1,a2/b2,…,an/bn]
《矩阵及其运算》PPT课件
其中e1为初始值,e2为步长,e3为终止值。 在MATLAB中,还可以用linspace函数产生行向量。其调 用格式为:
linspace(a,b,n) 其中a和b是生成向量的第一个和最后一个元素,n是元 素总数。
显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。
4.建立大矩阵 大矩阵可由方括号中的小矩阵或向量建立起来。(自学)
《矩阵及其运算》PPT课件
本课件仅供大家学习学习 学习完毕请自觉删除
谢谢 本课件仅供大家学习学习
学习完毕请自觉删除 谢谢
第2章 MATLAB矩阵及其运算
2.1 变量和数据操作 2.2 MATLAB矩阵 2.3 MATLAB运算 2.4 矩阵分析 2.5 矩阵的超越函数 2.6 字符串 2.7 结构数据和单元数据 2.8 稀疏矩阵
前面已讲。
2.2 MATLAB矩阵
1.直接输入法
直接输入需遵循以下基本规则: •整个矩阵应以“ [ ]”为首尾,即整个输入矩阵必须包含在 方括号中; •矩 阵 中 , 行 与 行 之 间 必 须 用 分 号 “ ; ” 或 Enter 键 ( 按 Enter键)分隔; •每行中的元素用逗号“ ,”或空格分隔; •矩阵中的元素可以是数字或表达式,但表达式中不可包含 未知的变量,MATLAB用表达式的值为该位置的矩阵元素赋 值。 •当 矩 阵 中 没 有 任 何 元 素 时 , 该 矩 阵 被 称 作 “ 空 阵 ” (Empty Matrix)。
例:x=5*(6-1/0.5); 5*(6-1/0.5)+3;
MATLAB的基本算术运算符有:+(加)、-(减)、*(乘)、 /(右除)、\(左除)、^(乘方),等等。 注: 运算是在矩阵意义下进行的,单个数据的算术运算只 是一种特例。
linspace(a,b,n) 其中a和b是生成向量的第一个和最后一个元素,n是元 素总数。
显然,linspace(a,b,n)与a:(b-a)/(n-1):b等价。
4.建立大矩阵 大矩阵可由方括号中的小矩阵或向量建立起来。(自学)
《矩阵及其运算》PPT课件
本课件仅供大家学习学习 学习完毕请自觉删除
谢谢 本课件仅供大家学习学习
学习完毕请自觉删除 谢谢
第2章 MATLAB矩阵及其运算
2.1 变量和数据操作 2.2 MATLAB矩阵 2.3 MATLAB运算 2.4 矩阵分析 2.5 矩阵的超越函数 2.6 字符串 2.7 结构数据和单元数据 2.8 稀疏矩阵
前面已讲。
2.2 MATLAB矩阵
1.直接输入法
直接输入需遵循以下基本规则: •整个矩阵应以“ [ ]”为首尾,即整个输入矩阵必须包含在 方括号中; •矩 阵 中 , 行 与 行 之 间 必 须 用 分 号 “ ; ” 或 Enter 键 ( 按 Enter键)分隔; •每行中的元素用逗号“ ,”或空格分隔; •矩阵中的元素可以是数字或表达式,但表达式中不可包含 未知的变量,MATLAB用表达式的值为该位置的矩阵元素赋 值。 •当 矩 阵 中 没 有 任 何 元 素 时 , 该 矩 阵 被 称 作 “ 空 阵 ” (Empty Matrix)。
例:x=5*(6-1/0.5); 5*(6-1/0.5)+3;
MATLAB的基本算术运算符有:+(加)、-(减)、*(乘)、 /(右除)、\(左除)、^(乘方),等等。 注: 运算是在矩阵意义下进行的,单个数据的算术运算只 是一种特例。
Matlab矩阵、数组和符号运算PPT课件
2021/6/7
5
第3章 矩阵、数组和符号运算
➢这种方法输入符号矩阵与字符串矩阵的输入相似。但要 保证在同一列中各元素字符串有同样的长度,在较短的字 符串前后用空格符填充; ➢这种方法要求符号矩阵每一行的两端都有方括号,而字 符串矩阵仅在首尾有方括号。
>> B=['[4+x x^2 x ]';'[x^3 5*x-3 x*a]']
计算速度最快,占用计算机内存最少的算法,与 C、
FORTRAN 语言中的浮点运算算法完全相同。在机器内
的表达和计算都是一个被“ 截断”的8 位浮点近似值。
➢针对精确运算的符号算法
计算时间最长,内存占用最多,精度也最高。
➢任意精度的算法
运算时间、内存占用和计算精度均介于以上两种运算之间。
采用函数 digits 来控制十进制结果的有效位数。digits 的
第3章 矩阵、数组和符号运算
二、符号及运算
掌握内容:
(1)了解 MATLAB 6.0 的符号变量,掌握 MATLAB 符
号表达式、符号矩阵的两种创建方法。
(2)掌握 MATLAB 符号数学函数的创建。
(3)掌握符号矩阵的基本运算及MATLAB 关于不同精度
的控制方法。
(4)掌握符号微积分内容,包括求函数的极限、对符号表
同类项合并
>> syms x y >> collect(x^2*y+y*x-x^2-2*x) ans = (y-1)*x^2+(y-2)*x
分式通分
>> syms x y >> [n,d]=numden(x/y+y/x) n= x^2+y^2 d= y*x
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
-
return17
(1) 矩阵元素的引用
>> a=[1:3;4:6] a=
123 456
a(1,2) a(3)
注: MATLAB中,矩阵元素按列存储!
next
>> a = [1:3;4:6] a=
123 456 >> [i,j] = ind2sub(size(a),3) i= 1 j= 2 >> x = sub2ind(size(a),1,2) x= 3
a= 123 456
return
(2) 利起用始值冒号表达式步建长立向量
>> a=[1:2:10] a=
13579
>> a=[1:5] a=
12345
>> b=[1:2:10;2:2:10] b=
13579 2 4 6 8 10
终止值
return
(3) 通过矩阵拼接建立更大的矩阵
>> a1=[1 2;3 4] a1 =
(操作演示)
-
ቤተ መጻሕፍቲ ባይዱ
return 9
章 MATLAB矩阵及其运算
MATLAB程序设计
❖ MATLAB常用数学函数 (详见P17-19)
实例1: 求余 rem(9,-5) = 4 rem(-9,-5) = -4 rem(-9,5) = -4
mod(9,-5) = -1 mod(-9,-5) = -4 mod(-9,5) = -1
❖ 预定义变量
MATLAB程序设计
表2-1 常用的预定义变量 (P15)
预定义变量
含义
ans
默认赋值变量
eps
机器临阈值
pi
π
i,j
虚数单位
inf,Inf
无穷大,如1/0的结果
nan, NaN 非数,如0/0的结果
预定义变量
含义
nargin
函数输入参数个数
nargout
函数输出参数个数
realmax
最大正实数
realmin
最小正实数
lasterr
存放最新的错误信息
lastwarn
存放最新的警告信息
(使用注意事项见教材P15) -
return 8
章 MATLAB矩阵及其运算
❖ 内存变量的管理
MATLAB程序设计
(1) 通过workspace窗口查看、修改、导出、导入 (2) 常用命令: clear, who, whos, save, load
12 34 >> a = [a1,a1;a1,a1] a= 1212 3434 1212 3434
return
章 MATLAB矩阵及其运算
❖ 矩阵的拆分
(1) 矩阵元素的引用 (2) 利用冒号表达式获得子矩阵 (3) 利用空矩阵删除矩阵的元素 (4) 改变矩阵形状
MATLAB程序设计
example example example example
-
2
章 MATLAB矩阵及其运算
MATLAB程序设计
1. 变量和数据操作
next part
❖ 变量与赋值
go
❖ 预定义变量
go
❖ 内存变量的管理
go
❖ MATLAB常用数学函数
go
❖ 数据的输出格式
go
-
3
章 MATLAB矩阵及其运算
❖ 变量与赋值
(1) 实例
view
(2) MATLAB中的变量
类型。系统根据其值和操作自动确定。 (c) 系统提供的标准函数名及命令名必须使用小写字母!
-
return 6
章 MATLAB矩阵及其运算
(3) 赋值的两种格式
MATLAB程序设计
① 变量 = 表达式 ② 表达式 (此时,系统使用预定义变量ans保存中间结果)
-
return 7
章 MATLAB矩阵及其运算
MATLAB程序设计
example example example
-
return13
(1) 在命令窗口直接输入建立
写法1:
>> a = [1, 2, 3; 4, 5, 6] a=
123 456
写法2:
>> a = [1 2 3; 4 5 6] a=
123 456
写法3:
>> a=[1,2,3;... 4,5,6]
-
return 5
章 MATLAB矩阵及其运算
(2) MATLAB中的变量
MATLAB程序设计
① MABLAB中标识符(变量名、函数名)的命名规则:
(a) 字母、数字、下划线组成,以字母开头 (b) 区分大小写
② 几点说明:
(a) 变量包括: 用户自定义变量和系统预定义变量 (b) MATLAB中变量直接使用。不需要预先说明,也不需要指定
-
(操作演示)
return11
章 MATLAB矩阵及其运算
MATLAB程序设计
2. MATLAB矩阵
next part
❖ 矩阵的建立 go
❖ 矩阵的拆分 go
❖ 特殊矩阵
go
-
12
章 MATLAB矩阵及其运算
❖ 矩阵的建立
(1) 在命令窗口直接输入建立 (2) 利用冒号表达式建立向量 (3) 通过矩阵拼接建立更大的矩阵
❖ 数据的输出格式
MATLAB程序设计
(1) 默认情况下,MATLAB用十进制数表示一个常数。具体可采用 日常记数法和科学记数法两种表示方法。
(2) 在一般情况下,MATLAB内部每一个数据元素都是用双精度数 来表示和存储的。
(3) 可以用format命令设置数据输出格式。 format 格式符 (格式符详见教材P19)
章 MATLAB矩阵及其运算
MATLAB程序设计
本章学习内容
❖ 变量和数据操作 ❖ 矩阵的建立、拆分及特殊矩阵 ❖ 算术运算、关系运算、逻辑运算 ❖ 矩阵分析 ❖ 字符串 ❖ 结构数据和单元数据 ❖ 稀疏矩阵
-
1
章 MATLAB矩阵及其运算
MATLAB程序设计
本章学习目标
❖ 掌握变量的使用和管理方法,了解数据类型 ❖ 掌握矩阵的建立和拆分,了解常用特殊矩阵 ❖ 掌握算术运算、关系运算、逻辑运算 ❖ 掌握常用的矩阵分析操作 ❖ 掌握matlab中字符串的使用方法 ❖ 了解结构数据和单元数据 ❖ 了解稀疏矩阵及用法
view
(3) 赋值的两种格式
view
MATLAB程序设计
-
return 4
章 MATLAB矩阵及其运算
(1) 实例
例2-1 表达式求值。(P15)
MATLAB程序设计
cos| xy|sin78
x12i,y317
x| y|
x = 1+2i; y = 3-sqrt(17); z = (cos(abs(x+y))-sin(78*pi/180))/(x+abs(y))
实例2: 取整 fix(-2.65) = -2 floor(-2.65) = -3 ceil(-2.65) = -2 round(-2.65) = -3
fix(2.45) = 2 floor(2.45) = 2 ceil(2.45) = 3 ro-und(2.45) = 2
return10
章 MATLAB矩阵及其运算