Badanie stabilności numerycznej
Ćwiczenie to miało na celu porównaniu metod analitycznych z numerycznymi przy
rozwiązywania całki oznaczonej danej wzorem:
Gdzie: n – parametr naturalny z przedziału [1,8]
W tabeli 1.2 są umieszczone wartości całek w zależności od parametru n, tabela zawiera
również wartości wyliczone za pomocą m-pliku
1.Błąd! W dokumencie nie ma tekstu o podanym stylu..1 - Wyniki
Parametr n:
n=1
n=2
n=3
n=4
n=5
n=6
n=7
n=8
Wartość
całki:
0.0884
0.0580
0.0431
0.0343
0.0285
0.0243
0.0212
0.0188
Za pomocą m-pliku otrzymałem diagramy słupkowe(wykresy 1.3) przedstawiające
wartości obliczonych całek, m-plik został przeze mnie zmodyfikowany tak by dla każdej z
metod liczyć przypadki dla n od 1 do 8, należy pamiętać że pierwszy słupek przedstawia
wartość
, kolejne przedstawiają już odpowiednie wartości w zależności od parametru n:
Wartości całek w przypadku pierwszego wzoru liczone były rekurencyjnie zaczynając
od wartości dla n=1 czyli:
. Wzór drugi liczył rekurencyjnie w dół zaczynając od
1.Błąd! W dokumencie nie ma tekstu o podanym stylu..2 - Wyniki dla dokładności 10^3
uproszczonej wartości dla n=8, czyli:
. Łatwo zauważyć, że ograniczenie dokładności do 3
cyfr znaczących nie wpłynęło znacznie na poprawność wyników (odnosząc się do „wzór 1
bez ograniczeń” gdzie wartości są liczone z dużą precyzją) w przypadku wzoru nr.2,
natomiast dla pierwszego wzoru wyniki są przekłamane prawie sześciokrotnie. Jest to
spowodowane propagacją błędu zaokrąglenia jaki pojawia się na początku procedury
rekurencyjnej. Ta niedokładność wraz z każdym krokiem staje się coraz większa, w ósmym
kroku wynik różni się o cztery rzędy wielkości! Niemożna jednak powiedzieć, że algorytm
jest niestabilny ponieważ istnieje taka dokładność dla której wyniki są bliskie wzorcowym.
Przy dziewięciu cyfrach znaczących nie widać już różnicy w wynikach otrzymanych za
pomocą wzoru nr.1 i nr.2 (wykresy 1.4)
1.3 - Wykresy dla dokładności 10^9