虽然有自带的函数,但是那个函数会进行行变换,所以我又自己写了一个
LUDecomp[m_]:=Block[{lu,n},
n=Dimensions[m][[1]];
lu=ConstantArray[0,{n,n}];
For[r=1,r<=n,r++,
For[i=r,i<=n,i++,lu[[r,i]]=m[[r,i]]-Sum[lu[[r,k]]*lu[[k,i]],{k,1,r-1}]];
For[i=r+1,i<=n,i++,lu[[i,r]]=(m[[i,r]]-Sum[lu[[i,k]]*lu[[k,r]],{k,1,r-1}])/lu[[r,r]]];
];
lu
]LUDecomp[m_]