Documente Academic
Documente Profesional
Documente Cultură
Lucrarea nr.2 BPA PDF
Lucrarea nr.2 BPA PDF
Tip algoritm
ode45
non-stiff
ode23
non-stiff
ode113
non-stiff
ode15s
stiff
ode23s
stiff
Rosenbrock
ode23t
ode23tb
stiff
fun specific funcia din membrul drept. In versiunile 6.x este un handler de funcie,iar
n versiunile 5.x este un nume de funcie (n acest caz se scrie fun nu @fun);
tspan vector ce specific intervalul de integrare. Dac este un vector cu dou elemente
tspan=[t0 tfinal], rezolvitorul integreaz de la t0 la tfinal. Dac tspan are
mai mult de dou elemente rezolvitorul returneaz soluiile n acele puncte. Abscisele
Lucrarea nr. 2
trebuie ordonate cresctor sau descresctor. Rezolvitorul nu i alege paii dup valorile
din tspan, ci obine valorile n aceste puncte prin prelungiri continue ale formulelor de
baz care au acelai ordin de precizie ca i soluiile calculate n puncte.
optiuni opiunile permit setarea unor parametrii ai rezolvitorului i se creaz cu
odeset.
Lucrarea nr. 2
0.8
0.6
y(t)
0.4
0.2
-0.2
-0.4
0.5
1.5
2.5
y n f t , y , y ,..., y n 1
la care se asociaz notaiile:
y1 y, y 2 y , ..., y n y n 1
y1 y 2
y y
2
3
y n f t , y , y ,..., y n 1
Exemplu:
S se integreze ecuaia diferenial
y t 2t y t 3 y (t ) 0
pe intervalul [0, 5] cu condiiile iniiale y 0 3 i y 0 1
Lucrarea nr. 2
Se noteaz :
y1 y
y2 y
Rezult sistemul de dou ecuaii difereniale de ordinul I.
y 2t y 3 y
2
2
1
y1 y 2
function dy=sistem1(t,y)
dy=[y(2);-2*t*y(2)-3*y(1)];
>> [t,y]=ode23(@sistem1,[0,5],[3;1]);
>> plot(t,y)
Exemplu:
S se rezolve sistemul de ecuaii difereniale
d
dt y1 (t ) y 2 (t ) y3 (t )
d
y 2 (t ) y1 (t ) a y 2 (t )
dt
d
dt y 3 (t ) b y 3 (t ) y1 (t ) c
function yd=sistem2(t,y,a,b,c)
%sistem de ecuatii diferentiale parametrizat
yd = [-y(2)-y(3); y(1)+a*y(2); b+y(3)*(y(1)-c)];
tspan = [0,100]; y0 = [1;1;1];
options = odeset('AbsTol',1e-7,'RelTol',1e-4);
a=0.2; b=0.2; c1=2.5; c2=5;
[t,y] = ode45(@sistem2,tspan,y0,options,a,b,c1);
[t2,y2] = ode45(@sistem2,tspan,y0,options,a,b,c2);
subplot(2,2,1), plot3(y(:,1),y(:,2),y(:,3))
title('c=2.5'), grid
xlabel('y_1(t)'), ylabel('y_2(t)'), zlabel('y_3(t)');
subplot(2,2,2), plot3(y2(:,1),y2(:,2),y2(:,3))
title('c=5'), grid
xlabel('y_1(t)'), ylabel('y_2(t)'), zlabel('y_3(t)');
subplot(2,2,3); plot(y(:,1),y(:,2))
title('c=2.5')
4
Lucrarea nr. 2
xlabel('y_1(t)'), ylabel('y_2(t)')
subplot(2,2,4); plot(y2(:,1),y2(:,2))
title('c=5')
xlabel('y_1(t)'), ylabel('y_2(t)')
Rezultate:
c=2.5
c=5
20
y 3(t)
y 3(t)
0
5
10
0
10
5
0
y 2(t)
-5
-5
20
y 2(t)
y 1(t)
10
-10
c=2.5
0
-10
y 1(t)
c=5
10
5
y 2(t)
y 2(t)
0
0
-2
-5
-4
-6
-4
-2
-10
-10
y 1(t)
-5
10
15
y 1(t)
duc
dt t 0
RC
duc
uc 0
dt
dt
cu condiiile iniiale:
uc (0) U 0
LC
Lucrarea nr. 2
-2
-4
-6
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1