Politechnika Lubelska Wydział Elektrotechniki i Informatyki |
---|
Laboratorium Metod Numerycznych |
Imię i nazwisko: Karol Woźniak Grzegorz Zaborny |
Laboratorium 10 |
1.Dane zadania:
E=20V
R1=R2=R3=20Ω
L=2H
C=5mF
2.Schemat obwodu:
3.Obliczenia:
pochodne(1)=(E-x(1)-x(2)*R1)/(C*(R1+R3));
pochodne(2)=((E-x(1)-x(2)*R1)*R3+x(1)-x(2)*R2)/(L*(R1+R3));
4.Pełny skrypt:
clear;
xdel;
clc;
//funkcja opisujaca uklad rownan różniczkowych
function[pochodne]=stany(t,x)
pochodne(1)=(E-x(1)-x(2)*R1)/(C*(R1+R3));
pochodne(2)=((E-x(1)-x(2)*R1)*R3+x(1)-x(2)*R2)/(L*(R1+R3));
endfunction
//parametry rozwiazywanego obwodu
E=20;
R1=20;
R2=20;
R3=20;
L=2;
C=0.005;
//parametry poczatkowe zdefiniowanych zmiennych stanu i czasu
duC0=0;
diL0=0;
t0=0;
//wektor czasu
t=0:0.0001:0.5;
//polecenie rozwiazania ukladu rownan
roz=ode([duC0;diL0],t0,t,stany);
//wyznaczanie przebiegow pozostalych napiec
i3=roz(2,:);
uR2=i3*R2;
uC=roz(1,:);
subplot(2,1,1)
plot2d(t,[i3'uR2'],leg='i3(t)@uR2(t)')
subplot(2,1,2)
plot2d(t,uC,leg='uC(t)')
5.Wnioski:
Program Scilab okazał się być bardzo pomocny w żmudnych obliczeniach równań różniczkowych II rzędu gdyż wykonuje on całą prace za nas i dzięki temu mamy więcej czasu na inne zajęcia.