assimble small victors into bigger one using for loop

what if I have vector a1= [1; -1] and a2= [ 1 ;-1 ] and so on ... the big matrix should be like F= [ 1; 0; 1] if the size was(2) how can I do that in a for loop ?

5 commentaires

sorry I meant F = [ 1;0;-1]
What is the rule? Is it like
A1 followed by zeros, plus
0 followed by A2 followed by zeros, plus
0 0 followed by A3 followed by zeros
And so on, with one more leading 0 for each variable?
If so are they all the same length?
Are the variables numbered consecutively and are there too many to write out by hand?
Bruno Luong
Bruno Luong le 12 Oct 2018
Modifié(e) : Bruno Luong le 12 Oct 2018
You should reply to Torsen and John on another thread, and probably better learn your lesson and FEM or learn to express clearly when ask people for help.
Stephen23
Stephen23 le 12 Oct 2018
Modifié(e) : Stephen23 le 12 Oct 2018
"what if I have vector a1 ... and a2 ... and so on ... "
then your code should be redesigned:
yeas if I have a vectors of the same length and I want to assemble them in bigger one

Connectez-vous pour commenter.

Réponses (2)

a1= [1; -1];
a2= [1 ;-1];
a = {a1 a2};
F = zeros(length(a)+1,1);
for i=1:2
F(i+[0,1]) = F(i+[0,1]) + a{i};
end
Lacking any specific and complete rules other than giving a1, a2, to use a for loop, and to give the desired F, this works:
a1 = [1; -1]
a2 = [1 ; -1]
for k = 1 : 3
F(k) = 2 - k;
end

Catégories

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by