How to fill a 3D Array using a for loop

Hi, I've been having a problem filling a matrix. I need to fill it using a "for" loop, but the equations for each element is different. I hope the example can explain better what I pretend to achieve. Hope someone can help. Thanks.
for i=1:5
k(i,1,1)=2*x(i);
k(i,1,2)=9*y(i);
k(i,2,1)=-2*x(i);
k(i,2,2)=-2*y(i);
end

 Réponse acceptée

KSSV
KSSV le 18 Nov 2016
x = rand(5,1) ;
y = rand(5,1) ;
k = zeros(2,2,2) ;
for i=1:5
k(i,1,1)=2*x(i);
k(i,1,2)=9*y(i);
k(i,2,1)=-2*x(i);
k(i,2,2)=-2*y(i);
end
What problem you face? Code is fine.

1 commentaire

Pedro Pires
Pedro Pires le 18 Nov 2016
The weird thing is that without changing the code, it's now working fine. I can't remember exactly what the error was but I wasn't being able to give a value to the array members. Maybe some values or equations were preventing the script from working correctly. I sincerely can't see anything that I changed that could possibly make/solve the problem, but I'm also a beginners with Matlab. Thank you for the reply and help.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by