如何将矩阵分解为行和列不等的矩阵和转置矩阵的乘积如题,比如,将N*N的矩阵A分解为A=U*U^{T},且U为N*r(r

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/01 16:08:32
如何将矩阵分解为行和列不等的矩阵和转置矩阵的乘积如题,比如,将N*N的矩阵A分解为A=U*U^{T},且U为N*r(r

如何将矩阵分解为行和列不等的矩阵和转置矩阵的乘积如题,比如,将N*N的矩阵A分解为A=U*U^{T},且U为N*r(r
如何将矩阵分解为行和列不等的矩阵和转置矩阵的乘积
如题,比如,将N*N的矩阵A分解为A=U*U^{T},且U为N*r(r

如何将矩阵分解为行和列不等的矩阵和转置矩阵的乘积如题,比如,将N*N的矩阵A分解为A=U*U^{T},且U为N*r(r
理论上讲,A是实对称半正定阵的时候可以分解成U*U^T的形式,注意半正定性是必须的
既然是半正定的,如果A的秩是r的话就可以通过合同变换得到A=C*D*C^T,其中D=diag{I_r,0}
那么取U是C的前r列就行了
如果用matlab,自己查一下ldl函数的用法,再加一步后处理就行了