PODSTAWY AUTOMATYKI
Sprawozdanie Laboratorium nr1
Rozwiązywanie równań różniczkowych
z niezerowymi warunkami początkowymi
Piotr Szewczak
Gr. 9B, WIMiR, MiBM
Rok II, 2014/2015
1
1. Cel ćwiczenia:
Wykorzystanie pakietu Matlab i Simulink do rozwiązywania równań różniczkowych.
Podczas zajęć rozwiązaliśmy równanie różniczkowe, trzema metodami - funkcją dslove, ode45 i
modelując układ w pakiecie Simulink.
2. Przebieg ćwiczenia:
Wybrane równanie do rozwiązania:
( )
+ 4 + 13 = 0, dla wartości początkowych 0 = 1, (0) = 0
*Rozwiązanie równania z wykorzystaniem funkcji dslove()
Kod zródłowy programu:
clc
clear all
syms x y;
y = dsolve('D2x + 4*Dx + 13*x=0' , 'x(0)=1' , 'Dx(0)=0');
pretty(y);
t=0:0.01:10;
w=subs(y);
plot(t,w,'r-');
xlabel('Czas[s]');
ylabel('Amplituda sygnalu');
title('Wykres rozwiazania rownania rozniczkowego');
grid;
2
Wynik programu:
rys1. Wykres rozwiązania równania różniczkowego dslove()
3
*Rozwiązanie równania z wykorzystaniem funkcji ode(45)
Kod zródłowy programu
Plik funkcja.m
function xdot=funkcja(t,x)
xdot=zeros(2,1);
xdot(1)=x(2);
xdot(2)=(-13*x(1)-4*x(2));
Plik rozw2.m
clc
clear all
function rozw2
t0=0;
clc
disp('Funkcja rozwiazuje rownanie rozniczkowe zwyczajne metoda Rungego -
Kutty');
disp('i podaje jego interpretacje graficzna: Postac rownania: ');
disp('x``+ 4*x`+ 14*x = 0');
x01=input ('Podaj wartosc x01 = ');
x02=input ('Podaj wartosc x02 = ');
tk=input ('Podaj czas symulacji tk = ');
x0=[x01 x02];
[t,x]=ode45('funkcja',t0,tk,x0,0.001,0);
plot(t,x(:,1),'g-');
xlabel('Czas [s]');
ylabel('Amplituda sygnalu');
title('Wykres rozwiazania rownania rozniczkowego');
grid;
4
Wynik programu:
rys2. Wykres rozwiązania równania różniczkowego ode(45)
5
* Rozwiązanie równania z wykorzystaniem programu Simulink
rys 3. Schemat układu w Simulink, symulującego rozwiązanie różniczkowe.
Wynik programu:
Rys4. Wykres graficzny rozwiązania równania różniczkowego w Simulink .
6
3. Porównanie i wnioski:
Każda z metod okazała się efektywna, pomimo, różnic w sposobie rozwiązywania niewielką różnicę
można zauważyć między wykresami wykorzystującymi metodę dsolve a metody ode45 i Simulink a. W
praktyce jednak metoda analityczna jest najdokładniejsza bowiem daje rzeczywisty wynik, pozostałe
metody są metodami numerycznymi i dają wyniki obarczone pewnym błędem, zależnym od kroku
całkowania.
7
Wyszukiwarka
Podobne podstrony:
Lab1 RoboWorksAPD lab1lab1 wprowadzenielab1 sprawkolab1(3)Szewczak Piotr Projekt 4 Przepływ materiałówLab1 PA podstawy PSCAD v2Lab1 1 R3 lab11Lab1 1 R1 lab11lab1Lab1 Obsługa obrazówLab1(1)Lab1 1 SW2 lab11MNM lab1[1]Lab1SWD kod lab1więcej podobnych podstron