How to store a matrix, A, in variable X, where X is also carrying a counter "i"

2 visualizzazioni (ultimi 30 giorni)
I have a matrix A, which I want to store in a varaible X.
Now I can do,
X=A;
But the varaible is X is having a counter i, beacuse the value of X variable in one iteration will be used in the next iteration and so on.
So, it put a counter like this;
X(i)=A;
But, in the above line, the indices error - Unable to perform assignment because the indices on the left side are not compatible with the size of the right side - is shown.
What should be the correct syntax, plaease tell me.

Risposta accettata

Ulli Srinivasu
Ulli Srinivasu il 16 Set 2020
Hi Neeraj,
simply create a structure.
X = struct();
X(i).A = A;
  3 Commenti

Accedi per commentare.

Più risposte (1)

Sindar
Sindar il 16 Set 2020
Simple way: add a third dimension, "pages":
X(:,:,i) = A;
But, if you only need the last iteration, it's better to store just the current and last iteration. Something like:
n=10;
m=4;
X_new = rand(n,m);
for ind=1:10
X_old = X_new;
X_new = X_old.^2;
end
  4 Commenti
Walter Roberson
Walter Roberson il 16 Set 2020
What you are seeing displayed is not two matrices, it is a way to represent a multidimensional matrix of numeric values on the command window.
I would suggest that you use SIndar's X_old strategy.
Neeraj Kumar
Neeraj Kumar il 16 Set 2020
Modificato: Neeraj Kumar il 16 Set 2020
Ok, i will try this X_old strategy. Thanks Walter! Thanks Sindar!

Accedi per commentare.

Prodotti


Release

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by