- 积分
- 15
- 注册时间
- 2013-8-29
- 仿真币
-
- 最后登录
- 1970-1-1
|
发表于 2013-9-5 21:36:02
|
显示全部楼层
来自 加拿大
x=inv(A)*b 只适用于 A 为可逆方阵。但是对于 欠定 (方程个数< 未知数个数, 即A的行数 > 列数) 和超定 (方程个数 > 未知数个数, 即A的行数 < 列数)方程组,就不能使用 inv 了,但是可以用 x = A\b 求解最小二乘解。这个问题实际上 matlab help 里有详细解释。
help \
>> help \
\ Backslash or left matrix divide.
A\B is the matrix division of A into B, which is roughly the
same as INV(A)*B , except it is computed in a different way.
If A is an N-by-N matrix and B is a column vector with N
components, or a matrix with several such columns, then
X = A\B is the solution to the equation A*X = B. A warning
message is printed if A is badly scaled or nearly singular.
A\EYE(SIZE(A)) produces the inverse of A.
If A is an M-by-N matrix with M < or > N and B is a column
vector with M components, or a matrix with several such columns,
then X = A\B is the solution in the least squares sense to the
under- or overdetermined system of equations A*X = B. The
effective rank, K, of A is determined from the QR decomposition
with pivoting. A solution X is computed which has at most K
nonzero components per column. If K < N this will usually not
be the same solution as PINV(A)*B. A\EYE(SIZE(A)) produces a
generalized inverse of A. |
评分
-
1
查看全部评分
-
|