matlab矩阵点乘点除,点除与矩阵除法

matlab矩阵点乘点除,点除与矩阵除法点除与矩阵除法:在书写程序的时候,点乘和矩阵乘法写错的时候再进行程序调适的时候MATLAB会返回错误说明。但是对于点除容易出现问题,下面以一个简单的例子说明这个问题:比如我们要计算:A=[1,1];B=[2,1];C=A/B;上面的程序我们计算的是A与B的点除。但是由于疏忽而把点除“./”写为“/”这样结果是不同的,大家可以看看它们的结果:>>A/Bans=0.6000…

大家好,又见面了,我是你们的朋友全栈君。

点除与矩阵除法:

在书写程序的时候,点乘和矩阵乘法写错的时候再进行程序调适的

时候MATLAB会返回错误说明。

但是对于点除容易出现问题,下面以一个简单的例子说明这个问题:

比如我们要计算:

A = [1,1];

B = [2,1];

C = A/B;

上面的程序我们计算的是A与B的点除。但是由于疏忽而把点除“./”

写为“/”这样结果是不同的,大家可以看看它们的结果:

>> A/B

ans =

0.6000

>> A./B

ans =

0.5000    1.0000

它们的结果明显不同,而用“/”去代替“./”将在以后的计算中引

起误差,程序语法错误很难调适。我们只能从期望的结果来检查程

序。希望网友在书写向量或者矩阵的“点除”和“除法”运算的时

候注意这一点。

下面我们看一下“A/B”的结果是怎么计算的(这里提供一段MATLAB

文档):

/ Slash or matrix right division. B/A is roughly the same

as B*inv(A). More precisely, B/A = (A’/B’)’. See /.

/ Backslash or matrix left division. If A is a square matrix,

A/B 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 AX = B computed by

Gaussian elimination (see Algorithm for details). A warning

message prints if A is badly scaled or nearly singular.

If A is an m-by-n matrix with m ~= 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 AX = B. The effective rank,

k, of A, is determined from the QR decomposition with pivoting

(see “Algorithm” for details). A solution X is computed which has

at most k nonzero components per column. If k < n, this is usually

not the same solution as pinv(A)*B, which is the least squares

solution with the smallest norm, ||X||.

也就是说A/B和A*pinv(B)输出的结果是一样的,如:

>> A=[1,2,3];B=[1,2,1];A/B,A*pinv(B)

ans =

1.3333

ans =

1.3333

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/149233.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月16日 下午11:30
下一篇 2022年6月16日 下午11:30


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号