我在Matlab 43916x43916中有一个稀疏矩阵,由这个等式计算:
B=(speye(nV,nV)-alpha*NeMatrix+beta*NeMatrix*NeMatrix);
是nV
一个int,alpha
一个int,NeMatrix
一个稀疏矩阵和beta
一个int。
我不能做inv(B)因为它会增加RAM的使用直到它崩溃。我已经尝试过LU但没有成功。
如何选择计算此逆矩阵?
答案 0 :(得分:2)
逆将是密集矩阵。因此,您应该检查是否可以处理此大小的矩阵。尝试,例如,设置ones(nV,nV)
...
如果您有足够的存储空间,则可以考虑计算逆列。第i列为B\ei
,其中ei
为第i个单位向量。
但是,在数值计算中,你几乎不需要矩阵B
的逆。大多数时候B\v
就足够了,其中v
是一个向量。所以你最好检查一下,你是否真的需要完整的反...