System of equations with sparse linear equations

1 次查看(过去 30 天)
Hello,
I have a sparse matrix A of size 65000x65000 only having 2's on the diagonal and 1's above and below the diagonal and the rest are zeros, and a system of equations in the form of X = A*B. The problem is that A is already a large matrix and MATLAB doesn't allow me to create such a vector to solve the equation.
Any ideas?

回答(1 个)

Torsten
Torsten 2018-10-30
B is the unknown vector, A and X are given ?
Note that B can be determined by backward substitution:
n = 65000;
B = zeros(n,1);
B(n) = 0.5*X(n);
for i = n-1:-1:1
B(i) = (X(i)-B(i+1))*0.5
end
No need to form A explicitly.
Best wishes
Torsten.
  3 个评论
Torsten
Torsten 2018-10-30
If I'm not mistaken, you were first talking about a diagonal of 2's and 1's above the diagonal. Now I read that there are 1's also below the diagonal. For this case, the code from above does not work.
Try
Best wishes
Torsten.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Operating on Diagonal Matrices 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by