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?
0 个评论
回答(1 个)
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
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 Center 和 File Exchange 中查找有关 Operating on Diagonal Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!