필터 지우기
필터 지우기

High dimension matrix algebra

조회 수: 1 (최근 30일)
Pouya Jamali
Pouya Jamali 2014년 11월 16일
댓글: Matt J 2015년 2월 1일
Hi there,
I'm trying to solve a set of linear equations by using Matlab syntax '\'. This properly works for dimensions less than 100000-by-100000. But for higher orders it starts to produce an error regarding the lack of enough memory and for dimensions greater than one million it says maximum variable size is exceeded.
Please help me to see how can I tackle this problem. I have a 10000000-by-10000000 set of equations to solve.

채택된 답변

Jan
Jan 2014년 11월 16일
To store a 10000000-by-10000000 matrix you need 800TB Memory - assuming that it is full. As a rule of thumb the double size of free memory is recommended.
Do you see the problem?
  댓글 수: 4
Pouya Jamali
Pouya Jamali 2015년 2월 1일
But Matlab doesn't even allow me to make a Matrix of zeros of that size!
Matt J
Matt J 2015년 2월 1일
That's what the sparse() command is for...so you don't have to allocate all the zeros occurring in your matrix.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Matt J
Matt J 2014년 11월 16일
You may have to use pcg() or some other iterative method.
  댓글 수: 2
Pouya Jamali
Pouya Jamali 2014년 11월 16일
I can't workaround your suggestion because Matlab even doesn't allow me to use zeros for pre-allocating this space to the coefficient matrix.
Matt J
Matt J 2014년 11월 16일
편집: Matt J 2014년 11월 16일
This properly works for dimensions less than 100000-by-100000.
I'm pretty amazed you were able to get this to work on non-sparse matrices of that size. You must have a tonne of RAM.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by