左除和右除
Matlab中,有两种除法,左除 \
和右除 /
。这两种的结果是不一样的
代数运算
>> [1/2, 1\2]
ans =
0.5000 2.0000
- 右除:左边是分子/右边是分母;左除则相反;
求解线性方程组:
AX=b; 则 X=A^(-1)*b
视 A^(-1)=1/A,则 X=b/A,即 X=A\b
也可以用:X=inv(A)*b
区分
根据Moler(Matlab的主要发明者)的建议:尽量使用左除,而不是inv函数;
根据相关资料,MATLAB会根据矩阵A的形式判断,如果A具有:稀疏和带状,三角(或者简单变换能转化为三角形式),对称,则使用对应的高效算法,例如带状求解器、向后和向前回代,楚列斯基分解等。如果不满足上述条件,再使用完整的高斯消元过程。
原文地址:https://www.cnblogs.com/rongyupan/p/12662505.html
时间: 2024-11-05 22:03:50