2

我在 Matlab 43916x43916 中有一个稀疏矩阵,由以下等式计算:

B=(speye(nV,nV)-alpha*NeMatrix+beta*NeMatrix*NeMatrix);

nV一个int,alpha一个int,NeMatrix一个稀疏矩阵和beta一个int。

我不能做 inv(B) 因为它增加了 RAM 的使用直到它崩溃。我已经尝试过LU,但没有成功。

我该如何计算这个逆矩阵?

4

1 回答 1

2

The inverse will be a dense matrix. Thus you should check, whether you can handle a matrix of this size. Try, e.g., to set up ones(nV,nV) ... If you have enough storage, you may consider to compute the inverse column wise. The i-th column would be B\ei, where ei is the i-th unit vector.

HOWEVER, in numerical computations you hardly ever need the inverse of a matrix B. Most times B\v is enough, where v is a vector. So you better check, whether you really need the full inverse...

于 2013-04-25T18:02:23.543 回答