how do i remove this error? Function definitions are not permitted in this context.
10 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
xyRange=[1,5]; %// Starting xy range of particles
numP=3; %// Number of particles generated each day
vx=0.6; vy=0.4; %// x and y velocity
X=[]; Y=[]; %// Vectors start out empty
for day=1:10
%// Generate 3 particles and add to end of vectors X and Y
X=[X;randi(xyRange,numP,1)];
Y=[Y;randi(xyRange,numP,1)];
%// Move all the particles
X=X+vx;
Y=Y+vy;
end
plot(X,Y,'kd');
grid on ;
axis([1,50,1,50]);
function [box] = coord(X,Y)
for j = floor(X/5)+1;
k = floor(Y/5);
box = k*10+j;
end
end
0 commentaires
Réponse acceptée
Thorsten
le 29 Juin 2015
You can write it w/o a function, and you don't need the inner for j= ... loop:
for day=1:10
%// Generate 3 particles and add to end of vectors X and Y
X=[X;randi(xyRange,numP,1)];
Y=[Y;randi(xyRange,numP,1)];
%// Move all the particles
X=X+vx;
Y=Y+vy;
end
plot(X,Y,'kd');
grid on ;
axis([1,50,1,50]);
j = floor(X/5)+1;
k = floor(Y/5);
box = k*10+j;
end
2 commentaires
Adam
le 29 Juin 2015
You should give completely new questions their own thread really rather than tagging them onto a comment of an answer.
Plus de réponses (1)
James Tursa
le 29 Juin 2015
You have your sub function "coord" defined inside your for loop. Move it outside your for loop.
2 commentaires
Adam
le 29 Juin 2015
also if that is a script you need to turn the whole thing into a function in order to define subfunctions.
Voir également
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!