Matlab中有几种方法可以计算“LU分解”。这里是一个: function [L,A]=LU_factor(A,n)
L=eye(n);
for k=1:n
if (A(k,k) == 0) Error('Pivoting is needed!'); end
L(k+1:n,k)=A(k+1:n,k)/A(k,k);
for j=k+1:n
A(j
我试图与主要基于LU decomposition with partial pivoting Matlab function [L,U,P] = lup(A)
n = length(A);
L = eye(n);
U = zeros(n);
P = eye(n);
for k=1:n-1
% find the entry in the left column with the lar
在下面的代码中,我遵循一个过程来创建一个随机正定矩阵P。 首先,我创建奇异值分解[U,S,V]的随机阵列的甲,我试图验证实际上U '* U == U * U'= I(其中I是单位矩阵),其从理论上已知。问题是,如果我自己检查矩阵的内容,我可以验证,但是Matlab产生的逻辑矩阵不能验证,因为零表示为-0.000或0.0000,所以只有符号匹配时结果为1。这是为什么? 但更大的问题出现在几行低于此,