POLITECHNIKA WROCŁAWSKA
ZAKŁAD AUTOMATYKI |
Skład grupy: Adam Koczorowski 177131 |
Wydział: Elektryczny Rok studiów: 3 Rok Akademicki : 2011/2012 Termin: Wtorek, 13:15. |
|
Metody numeryczne |
|||
Data wykonania ćwiczenia: 17.05.2012 |
Nr ćwiczenia: 9 Temat: Rozwiązywanie równań różniczkowych |
||
Prowadzący: Dr inż Piotr Pierz |
|
Cel ćwiczenia
Zapoznanie się z metodami rozwiązywania równań różniczkowych.
Kod wprowadzony do m-pliku Matlab`a:
clear all
clc
%% Wprowadzenie danych
A=0;
B=1;
h=0.005;
t=A:h:B;
%% Metoda prostok¹tów
Y=zeros(1,length(t));
Y1(1)=0;
f(1)=0.5*exp(-0.1*0).*sin(2*0)-0;
for k=1:(length(t)-1)
Y(k+1)=Y(k)+h*f(k);
f(k+1)=0.5*exp(-0.1*t(k+1)).*sin(2*t(k+1))-Y(k+1);
Y1(k+1)=Y1(k)+h*f(k+1);
end
figure(1)
plot(t,f)
grid on
hold on
plot(t,Y1,'r')
hold on
%% Metoda trapezów
Y=zeros(1,length(t));
Y2(1)=0;
f(1)=0.5*exp(-0.1*0).*sin(2*0)-0;
for k=1:(length(t)-1)
Y(k+1)=Y(k)+h*f(k);
f(k+1)=0.5*exp(-0.1*t(k+1)).*sin(2*t(k+1))-Y(k+1);
Y2(k+1)=Y2(k)+h*((f(k)+f(k+1))/2);
end
plot(t,Y2,'g')
title('Rozwiazanie graficzne rozwiazywania rowniania rozniczkowego')
xlabel('czas')
ylabel('wartosc')
legend('funkcja f','met. prostokatow','met. trapezow')
Efekt działania tego programu:
Wnioski:
Jak widać, różne metody prawie nie różnią się dokładnością.