yxk*_*yxk 9 math matlab linear-algebra
如何在MATLAB中解决x的(非平凡)解Ax = 0 ?
A = matrix
x = matrix trying to solve for
Run Code Online (Sandbox Code Playgroud)
我尝试过解决('A*x = 0','x'),但我只得到0才能得到答案.
Jac*_*cob 13
请注意,null(A)对以下内容执行相同的操作(对于秩不足的矩阵),但这是使用svd(A)MATLAB中的函数(正如我在评论中提到的null(A)那样).
[U S V] = svd(A);
x = V(:,end)
Run Code Online (Sandbox Code Playgroud)
有关此内容的更多信息,请参阅此处的相关链接(由于公式,无法将其发布到此处).
如果您想要更直观地了解奇异和特征值分解,请eigshow在MATLAB中查看.
您可以使用N = null(A)获取矩阵N.任何列N(或实际上,列的任何线性组合N)都将满足Ax = 0.这描述了所有可能的x- 你刚刚找到了零空间的正交基础A.
注意:你只能找到这样一个xif A有非平凡的nullspace.如果发生这种情况rank(A) < #cols of A.