How to run a loop for multiple variations of a variable.
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello, I'm new to MATLAB and coding and I'm trying to vary the parameter 'p' from 0 to 3 in incriminates of 1 inside the loop which should give me three different sets of data for the v_d equation but I can't get it to work. Can anyone see what I am doing wrong? Thanks!
e=0.01; k=4; a=0.1; p = 0:1:3;
i = 0.001;
u=zeros(100000,1);
v=zeros(100000,1);
v_d=zeros(100000,1);
t=zeros(100000,1);
% Initial conditions:
u(1)=0.6;
v(1)=0.0;
v_d(1)=0.0;
t(1)=0;
dt=0.001;
for i=1:1:50000
t(i+1)=t(i)+dt;
u(i+1) = u(i)+ dt*((1/e)*((k*u(i)*(u(i)-a)*(1-u(i)))-v(i)));
v(i+1) = v(i)+ dt*(u(i)-v(i));
v_d(i+1) = v_d(i)+ dt*(u(i)-p*v_d(i));
end
1 commentaire
Matt J
le 22 Oct 2018
which should give me three different sets of data for the v_d equation
Don't you mean 4 different sets: 0,1,2,3
Réponse acceptée
Matt J
le 22 Oct 2018
v_d=zeros(50000,4); %<--change
t(1)=0;
dt=0.001;
for i=1:1:50000
t(i+1)=t(i)+dt;
u(i+1) = u(i)+ dt*((1/e)*((k*u(i)*(u(i)-a)*(1-u(i)))-v(i)));
v(i+1) = v(i)+ dt*(u(i)-v(i));
v_d(i+1,:) = v_d(i,:)+ dt*(u(i)-p.*v_d(i,:)); %<--change
end
Plus de réponses (0)
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!