필터 지우기
필터 지우기

Matrix splitting to overcome "array exceeds maximum array size"?

조회 수: 2 (최근 30일)
mfas
mfas 2015년 7월 10일
댓글: mfas 2015년 7월 10일
I currently have:
N=[x1,y1,z1;x2,y2,z2;...;xn,yn,zn];
K=[kx1,ky1,kz1;kx2,ky2,kz2;...;kxn,kyn,kzn];
S=N*K';
S=[K(:,1),K(:,2),S'];
However due to the size of N and K being 78596x3 and 361201x3 respectively the error message "array exceeds maximum array size" appears when calculating S.
Therefore I want to create a loop to calculate S for sections of K to prevent this. What is the best way to do this.
  댓글 수: 2
mfas
mfas 2015년 7월 10일
Sorry, small typo, should be the transpose of S (S').

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

채택된 답변

Guillaume
Guillaume 2015년 7월 10일
편집: Guillaume 2015년 7월 10일
Something like this:
subklength = 100; %whatever you want
transK = K';
for kstart = 1 : subklength : size(k, 1)
S = N * transK(:, kstart : min(end, kstart+subklength-1))'; %S for section of K
%do something with S
end

추가 답변 (0개)

카테고리

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

Community Treasure Hunt

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

Start Hunting!

Translated by