当前位置:文档之家› DSP第二章数值运算

DSP第二章数值运算

关系运算的结果类型为逻辑量 (0, 1)
>> x=2; >> x>3 ans =
0 >> x<=2 ans =
1
11
MATLAB语言
2.1.3 逻辑运算
逻辑运算符用于将关系表达式或逻辑量连接起来,构成 较复杂的逻辑表达式。逻辑表达式的值也是逻辑量。
运算 符号 运算 符号

&

|

~
异或
xor
例:对某一矩阵的逐个元素进行逻辑运算(yex21.m)
6.3351e+005
22
MATLAB语言
应用举例
设三个复数a=3+4i,b=1+2i,
c
i
2e 6
,计算x=ab/c
>> a=3+4i; >> b=1+2i; >> c=2*exp(i*pi/6); >> x=a*b/c x=
0.3349 + 5.5801i
23
MATLAB语言
2.4.1 矩阵的构造
※当一个方阵有复数特征值或负实特征值时,非整数幂是复数阵。
31
MATLAB语言
对于p的其它值,计算涉及特征值和特征向量。 例:>> b=a^0.5
b=
0.4498 + 0.7623i 0.5526 + 0.2068i 0.6555 -0.3487i 1.0185 + 0.0842i 1.2515 + 0.0228i 1.4844 - 0.0385i 1.5873 - 0.5940i 1.9503 - 0.1611i 2.3134 + 0.2717i
3.1416
3.1416e+000
3.14159265358979
3.141592653589793e+0 00
355/113
400921fb54442d18
3.14
9
MATLAB语言
2.1.2 关系运算
运算 符号 运算 符号
大于
>
小于
<
等于
==
不等于
~=
大于等于 >=
小于等于
<=
10
MATLAB语言
28
MATLAB语言
2.4.3 矩阵的算术运算

✓矩阵的加减运算:+(加)、-(减)
运算规则:
相加、减的两矩阵必须有相同的行和列;两矩阵对应 元素相加减。
允许参与运算的两矩阵之一是标量。标量与矩阵的所 有元素分别进行加减操作。
✓矩阵乘法:*(乘)
运算规则:
A矩阵的列数必须等于B矩阵的行数。
标量可与任何矩阵相乘。
m=
2
6
MATLAB语言
运算
加 乘 左除 右除 幂次方
基本算术运算符
符号 运算
+

*
数组相乘
\
数组左除
/
数组右除
^ 数组幂次方
符号
.* .\ ./ .^
7
MATLAB语言
例1-1 求解算术表达式的值
[12 2 (7 4)] 33
>> (12+2*(7-4))/3^3 ans =
0.6667
32
MATLAB语言
矩阵转置
运算规则: ❖ 如果矩阵A是实数阵,则矩阵A的转置是将第i行第j列的
元素与第j行第i列的元素互换; ❖ 如果矩阵A是复数阵,则A转置后的元素由A对应元素的
共轭复数构成。
X=[1 2 3;5 6 0;9 0 11]; X' Y=[2 3 0 9;5 6 0 1]; Y' Z=[3+7i 9-2i;5+2i 1];Z'
33
MATLAB语言
2.4.4 矩阵的关系运算
❖ 关系运算符:
<(小于)、
<=(小于或等于)、>(大于)
>=(大于或等于)、==(等于)、
~=(不等于)
❖ 关系运算符的运算法则:
两个矩阵的维数一致或其中一个矩阵为标量。
将两个矩阵的对应元素进行比较或将标量与矩阵中的 各个元 素进行比较
❖ 关系运算结果 若比较关系的结果为真,则置为1,否则置0。
>> A=[0 1 2];any(A) >> B=[1 0 3;2 0 1];any(B) >> C=[1 2 3;2 0 1];all(C) >> isempty(A) >> isequal(A,B) >> isreal(B) >> find(C<2)
37
MATLAB语言
2.4.6 矩阵函数
函数
第二章 matlab数值运算
2.1基本运算功能 2.2基本数据类型 2.3数学函数 2.4 矩阵 2.5向量 2.6数组 2.7多项式
2
MATLAB语言
2.1 基本运算功能
MATLAB的基本运算可分为三类:
算术运算 关系运算 逻辑运算
3
MATLAB语言
2.1.1 算术运算
4
MATLAB语言
使用变量来进行更复杂的问题求解
通过直接输入矩阵的元素构造矩阵: 用中括号[ ]把所有矩阵元素括起来 同一行的不同数据元素之间用空格或逗号间隔 用分号(;)指定一行结束 可分成几行进行输入,用回车符代替分号 数据元素可以是表达式,系统将自动计算结果
24
MATLAB语言
例:输入矩阵A、B的值
A=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16] B=[1,sqrt(25),9,13;2,6,10,7*2 3+sin(pi),7,11,15;4,abs(-8),12,16]
det diag eig inv
lu Poly Rank Svd
功能
计算矩阵所对应的行列式的值 抽取矩阵对角线元素 求特征值和特征向量 求矩阵的逆阵 三角分解 求特征多项式 求矩阵的秩 奇异值分解
38
MATLAB语言
求矩阵的行列式的值
>> xy=1; yx=2;
%对变量赋值
>> xy
%查看变量xy的当前数值
xy =
1
>> whos
Name Size
Bytes Class
xy 1x1
8 double array
yx 1x1
8 double array
Grand total is 2 elements using 16 bytes
>> clear xy yx
>> X(:)
%得到一个长列矢量,该矢量的元素按
X的列排列
27
MATLAB语言
例: 修改矩阵A中元素的数值
>>A=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16] >>A(1,1)=0 >>A(2,2)=A(1,2)+A(2,1) >>A(4,4)=cos(0)
最大的正浮点数,2^(1024)-1
最小的正浮点数,2^(-1022)
不定量,如0/0或inf/inf
虚数单位
函数输入参数个数
函数输出参数个数
存放最新的错误信息
存放最新的警告信息
18
MATLAB语言
例 变量的使用
>>clear
%删除工作区中所有定义过的变量
>>whos
%查看当前工作区内变量信息,无显示表示没 有定义的变量
%删除变量xy及yx
>> whos
>> xy
%这时变量xy已经不存在了
19
??? Undefined function or variable 'xy'.
MATLAB语言
2.3 数学函数
类型 三角函数
指数函数
函数
含义
sin(x) 正弦值 asin(x) 反正弦值 cos(x) 余弦值 acos(x) 反余弦值 tan(x) 正切 exp(x) 指数运算 log(x) 自然对数 sqrt(x) 求平方根
34
MATLAB语言
2.4.5 矩阵的逻辑运算
必须是两个同维矩阵或其中一个矩阵为标量才能进行 MATLAB提供了一些逻辑函数
逻辑函 数
all any isempty isequal isreal find
功能
如果所有的元素都是非零值,返回1;否则,返回0。 如果有一个元素为非零值,那么返回1;否则,返回0 判断是否空矩阵 判断两矩阵是否相同 判断是否是实矩阵 返回一个由非零元素的下标组成的向量
25
MATLAB语言
2.4.2 矩阵下标与子矩阵提取
A(m, n) A(:, n) A(m, :) A(m1:m2, n1:n2)
A(m:end, n) A(:)
提取第m行,第n列元素 提取第n列元素 提取第m行元素 提取第m1行到第m2行和第n1列到第n2列 的所有元素 提取从第m行到最末行和第n列的子块 得到一个长列矢量,该矢量的元素按矩 阵的列进行排列
8
MATLAB语言
format命令
MATLAB命令 含 义
format short
短格式
format short e
短格式科学格式
format long
长格式
format long e
长格式科学格式
format rat format hex format bank
相关主题