Lotka-Volterra

Alfred Lotka (1925) und Vito Volterra (1926) fanden einen mathematischen Zusammenhang in der Populationsdynamik eines Räuber-Beute-Systems.

Vorstehende Grafik wurde mit dem folgenden Recapis-Programm erstellt.

/*
 Lotka-Volterra: Räuber Beute Modell
 http://num.math.uni-goettingen.de/werner/ode.pdf
 zB. Füchse und Hasen
 zB. Schweinezyklus
 x' =  ax - bxy
 y' = -cy + dxy
 Für diese Differentialgleichungen gibt es keine geschlossene Lösung.
 Daher sind die Kurven numerisch iterativ erstellt.
*/

a =   1    ; // hasen   natürliche      vermehrung
b =   0.01 ; // hasen   fuchsverursachte verminderung
c =   1    ; // füchse  natuerliche      sterberate
d =   0.01 ; // füchse  hasenverursachte vermehrung
x = 300.0  ; // hasen   populationsstart
y = 150.0  ; // füchse  populationsstart
z =  10    ; // Zwischenschritte (Punktanzahl je Periode)
p = 170    ; // Periodenanzahl
anz = int(p*z); // je 1/10 mm neuen Punkt berechnen
X Fvector anz;
Y Fvector anz;
X[0]=x;
Y[0]=y;

svg_open (p+10,100,10,10);
 svg_kreuz;
 for(i=1;i<anz;i++) {
  x_delta =  a*x/z - b*x*y/z;
  x += x_delta;
  y_delta = -c*y/z + d*x*y/z;
  y += y_delta;
  if(y<=0)
    {$='Fuechse sind verhungert ';$=i,'\n';break;}
  X[i] = x;
  Y[i] = y;
 }
svg_fieber (X,"dehnen_x=1.0","dehnen_y=0.2","sf=green");
svg_fieber (Y,"dehnen_x=1.0","dehnen_y=0.2","sf=red");
svg_text   (20,60,"Hasen   grüne Kurve","fill:green;font-family:Helvetica");
svg_text   (20,10,"Füchse  rote  Kurve","fill:red;  font-family:Helvetica");
svg_close("/tmp/hasen/hasen.svg");

/* 
Die Programmverbesserung  
  x_delta =  a*x/z - b*x*y/z;
  y_delta = -c*y/z + d*x*y/z;
  x += x_delta;
  y += y_delta;
ändern in
  x_delta =  a*x/z - b*x*y/z;
  x += x_delta;
  y_delta = -c*y/z + d*x*y/z;
  y += y_delta;
habe ich bei Jörn Loviscach gefunden: 
  https://av.tib.eu/media/10323
*/