Save a loop iteration into a ZEROS array
21 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I am trying to run a cycle inside a cycle, the inner cicle gets all the data for the rist row while the outer cycle changes to the next row and it keeps going until the 100x100 array is filled with the info I got from running each loop. But all I get is a 100x100 array of zeros. Can anyone help me out?
Code:
A = 10;
B = 5;
i = sqrt(-1);
Array = zeros(100,100);
a = 1;
b = 1;
for y = 0:0.1:10
for x = 0.1:0.1:10
fXy = A.*exp(-(x.^2 + y.^2)/(B^2)).*exp(i.*atan(y/x));
Array(b,a) = fXy;
a = a + 1;
end
b = b + 1;
end
0 commentaires
Réponses (1)
KSSV
le 19 Sep 2021
Note that Array is not all zeros. It has complex numbers, so when you are printing you feel like they are zeros. Also you need not to use loop. You can proceed as below:
x = 0.1:0.1:10 ;
y = 0:0.10:10 ;
[x,y] = meshgrid(x,y) ;
Z = A.*exp(-(x.^2 + y.^2)/(B^2)).*exp(1i.*atan(y./x));
0 commentaires
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!