Index exceeds matrix dimensions

1 view (last 30 days)
I keep getting an error every TIME i RAN THIS LOOP: %loop
M(:,:,:,1)=M1;
M(:,:,:,2)=M2;
M(:,:,:,3)=M3;
YC(:,:,1)=YC1;
YC(:,:,2)=YC2;
YC(:,:,3)=YCC3;
[M1]=ProbabiltyCounty1( X,Lam ,YC1)
[M2]=ProbabiltyCounty1( X,Lam ,YC2)
[M3]=ProbabiltyCounty1( X,Lam ,YCC3)
for i= 1:3;
for j=1:3;
YC= YC(:,:,i);
MatrixM= M(:,:,:,j);
end
end
FinalOutput= [MatrixM]
AYesIdiditNow2=[FinalOutput];
Index exceeds matrix dimensions.

Accepted Answer

James Tursa
James Tursa on 1 Sep 2015
Edited: James Tursa on 1 Sep 2015
This line:
YC= YC(:,:,i);
replaces the original multi-page YC with only one page of YC the first time through the loop. So the next time through the loop when i>1 the YC(:,:,i) is referencing pages that are no longer there.
  2 Comments
Amine Ben Ayara
Amine Ben Ayara on 1 Sep 2015
Hey James, Thanks for your answer. I am failry new to Matlab and my struggles are real! What do you mean by multi-page? Thanks
James Tursa
James Tursa on 1 Sep 2015
Edited: James Tursa on 1 Sep 2015
In "array terminology", a 2-dimensional (2D) array is referred to as a "matrix". An array having more than two dimensions is often referred to as a multi-dimensional array, or nD array. In this latter case, the first two dimensions of such an array are often referred to as the "pages" of the array (i.e., the nD array is made up of multiple 2D "pages"). E.g., a 3x2x5 dimensional array can be thought of as 5 pages of 3x2 matrices.

Sign in to comment.

More Answers (0)

Categories

Find more on Multidimensional Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!