Efficient handeling of large matrix

2 views (last 30 days)
M.K.123
M.K.123 on 16 Sep 2015
Commented: Bibigul on 9 Apr 2017
Hello, I would like to efficiently handle a large matrix which consists of a block of matrices, which are the same along the diagonals. In order to save memory I would now, if there is an efficient way to handle this matrix. Saving as a sparse matrix does not help... Thanks a lot in advance
A =
1.0e-04 *
0.4059 0.0125 0 0 0 0 0 0
0.0125 0.4059 0 0 0 0 0 0
0.0845 0.0208 0.4059 0.0125 0 0 0 0
0.0208 0.0845 0.0125 0.4059 0 0 0 0
0.0425 0.0170 0.0845 0.0208 0.4059 0.0125 0 0
0.0170 0.0425 0.0208 0.0845 0.0125 0.4059 0 0
0.0267 0.0135 0.0425 0.0170 0.0845 0.0208 0.4059 0.0125
0.0135 0.0267 0.0170 0.0425 0.0208 0.0845 0.0125 0.4059
  2 Comments
Thorsten
Thorsten on 16 Sep 2015
Edited: Thorsten on 16 Sep 2015
What operations do you want to run on this matrix?
M.K.123
M.K.123 on 16 Sep 2015
I want to use it in an linear equation system and solve it using the backslash operator or something comparable.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 16 Sep 2015
How big is big? Like hundreds of megabytes or elements? Gigabytes? Have you looked at memmapfile()? I haven't used it but I know it's meant for dealing with gigantic arrays. For more info see this link or call your local friendly MATLAB tech support consultant.
  6 Comments
M.K.123
M.K.123 on 18 Sep 2015
Ok I changed the way the system is solved and now don't solve the whole system at once but line by line, which is considerably faster. But thank you anyway for your great help!!
Bibigul
Bibigul on 9 Apr 2017
@ M.K123, I am having the same problem , i am dealing with a matrix size of more than 35000x35000 . can you please help me how to solve this line by line?
thanks in advance.
kind Regards Bibigul

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!