% Promatramo sljedeci sustav diferencijalnih jednadzbi:
% dx/dt = A*(x - y/B)
% dy/dt = - C*y + D*x*y
% Ovaj sustav je, zajedno s vrijednostima parametara, definiran u
% Grabezljivac_plijen_sustav.m

% Definiramo zavrsnu i pocetnu vrijednost za vrijeme t:
t_pocetni = 0;
t_zavrsni = 20;

% Deiniramo pocetnu vrijednost za x i y, tj. x0 i y0:
pocetne = [0.1; 0.5];

% Koristimo naredbu ode45 kako bismo generirali priblizne vrijednosti za x za dane vrijednosti za t prema principu:
% [t,x] = ode45(@Grabezljivac_plijen_sustav, [t_pocetni, t_zavrsni], pocetne_vrijednosti, opcije)
opcije = odeset('RelTol', 1e-10);
[t,nepoznanica] = ode45(@grabezljivac_plijen_sustav,[t_pocetni,t_zavrsni], pocetne, opcije);

% Pripremamo vrijednosti za x i y za lakse crtanje, definirajuci x kao
% prvi, a y kao drugi redak matrice nepoznanica:
x = nepoznanica(:, 1); 
y = nepoznanica(:, 2);

% Crtanje grafickog prikaza, gdje je na osi apscisa vrijeme t, a na osi
% ordinata vrijednosti i za x i za y - vrijednosti za x su prikazane
% crvenom bojom - oznaka 'r', a vrijednosti za y plavom bojom - oznaka 'b':
plot(t,x,'r',t,y,'b')
xlabel('Vrijeme, t')
ylabel('Populacije grabežljivca i plijena')
title('Model grabežljivca i plijena - vremenski prikaz')
legend('Grabežljivac','Plijen')

% Sada dajemo prikaz trajektorije, grafa gdje je na osi apscisa populacija
% grabezljivca x, a na osi ordinata plijena y. Dinamika sustava u vremenu
% moze se dobiti upotrebom naredbe 'comet'. Najprije otvaramo prozor za novi graf:
figure
comet(x,y);
hold on
plot(x,y);
xlabel('Plijen, x(t)')
ylabel('Grabežljivac, y(t)')
title('Model grabežljivca i plijena - prikaz trajektorije')