MATLAB: How to sum (or recall) matrices from previous cycles

cycle matrix sum

hi everyone,
I've got a "for" cycle of i=1:100 iterations, and in every iteration MATLAB calculates a matrix called "A".
Now for every iteration I need to sum the current matrix "A" with the previous same five matrices.
If "A" was a scalar I could do:
a(i)=a(i-1)+a(i-2)+a(i-3)+a(i-4)
but I don't now how to handle this with a matrix…could you help me?
thanks a lot!! fab

Best Answer

You can store the matrices using a cell array:
for i = 1:100
< compute A >
Astore{i} = A;
if i >= 5
arraySum = A{i-1} + A{i-2} + A{i-3} + A{i-4};
< use arraySum >
end
end
You can also do this with a multidimensional array, and if the matrices are large, you can avoid storing all 100 of them by only keeping the last 5. Please say if you want more details of either of these options.