make a column matrix with outputs of a for loop
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
fatima hd
il 20 Lug 2015
Risposto: David Schubert
il 20 Lug 2015
I have a for loop and I want the outputs of each iteration to sit in a column matrix. for example i have the code below:
for i=1:5
a=[1 2; i 3]
[P,Q]=eig(a);
end
for the first iteration Q(i=1)=[0.2679 0; 0 3.731], for second iteration I have Q(i=2)=[-0.2361 0; 0 4.2361] and so on. I want to construct a 10*1 column matrix in which all the outputs are after each other like this:
S=[0.2679 3.731 -0.2361 4.2361 ....]
but I really don't know how. it would be appreciated if u help me.
1 Commento
Risposta accettata
David Schubert
il 20 Lug 2015
Use diag(Q) to obtain only the eigenvalues on the diagonal of Q, and then concatenate:
mat = [];
for i=1:5
a=[1 2; i 3];
[P,Q]=eig(a);
mat = [mat; diag(Q)];
end
0 Commenti
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!