1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
|
xbasc();
// Définition du pas de temps
h = 0.01;
Tmax=100;
Taille = 10*Tmax;
Nbintervalle=Tmax/h;
// Vecteur des abscisses
T = [1:Taille];
T = 10*h*T;
T = T';
// Initialisation des vecteurs des populations
for I=1:Taille,
X(I) = 0;
Y(I) = 0;
end
// Constantes de dynamique intrinsèque et populations initiales
alpha1=1;
alpha2=1;
x=2;
y=2;
I=0;
X(1)=x;
Y(1)=y;
// Calcul de l'évolution des populations
for I=1:Nbintervalle-1,
I = I + 1;
dx = alpha1*x - x*y;
dy = - alpha2*y + x*y;
x = x + h*dx;
y = y + h*dy;
if modulo(I,10)==0 then
X(I/10) = x;
Y(I/10) = y;
end
end
// Affichage
xbasc();
plot2d([T T],[X Y],[2,3],"111","Proies@Prédateurs",[0,0,Tmax,4],[2,10,2,10]);
halt();
xbasc();
// Affichage de la trajectoire dans le plan de phase
plot2d([X],[Y],[2],"111","Trajectoire des phases",[0,0,4,4],[2,10,2,10]); |
Partager