chomik Sprawozdanie, matematyczne modelowanie procesów biotechnologicznych, Lista 3 Równania różniczkowe zwyczajne


Sprawozdanie

Laboratorium nr 2

Modele pojedynczych populacji


Zadanie 1:

  1. rozwiązanie modelu dyskretnego:

function N_t = rozw_dys(t, r, N_0)

N_t = N_0

for i = 1:t

N_t = N_t+ r*N_t;

end;

end

rozwiązanie modelu ciągłego:

function N_t = rozw_eulera(t, r, N_0, h)

N_t = N_0

for i = h:h:t

N_t = N_t+ h*N_t*r;

end;

end

function N_t = rozw_cialgy(t, r, N_0)

N_t = N_0*exp(r*t)

end

  1. wpływ parametrów N0 i r1 lub r2 na dynamikę modeli

clear all;

close all;

r_1 = 0.6;

r_2 = 0.6;

N_0 = [5 7 8]

% wektory czasu:

t_dys = [0:1:9];

t_cia = [0:1:9];

% Model ciągły

for i=1:3

N_cia (i, j+1)= N_0(i)

for j=1:9

N_cia1(i, j+1) = N_cia1 (i, 1) * exp (r_1*t_cia(j));

end;

end;

% Model dyskretny

for i=1:3

N_dys1(1, i) = N_0(i)

for j=1:9

N_dys1 (i, j+1) = N_dys1(i,j)*(1+r_2);

end;

end;

%wykresy:

for i=1:3

figure(i);

plot (t_dys, N_dys(i,:),'o', t_cia, N_cia(i,:),'g-');

end;

  1. czas zdwojenia TD:

r1 = 0.6

dN(t)/ dt = r1*N(t)

N(t) = N0* exp (r1*t)

N(TD) = 2*N0

N(TD) = N0*exp (r1*TD) = 2*N0

exp(r1*TD) = 2

r1*TD = ln2

TD = ln2/r1

Td = ln2/0.6

TD = 1.155

  1. zależność funkcyjna r1(r2)

model dyskretny: Nt = Nt-1 *( 1+r2) = N0*(1+r2)t

model ciągły: N(t) = N0* exp(r1*t)

N0*(1+r2)t = N0* exp(r1*t) /N0

(1+r2)t = exp(r1*t) /*ln

t* ln(1+r2) = r1*t /t

r1 = ln(1+r2)

r1 = ln(1+0.6)

r1 = ln(1.6)

r1 = 0.47

clear all;

close all;

r_2 = 1.5;

r_1 = log (1+r_2);

t_dys = [0:1:9];

t_cia = [0:1:9];

N_0 = 4;

%model ciągły:

N_cia=N_0.*exp(r_1*t_cia);

%model dyskretny:

N_dys = N_0.*((1+r_2).^t_dys);

plot (t_cia, N_cia, 'r-', t_dys, N_dys, 'bo');

legend('model ciagly', 'model dyskretny');

xlabel('czas'); ylabel('N')

0x01 graphic

  1. dla jakiego r1 model ciągły przyjmuje te same wartości w ustalonych punktach czasowych co model dyskretny o zadanych N0 i r2.

N(t) = N0* exp(r1*t)/:N0

N(t)/N0 = exp(r1*t)/ln

r1*t = ln(N(t)/N0)/:t

r1 = 1/t * ln(N(t)/N0)

Zadanie 2:

function derivate_N = logistyczny(t,N)

a=0.2;

N_nieskon = 500;

derivate_N=a.*N.*(1-(N./N_nieskon));

end

--------------------------------------

function deriv_N = gompertz(t,N)

b=0.1;

N_nieskon=500;

deriv_N = -b.*N.*log(N./N_nieskon);

end

----------------------------------

close all; clear all;

t = [0, 120];

N_0 = [5,45,300,600];

[t,N] = ode45(@logistyczny,t, N_0);

plot (t,N(:,1),'r', t,N(:,2),'b', t,N(:,3),'g',t,N(:,4),'y');

legend('N_0 = 5', 'N_0 = 45','N_0 = 300', 'N_0 = 600');

xlabel('czas'); ylabel('ilosc komorek');

grid on;

0x01 graphic

close all; clear all;

t = [0, 120];

N_0 = [5,45,300,600];

[t,N] = ode45(@gompertz,t, N_0);

plot (t,N(:,1),'r', t,N(:,2),'b', t,N(:,3),'g',t,N(:,4),'y');

legend('N_0 = 5', 'N_0 = 45','N_0 = 300', 'N_0 = 600');

xlabel('czas'); ylabel('ilosc komorek');

title('Model Gompertza');

grid on;

0x01 graphic

WYKRESY FAZOWE:

close all; clear all;

t = [0, 120];

N_0 = [5,45,300,600];

figure(1);

for i =1:4

[t,N] = ode45(@logistyczny, t, N_0(i));

title ('wykresy fazowe dla modelu logistycznego')

subplot (2,2,i);

plot (N(1:length(N)-1),N(2:length(N)));

end

0x01 graphic

close all; clear all;

t = [0, 120];

N_0 = [5,45,300,600];

for i =1:4

[t,N] = ode45(@gompertz, t, N_0(i));

title ('wykresy fazowe dla modelu Gompertza')

subplot (2,2,i);

plot (N(1:length(N)-1),N(2:length(N)));

end

0x01 graphic

Zadanie 3:

  1. X0 = 0.2

t =[0:70]

close all; clear all;

a = [0.6, 2.5, 3.3, 3.8];

t=[0:70];

X(1:4, 1) = 0.2;

for i=1:4

for j= 1:70;

X(i, j+1)=a(i).* X(i,j).*(1-X(i,j));

end;

end;

for i=1:4

figure(i);

plot (t, X(i, :),'*',t, X(i,:), 'g-');

xlabel('czas'); ylabel('X(t)');

title ('przebieg czasowy dla modelu logistycznego')

end

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

  1. oscylacje:

0x01 graphic
a=3.3

chaos:

0x01 graphic

a = 3.8

  1. wykres bifurkacyjny:

N= 50;

N1=25;

s = zeros(1,N);

S(1)=0.1;

for j=2:N

s(j)=a*s(j-1)*(1-s(j-1));

end;

figure(1); plot(s,'o');

figure(2); plot(s(N1:end-1),s(N1+1:end), '.');

bif=[];

for a = 0:0.01:4;

zad3c;

drawnow;

bif(end+1,:)=s(N1:end);

end;

figure();

plot([1:0.01:4], bif, '.', 'markersize',2);



Wyszukiwarka

Podobne podstrony:
chomik mb lab 2, matematyczne modelowanie procesów biotechnologicznych, Lista 3 Równania różniczkowe
chomik Wybrane modele ekologiczne oraz metody rozwiązywania równań różniczkowych zwyczajnych
Równania różniczkowe zwyczajne lista zadań
Lista równania różniczkowe
LISTA 5 Rownania rozniczkowe 2010
Nawrocki J Matematyka cz 4 Szeregi funkcyjne i równania różniczkowe zwyczajne
raport3 Równania różniczkowe zwyczajne
Metody Komputerowe i Numeryczne, Równania różniczkowe zwyczajne
Kochański P, Kortyka P Sposoby rozwiązywania prostych równań różniczkowych zwyczajnych
12 ELEMENTY RÓWNAŃ RÓŻNICZKOWYCH ZWYCZAJNYCH
Rownania rozniczkowe zwyczajne. Zagadnienia poczatkowe
Numeryczne rozwiazywanie zagadnien poczatkowych równan i układów równan rózniczkowych zwyczajnych
Żołądek H Jakościowa teoria równań różniczkowych zwyczajnych

więcej podobnych podstron