2.3 矩阵的其他运算

矩阵的逻辑运算

逻辑变量

非0表示逻辑1

逻辑运算

(相应元素间的运算)

与运算 A & B

或运算 A | B

非运算 B= ~A

异或运算 xor(A,B)

若相应的两个数一个为0, j非0,则结果为0,否则为1.

矩阵的比较运算

各种允许的比较关系

>, >=, <, <=,==,~=, find(), all(), any()

find() 函数可以查询出满足某关系的数组下标.

该函数相当于先将A矩阵按列构成列向量,然后再判断满足关系,返回其下标。

还可以用下面的格式同时返回行和列坐标

[i, j]=find(A>=5)

all()和any()函数也是很实用的查询函数。

判断每一列是否(全部/存在)元素满足关系,是的话为1.

解析结果的化简与变换

s1=simple(s) %从各种方法中自动选择最简格式

[s,how]= simple(s)%化简并返回实际采用的化简方法

其他专门的化简函数,如collect()函数可以合并同类项, expand()可以展开多项式, factor()可以进行因式分解, numden() 可以提取多项式的分子和分母, sincos()可以进行三角函数的化简等。

变量替换

在这里插入图片描述
f1=subs(f, 1, -1) %单个变量替换f1=subs(f,{x1,x2,…,xn},{xr1,x2……,z})%多个变量同时替换

转换成LaTex表示A=latex(f),复制到支持LaTeX的排版软件。

基本数据变换

在这里插入图片描述
函数名调用格式函数说明floor() n=f1or(x)「将a中元素按-方向取整,即取不足整数,得出n,数学上记作ceil n=cei1(z)将中元素按+方向取整,即取过剩整数,得出n round () n= round(a)「将a中元素按最近的整数取整,亦即四含五入,得出n fixo n=fix() 将c中元素按离0近的方向取整,得出n rat()「[n,d=xat(x)「将ェ中元素变换成最简有理数,n和d分别为分子和分母矩阵remo B=rea(A,C)A中元素对C中元素求模得出的余数gcd() 太=gcd(,m)「求取两个整数n和m的最大公约数1cm() k=1cm(n,m)「求取两个整数n和m的最小公倍数factor O factor (n) 对n进行质因数分解isprime()「1=1 isprime((u)「判定向量ロ中的各个整数值是否为质数,若是则U1向量相应的值置1,否则为0

全排列

P = perms(v) 返回的矩阵包含了向量 v 中元素按字典顺序反序的所有排列。P 的每一行包含 v 中 n 个元素的一个不同排列。矩阵 P 具有与 v 相同的数据类型,包含 n! 行和 n 列。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab 是一种用于科学计算、数据分析和可视化的强大软件工具。在 Matlab 中,矩阵运算是非常常见的操作。下面将介绍 Matlab 矩阵运算的实验原理、方法和机器实现。 1. 实验原理 矩阵是一种常用的数学工具,它可以用于表示一组数值数据。在 Matlab 中,矩阵运算是基于线性代数的运算。主要包括矩阵的加减乘除、转置、逆矩阵、行列式等操作。这些操作在 Matlab 中都有对应的函数实现。 2. 实验方法 2.1 矩阵的定义 在 Matlab 中,可以使用以下命令定义一个矩阵: ```matlab A = [1 2 3; 4 5 6; 7 8 9]; ``` 这个命令将定义一个 3 行 3 列的矩阵 A,每个元素的值分别为 1、2、3、4、5、6、7、8 和 9。另外,还可以使用以下命令定义一个全零矩阵: ```matlab B = zeros(3, 3); ``` 这个命令将定义一个 3 行 3 列的全零矩阵 B。 2.2 矩阵的加减乘除 在 Matlab 中,可以使用以下命令对两个矩阵进行加减乘除操作: ```matlab C = A + B; D = A - B; E = A * B; F = A / B; ``` 这些命令将分别定义新的矩阵 C、D、E 和 F,它们分别为矩阵 A 和矩阵 B 相加、相减、相乘、相除的结果。 2.3 矩阵的转置和逆矩阵 在 Matlab 中,可以使用以下命令对矩阵进行转置和求逆矩阵操作: ```matlab G = A'; H = inv(A); ``` 这些命令将分别定义新的矩阵 G 和 H,它们分别为矩阵 A 的转置和逆矩阵。 2.4 线性方程组的求解 在 Matlab 中,可以使用以下命令求解线性方程组: ```matlab syms x y z; eqn1 = 2*x + 3*y + z == 1; eqn2 = x - y + 2*z == 2; eqn3 = 3*x + 4*y - z == 3; [A,B] = equationsToMatrix([eqn1, eqn2, eqn3], [x, y, z]); X = linsolve(A,B); ``` 这个命令将求解以下线性方程组: ``` 2x + 3y + z = 1 x - y + 2z = 2 3x + 4y - z = 3 ``` 其中,X 为方程组的解。 3. 机器实现 在 Matlab 中,矩阵运算是通过计算机实现的。计算机可以将矩阵转换为一个二维数组,并对其进行运算。在 Matlab 中,矩阵运算速度非常快,可以处理大规模的数据。 4. 实验总结 本次实验介绍了 Matlab 矩阵运算的实验原理、方法和机器实现。矩阵运算在 Matlab 中非常重要,在实际工作和研究中也会经常使用到。掌握了这些基本操作,可以更好地使用 Matlab 进行科学计算和数据分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值