Lotka-Volterra modeller
> with(DEtools);
> with(plots);
Vi definerer et enkett eksempel på et Lotka-Voterra differentialligningssystem:
> sys:=diff(x(t),t)=x(t)-x(t)*y(t),diff(y(t),t)=x(t)*y(t)-y(t);
som vi løser numerisk, her med begyndelsesbetingelserne x(0)=1.5 og y(0)=1.5
> p:=dsolve({sys,x(0)=1.5,y(0)=1.5},[x(t),y(t)],type=numeric);
Løsningernes grafer ser sådan ud
> odeplot(p,[[t,x(t)],[t,y(t)]],0..50,thickness=2,title='LotkaVolterra',labels=[tid,bestand]);
og kurven (x(t),y(t))
> odeplot(p,[x(t),y(t)],0..10,title='Fasediagram',thickness=2);
cirkler omkring ligevægtspunktet (1,1).
Vi kan prøve at undersøge, hvad der sker når vi piller ved koeffcienter i Lotka_Volterra ligningssystemet. Her er et lidt andet system
> sys2:=diff(x(t),t)=2*x(t)-0.05*x(t)*y(t),diff(y(t),t)=-1*y(t)+0.1*x(t)*y(t);
som vi løser numerisk
> p2:=dsolve({sys2,x(0)=10,y(0)=5}, [x(t),y(t)], type=numeric);
Vi tegner løsningernes grafer
> odeplot(p2,[[t,x(t)],[t,y(t)]],0..50,thickness=2);
og kurven (x(t),(t))
> odeplot(p2,[x(t),y(t)],0..10,title='Fasediagram',thickness=2);
Her er vektorfeltet for det andet system
> DEplot({sys2}, [x(t),y(t)], t= 0..10, [[x(0) = 10, y(0) = 5]] );
Vi ser hvordan løsningskurverne (x(t),y(t)) løber periodisk rundt om ligevægtspunktet svarende
periodiske svingninger i bestandene af de to dyrearter.