To tylko jedna z 3 stron tej notatki. Zaloguj się aby zobaczyć ten dokument.
Zobacz
całą notatkę
Sprawozdanie z ćwiczenia
Temat: Całkowanie numeryczne
Opis badanego zagadnienia
Zadanie polegało na napisaniu programu wyznaczającego całki oznaczone funkcji:
1. f(x)= 4x3+3x2 2. f(x)= 3sin(x2)
przy użyciu 3 metod:
Prostokątów
Trapezów
Paraboli.
Wzory podanych funkcji umieściliśmy w poszczególnych M-plikach, które będą wywoływane w zadanych metodach:
Oto przykład jednego z równań:
function [y]=row1(x)
y=4*x.^3+3*x.^2;
Obliczenie całki oznaczonej można zrealizować w programie MATLAB przy użyciu funkcji quad. Wykorzystuje ona rekursywną adaptacyjna metodę Simsona. Poniżej przedstawione są wyniki całek poszczególnych funkcji f(x) na przedziale [-1,1].
1. f(x)= 4x3+3x2=2
2. f(x)= 3sin(x2)=1,8618
Metoda prostokątów
• Omówienie przygotowanego programu.
W metodzie prostokątów korzystamy z definicji całki oznaczonej Riemanna , w której wartość całki interpretowana jest jako suma pól obszarów pod wykresem krzywej w zadanym przedziale całkowania. Sumę tę przybliżamy przy pomocy sumy pól odpowiednio dobranych prostokątów. function [calka]=calkowanie(funkcja,a,b,n)
h=(b-a)/n; x=a+h/2:h:b-h/2;
y=feval(funkcja,x); calka=h*sum(y); Powyższy fragment kodu to funkcja obliczająca całkę opisaną metodą. Jako argumenty podawane są: a- dolna granica całkowania, b- górna granica całkowania oraz n - liczba przedziałów. Funkcja zawiera również parametr, do którego przypisywana jest długość przedziału. Wynik całki to suma pól prostokątów
Wykres przedstawia wyniki całek funkcji w przedziale[-1,1] w zależności od ilości przedziałów
10
25
50
100
1000
10000
. f(x)=4x3+3x2
2.6400
2.2464
2.1226
2.0604
2.0060
2.0006
f(x)=3sin(x2)
2.3883
2.0670
1.9635
1.9123
1.8667
1.8621
Metoda ta obarczona jest dosyć dużym błędem, ponieważ prostokąty niezbyt dobrze przybliżają pole pod wykresem funkcji. Błąd maleje wraz ze wzrostem n. Metoda trapezowa
• Omówienie przygotowanego programu.
... zobacz całą notatkę
Komentarze użytkowników (0)