How to assign matrices to an array in a for loop

3 views (last 30 days)
I would like to create an array that holds matrices that are calculated in a for loop.
For example, I would like to calculate matrix A and have it be assigned to matrices(1) and then calculate matrix B and have it assigned to matrices(B) and so on so that I can calculate A*B*...*n later.
I have tried:
for i = 1:5
matrices(i) = [i*1 i*2 i*3; i*4 i*5 i*6; i*7 i*8 i*9];
end
but I get this error:
Unable to perform assignment because the indices on the left side are not compatible with the size of the right side.
Is there a way to do what I am wanting to do?

Accepted Answer

Rik
Rik on 26 Sep 2022
You can use a cell array:
for i = 1:5
matrices{i} = [i*1 i*2 i*3; i*4 i*5 i*6; i*7 i*8 i*9];
end

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!