Вы находитесь на странице: 1из 26

Modelare prin

ecuaţii diferenţiale
Funcţia Matlab ode45 M
Modele matematice bazate pe ecuaţii
(diferenţiale)
 O mulţime de probleme practice se reduc la
ecuaţii diferenţiale sau integrodiferenţiale, iar
pentru studiul acestora se utilizează teoria
funcţiilor, teoria probabilităţilor, metode de
aproximare.
 Se obţine astfel un model determinist (diferit de
cel stochastic care presupune şi o componentă
aleatoare, termenul eroare). Un astfel de model
se determină destul de greu, după un studiu
aprofundat interdisciplinar, continuu şi
consistent.
Exemple de modele matematice guvernate de
ecuaţii (diferenţiale)

 I. Ecuaţia diferenţială x’=kx, unde k este o


constantă reală, reprezintă un model matematic
simplu pentru:

 Studiul unor fenomene din optică, unde x este


intensitatea unui fascicol luminos ce cade pe o suprafaţă
a unui corp, care nu este perfect transparent;

 Studiul unui proces de dezintegrare radioactivă, unde


x(t) este cantitatea de substanţă la momentul t;

 Studiul unor fenomene din cinetica chimică, unde x(t)


este concentraţia substanţei la momentul t;
 În toate aceste cazuri observăm că derivata I,
adică o viteză de variaţie a mărimii este
proporţională cu o cantitate existentă la
momentul dat t.

 Modelele de mai sus se bazează de fapt pe o


problemă generală de dinamica populaţiilor.

 Problema 1: Cunoscând că la momentul t0,


mărimea populaţiei este x0 indivizi, se cere să se
determine numărul indivizilor acestei populaţii la
momentul t  t 0 .
 Notăm cu x(t), numărul de indivizi la momentul t. Dacă presupunem
că populaţia se dezvoltă astfel încât viteza de creştere a populaţiei
x’ este direct proporţională cu numărul x(t), adică f(x)=ax, a>0 ,
atunci, presupunând că funcţia x este derivabilă, problema P1 se
reduce la determinarea tuturor funcţiilor xC1t0, , care satisfac
condiţiile :
x ax,a *
R


t0x0,x0dat
x

 Problema se numeşte problemă Cauchy şi reprezintă modelul


matematic al problemei P1. În acest model parametrul a se numeşte
coeficient de creştere sau rată de creştere per capita, deoarece
x
a
x
 Modelul este denumit şi modelul lui Malthus, iar populaţiile
exponenţiale (soluţii ale modelului) sunt numite populaţii
malthusiene.
Studiul modelului
 Ecuaţia diferenţială din problema Cauchy are o singură soluţie
echilibru (staţionară) obţinută prin


fx
0
ax
0
x0,
a 
0

 Se poate demonstra că soluţia echilibru este instabilă (studiul


stabilităţii revine la studiul modului în care evoluează procesul
studiat, atunci când starea iniţială se abate din cauza unor
perturbaţii de scurtă durată, necunoscute exact, de la valorile sale
de echilibru ;

 -echilibru asimptotic stabil


limxt0
t

 -echilibru instabil în care abateri oricat de mici ale solutiilor de la


starea de echilibru, duc la modificarea continuă, odata cu cresterea
timpului)
limxt
t
Rezolvarea problemei Cauchy
 Ecuaţia diferenţială cu variabile separabile x’=ax, se integrează în
condiţia iniţială xt0   x0 , astfel:
dx
dx dx


x  


x 

ax
ax
adt
a 
dt
ln
t
x 
at
ln
c.
dt x
 De aici rezultă :

x
tat
ln 
x
t
 at
ce,
c*
R

c
 Condiţia iniţială implică ecuaţia x0  ceat0 , de unde se obţine
at
constanta de integrare c  x0e 0
, care înlocuită în soluţia generală,
conduce la soluţia

xt x0e a t
t0
,t t0.

 În baza acestui model, numărul indivizilor, x(t), la momentul t, este


t0
o funcţie exponenţială, pentru care are loc egalitatea :

lim
x
t
lim
x
0e
a
tt
0



t  
t 

 Din cauza acestei explozii a populaţiei, modelul Malthus este


cunoscut şi sub denumirea de modelul creşterii nelimitate.
II. Studiul vibraţiilor libere ale unei corzi vibrante
 Problema 2. În studiul vibraţiilor libere ale unei corzi
vibrante, se obţine modelul guvernat de ecuaţii diferenţiale
de ordinul 2

2
2
u2

a
u
,
t,
x
R
 
0,
l

2
t 2
x
,
u0,xx
  ,
u0,x

x 
,x
0,
l
t
,

ut,0  0 , ut, l   0 , tR

 unde l este lungimea corzii vibrante fixată la capete, u t , x 


este deplasarea punctului x al corzii, la momentul t, iar 
şi  sunt două funcţii date pe R.
III. Modelarea plutirii unei canoe
 Problema 3. Se consideră o canoe ce pluteşte pe o apă liniştită, într-
o zi fără vânt. La momentul t=0, canoea a atins o linie ce marchează
sfârşitul unei curse de întrecere, exact la acest moment, oprindu-se
şi vâslirea.

 După oprirea vâslirii, până la momentul t  t0  0 , canoea a mai plutit


pe o distanţă cunoscută s 0 , dincolo de linie, iar la momentul t  2t 0 ,
canoea a plutit pe o distanţă s1  s0 , în acelaşi sens.

 Dacă distanţele s 0 şi s1 sunt cunoscute, se cere să se determine


distanţa maximă s  pe care poate pluti canoea, după ce s-a oprit
vâslirea, până la oprire.

Rezolvare
 Se pleacă de la ipoteza că pentru mişcarea cu viteză încetinită, forţa
de rezistenţă datorată apei este proporţională cu viteza v a canoei.
 În baza legii lui Newton, avem :
dv dv
mF( 
accelerati
a)
dt dt

unde forţa F este egală cu  k1v , conform ipotezei de mai sus, cu k1


constantă reală pozitivă, iar m, masa canoeei. Semnul minus se
justifică prin faptul că forţa tinde să încetinească mişcarea, acţionând în
sens contrar vitezei.

 Luând k  km, vom avea, Fk1vkmv


1 , iar apoi, înlocuind în legea lui
Newton şi simplificând cu m, se obţine:
dv
kv
 , -k0
dt

 Având în vedere şi condiţia iniţială, v0  v0 ,problema modelării revine


la o problemă Cauchy, în care parametrul a ia o valoare negativă -k.
 Rezolvăm problema Cauchy, prin separarea variabilelor şi
integrarea cu condiţia iniţială şi astfel obţinem, soluţia:
vtv0ekt
ds
 Din definiţia vitezei, când spaţiul parcurs este s, avem  v , iar de
dt
aici, folosind aceste două ultime relaţii putem calcula s astfel :
t


kp 


t tkt0
e e e v
   
 0 

s 
vdp
ve
kp
dp
v v
 1
ekt
.
  
0 0 0
0 
0 0
k k k k

v
s
v0
kt s slimt 0
 Cum 1e 1 , rezultă că şi la limită vom
k obţine, t k,
unde v0 este necunoscut. Se observă că putem exprima s 0 şi s1 , cu
ajutorul formulei de mai sus, prin
 v0
 0 k 1e
s   kt0

 v

s1  0 1e2kt0
 k

 Împărţim membru cu membru, ecuaţiile anterioare şi obţinem
s
11


2
ekt
0



1
ekt
0


1
e


kt
0
2


s 
0 1
kt
e0

1ekt
0

 Cu acest rezultat vom obţine: 1 


e
kt
0

2
1 e

kt
0
 2
s
s
1

0
 s
Înlocuind acest rezultat în formula lui obţinută anterior, avem
0

v  s1
s0  02 
k 
 s0 2
v s s
v 0
s 0

s  0

de unde explicităm k0 şi rezultă k




2
s
1

2
s0s1
s
adică, distanţa maximă pe care poate pluti canoea, după ce s-a
0

oprit vâslarea, până la oprire.

 În mod analog, cu problema Cauchy, aici se poate demonstra că


punctul de echilibru, v  0 , este asimptotic stabil.
t 0 v0
 Se poate observa că nu a fost necesar să cunoaştem , sau m,
s
decât mărimile 0 şi s1 .
IV.Un model de migraţie rural urbană, pentru
studiul urbanizării
 Unul din obiectivele esenţiale în problematica
sistematizării urbane în sociologie, este acela de a
organiza spaţiul, în vederea optimizării nivelului de trai
al populaţiei.
 Fenomenul urbanizării este determinat printre altele
de diferenţa dintre sporul natural rural şi sporul
natural urban, precum şi de schimbul migratoriu
dintre rural şi urban. Vom vedea în cele ce urmează,
un model de migraţie rural-urbană.
 Problema 4. Fiind dată o populaţie formată din două
componente distincte, rural şi urban, să se studieze
cum se schimbă distribuţia populaţiei date, prin
migrarea indivizilor între rural şi urban.
Ipoteze

 A)Factorii creşterii anuale, pentru ambele componente, sunt egali cu


,   0 . Astfel, populaţia în anul k+1, datorată creşterii va fi egală
cu produsul dintre populaţia în anul k şi factorul  . Distribuţia
populaţiei la un moment dat, este dată de numărul persoanelor din
fiecare componentă. Rata migraţiei va fi influenţată de nevoile unui
nivel de bază adecvat al activităţii rurale.

 B)Baza optimă rurală este o fracţie dată  , din întreaga populaţie.

 C)Nivelul anual de migraţie este proporţional cu excesul populaţiei


rurale peste baza optimă rurală. Notăm cu x k şi y k , mărimea
populaţiei rurale respectiv urbane, în anul k, k  N .
 Construcţia modelului
Populaţia totală este x k  y k , iar în baza ipotezei B), baza optimă
rurală este xk  yk  , în anul k. Excesul populaţiei rurale se poate
exprima prin formula, xk xk yk . Pe baza acestor precizări şi pe
baza ipotezelor, se poate scrie modelul matematic discret (anual)
care descrie procesul de migraţie, astfel


x x 

x 
x y

 
k1 k k k k


y
k1y
k
xk
xky
k

unde  este
0 factorul migraţiei care este constant.
 Sistemul se poate scrie simplificat sub forma
x  
 
1 
x 
y
   
k1 k k

y
k1 
1 x
k   
yk

unde parametrii  ,  ,  satisfac condiţiile   ,


0 0,0  1. Aceşti

parametri sunt consideraţi constanţi, dar pentru un model mai


realist, ei ar trebui să varieze în funcţie de timpul discret k.
 S-a obţinut astfel, un sistem de ecuaţii liniare cu diferenţe, cu
coeficienţi constanţi. Exprimăm pe y k din prima ecuaţie şi obţinem
x ax
yk  k1 k

b
a1 şi b   x 2ax
unde . Prin recurenţă, obţinem y
k1
k k
1
.
b

 Înlocuind y k şi y k 1 , în ecuaţia a doua a sistemului, obţinem


următoarea ecuaţie cu recurenţe liniare de ordinul doi, omogenă cu
coeficienţi constanţi: x   
2 
 
x   x 0
    
k 2 k 1 k
 Asociem ecuaţia caracteristică, în r, r 2
2  
r    0
care are rădăcinile, r1 ,r 2 . Soluţia generală va fi de forma,
x
kk

Ar
1
k

Br
2 Ak

B   k

unde A şi B sunt două constante arbitrare, care se pot determina


când sunt date x1 şi x 2 .
 Cunoscând mărimea populaţiei rurale, x k , în anul k, se poate
determina şi mărimea populaţiei urbane,y k , în anul k. Avem


y
k
A

k
1
B


a
A
b



k



B



y
k
 

1

k
A


B


k


.

k
1 k
Analiza rezultatelor

 1)Analizând formulele
xk

Ark

BrAk

B   k


 
 
k 1 2


y
k
A

k
1
B

a
A
b

k


B


y
k

1

k
A


B


k


.

k
1 k

se poate observa că populaţia totală creşte prin factorul  , în fiecare an.

 2)Să presupunem că populaţia rurală are mai mulţi indivizi decât sunt
necesari pentru o bază rurală optimă. În acest caz, migraţia va avea loc din
rural spre urban, cu o rată de creştere egală cu    ,     0 ,
(creşte x k ).
    0
 3)Dacă , atunci şi migraţia populaţiei va fi oscilatorie,xun an va
fi o migraţie urban-rural, anul următor migraţia va fi rural-urban ( k creşte
pentru k par şi scade pentru k impar).
, , 
 4)Prin valori date parametrilor , fenomenul migraţiei poate fi ţinut sub
control.
V. Modele epidemice de tip SIR
 Modelarea epidemiilor şi analiza dinamicii unor boli infecţioase
permit explicaţii asupra cauzelor izbucnirii şi răspândirii epidemiilor.
Aceste modele au fost inspirate din modelul clasic Kermak-Mc
Kendric, pe care îl vom nota cu KMK.

 Problema 5: Considerăm o populaţie a cărei mărime rămâne


constantă. Dacă se introduce în această populaţie un grup de
indivizi infectaţi cu o boală infecţioasa, se cere să se descrie
răspândirea infecţiei în interiorul populaţiei ca o funcţie de timp.

 Vom descrie în cele ce urmează modelul, KMK, plecând de la


premisa unei boli care după însănătoşire conferă imunitate, aici fiind
incluşi şi cei decedaţi care prin context nu mai fac boala.

 Populaţia se împarte atunci în trei clase distincte:


 susceptibili -S, care se pot molipsi de boala respectivă
 infectaţi -I, care au boala şi o pot transmite altor indivizi
 recuperaţi -R, cei care fie sunt imuni, după vindecare, fie sunt izolaţi,
până la vindecare.
 Fenomenul (SIR) studiat are următoarea schemă de evoluţie
S I R
 
Fie S,I,R:IR , trei funcţii continuu diferenţiabile şi notăm cu S
IR t ,I
t ,R
t
numărul indivizilor celor trei clase S, I, R, la momentul t. De
asemenea considerăm următoarele presupuneri:

 sporul în clasa I este interpretat ca o rată proporţională cu numărul


infectaţilor şi susceptibililor, adică rSt I t  , unde r>0 este o constantă.
 rata celor mutaţi din cei infectaţi în clasa R este proporţională cu
numărul infectaţilor, adică aI t  , a>0, constantă;
 perioada de incubaţie a infecţiei este neglijabilă, fiind foarte scurtă.
 În aceste ipoteze, modelul SIR, de tipul KMK, are forma:
 dSt
  rStIt S0  S0  0
dt 
I0  I0  0

dIt cu condiţiile iniţiale
  rStItaIt
 dt  R0  0
 dR t   aIt


 dt
unde r>0 este rata de infecţie a>0, este rata de mutare a celor infectaţi, iar
semnul minus semnifică spor negativ.
 Ne vor interesa soluţiile pozitive ale modelului
bazat pe ecuaţii diferenţiale neliniare. Deoarece,
conform ipotezei, mărimea populaţiei rămâne
constantă, adunând membru cu membru
ecuaţiile, obţinem afirmaţia (N mărimea
populaţiei) dS
  

t

dI

0S

t
t
I

dR
t
R
t
tN
dt
dtdt

 Se pune problema să răspundem la următoarele


întrebări, în ipoteza că se cunosc r,a, S , I :
0 0

 infecţia
se va răspândi sau nu?
 dacă da, cum variază în timp?
 când va porni declinul?
a
Introducem parametrul, 
 r,
numit parametru vital (valoare prag sau
rată relativă de mutare), iar 1  r
 a

este numit rata de contact cu infecţia. Dacă S 0   , atunci infecţia se


răspândeşte, deci se produce epidemia. Dacă I I0 t 0 , când t   ,
atunci infecţia ia sfârşit deci epidemia nu mai există.

 Din primele două ecuaţii ale modelului, obţinem ecuaţia:


dI 

rS aI

1
 I 0
dS rSI S

 După integrarea acestei ecuaţii se obţine


IS SC
ln

unde constanta de integrare C, se poate determina ţinând cont de


condiţiile iniţiale. Astfel, avem, .
CI00
S ln
S0
Aplicaţii în Matlab – Funcţia ode45 – Matlab
general
 Sintaxa funcţiei ode45
>>[T,Y] = ode45(odefun,tspan,y0)
 Parametrii de intrare:
 odefun – funcţia care descrie membrul drept al ecuaţiei diferenţiale, se
defineşte în Matlab cu procedura Function;
 tspan – un vector de forma [t0 tf] specificând intervalul pe care se
integrează ecuaţia diferenţială;
 y0 – un vector care conţine condiţiile iniţiale; este de aceeaşi dimensiune
cu y din odefun;
 Parametrii de ieşire:
 T - un vector ce conţine valorile lui t din intervalul [t0 tf] pe care se vor
afişa valorile lui y şi ale lui dy
 Y – matrice conţinând soluţiile ecuaţiei diferenţiale, calculate pe fiecare
punct din T
 în plus, se mai afişează şi valorile diferenţialei dy corespunzătoare lui T
şi Y.
Funcţia ode45

 Practic cu ode45 se integrează ecuaţia


sau sistemul de ecuaţii diferenţiale de la t0
la tf cu condiţiile iniţiale y0. Funcţia odefun
se defineşte ca odefun(t,y) unde t este un
scalar şi y un vector şi are ca rezultat un
vector f care corespunde lui f(t,y) din
ecuaţia diferenţailă dy=f(t,y). Fiecare linie
din Y obţinut ca rezultat la ode45
corespunde câte unei valori a lui t afişate
pe aceeaşi linie în vectorul coloană T.
Exemplu:
 Sistem de ecuaţii diferenţiale descriind mişcarea unui corp rigid fără
acţiunea forţelor externe:
 y  y  y


1

2 3

 2 y1  y3
y
y  0,51 y  y

3 1 2

cu condiţiile iniţiale  y1 0   0

 y 2 0   1
 y 0   1
 3
Rezolvarea sistemului de ecuaţii diferenţiale cu
ode45
 Pentru descrierea sistemului de ecuaţii diferenţiale se face un m-file
în care se defineşte funcţia din ecuaţia dy=f(t,y) cu ajutorul
procedurii Function din Matlab. Denumirea fişierului va fi aceeaşi cu
denumirea funcţiei din Function.
 Fişierul m-file ‘ec’ va avea următorul conţinut
function [dy]=ec(t,y)
dy=zeros(3,1);
dy(1)=y(2)*y(3);
dy(2)=-y(1)*y(3);
dy(3)=-0.51*y(1)*y(2)
 Rezolvarea sistemului se face cu comanda
>>[T,Y] = ode45('ec',[0 12],[0 1 1])
 [0 12] este intervalul pe care se face integrarea;
 [0 1 1] descrie condiţiile iniţiale.
Tema 9 Matlab
 Rezolvaţi în Matlab următorul sistem de ecuaţii diferenţiale pe
domeniul [1 10]: 
 
 y1  y 2  y 3
 
 y 2  3  y1  y 4
y   y  2 y
 3 3 4

 
 y 4  y1  2  y 2


 cu condiţiile iniţiale:  y 1 0   1

 y 2 0   1
 y 3 0    1

 y 4 0   2

Вам также может понравиться