MATLAB: Index exceeds matrix dimensions

for loopsyntax

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.

Best Answer

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.