Upload
vuongnguyet
View
232
Download
0
Embed Size (px)
Citation preview
1
matematyka inżynierska
wykład dla studentów Wydziału Mechanicznego
Politechniki Wrocławskiej
część 1 (Wiktor Stefurak)
Wrocław 2015 r.
2
Spis rzeczy 1 Funkcje dyskretne ............................................................................................................................. 8
1.1 Dyskretyzacja ............................................................................................................................ 9
1.1.1 Próbkowanie ...................................................................................................................... 10
1.1.2 Kwantyzacja ....................................................................................................................... 20
2 Interpolacja ..................................................................................................................................... 22
2.1 Interpolacja wielomianowa .................................................................................................... 23
2.1.1 Wielomian w postaci naturalnej ........................................................................................ 25
2.1.2 Interpolacja wielomianami Czebyszewa pierwszego rodzaju ............................................ 33
2.1.3 Interpolacja wielomianem Lagrange’a ............................................................................... 36
2.1.4 Wielomiany Newtona ........................................................................................................ 40
2.1.5 Schemat Aitkena. ............................................................................................................... 47
2.1.6 Schemat Neville’a. .............................................................................................................. 50
2.2 Interpolacja funkcjami trygonometrycznymi .......................................................................... 52
2.3 Interpolacja – Podsumowanie ................................................................................................ 55
3 Aproksymacja .................................................................................................................................. 56
3.1.1 Aproksymacja liniowa. ....................................................................................................... 63
3.1.2 Aproksymacja z wagami. .................................................................................................... 64
3.1.3 Aproksymacja - jakobiany. ................................................................................................. 67
3.1.4 Aproksymacja funkcjami innymi niż wielomiany. .............................................................. 69
3.1.5 Wybór postaci funkcji aproksymującej .............................................................................. 71
3.1.6 Aproksymacja - podsumowanie ......................................................................................... 80
4 Różniczkowanie funkcji dyskretnej ................................................................................................. 81
4.1 Pierwsza pochodna funkcji dyskretnej. ................................................................................... 83
4.2 Druga pochodna funkcji dyskretnej. ....................................................................................... 86
4.3 Pochodna funkcji dyskretnej - podsumowanie ....................................................................... 88
5 Całkowanie funkcji dyskretnej ........................................................................................................ 89
5.1 Metoda prostokątów: ............................................................................................................. 89
5.2 Modyfikowana metoda prostokątów ..................................................................................... 90
5.3 Metoda trapezów.................................................................................................................... 91
5.4 Metoda Simpsona 1/3 ............................................................................................................. 92
3
5.5 Metoda Simpsona 3/8 ............................................................................................................. 94
5.6 Metoda Monte Carlo .............................................................................................................. 95
6 Analiza widmowa. ........................................................................................................................... 96
6.1 Szeregi Fouriera. ..................................................................................................................... 98
6.1.1 Wyprowadzenie wartości współczynników Fouriera ....................................................... 100
6.2 Postać zespolona transformaty Fouriera .............................................................................. 105
6.3 Dyskretne przekształcenie Fouriera ...................................................................................... 107
7 Równania nieliniowe ..................................................................................................................... 112
7.1 Metoda bisekcji ..................................................................................................................... 112
7.2 Metoda "regula falsi" ............................................................................................................ 115
7.3 Metoda siecznych ................................................................................................................. 118
7.4 Metoda stycznych ................................................................................................................. 120
7.5 Metoda kolejnych przybliżeń ................................................................................................ 122
4
Spis przykładów
Przykład 1 - Interpolacja wielomianami naturalnymi ............................................................................ 30
Przykład 2 - Interpolacja wielomianami Czebyszewa ............................................................................ 34
Przykład 3 - Interpolacja wielomianami Czebyszewa ............................................................................ 35
Przykład 4 - Interpolacja wielomianem Lagrange'a ............................................................................... 39
Przykład 5 - I wzór Newtona .................................................................................................................. 44
Przykład 6 - Interpolacja wg I wzoru Newtona ...................................................................................... 45
Przykład 7 -Schemat Aitkena .................................................................................................................. 49
Przykład 8 - Schemat Neville'a ............................................................................................................... 51
Przykład 9 - Interpolacja wielomianami trygonometrycznymi .............................................................. 53
Przykład 10. Aproksymacja wielomianem kwadratowym ..................................................................... 59
Przykład 11. Aproksymacja z wagami .................................................................................................... 65
Przykład 12. Aproksymacja - Jakobiany ................................................................................................. 68
Przykład 13. Aproksymacja funkcja nieliniowa - przykład A .................................................................. 71
Przykład 14. Aproksymacja funkcja nieliniowa - przykład B .................................................................. 74
Przykład 15. Aproksymacja funkcja nieliniowa - przykład C .................................................................. 76
Przykład 16. Aproksymacja funkcja nieliniowa - przykład D .................................................................. 79
Przykład 17.Aproksymacja funkcja nieliniowa - przykład E ................................................................... 80
Przykład 18. Rozwinięcie w szereg Fouriera funkcji prostokątnej ....................................................... 102
Przykład 19. Rozwinąć w szereg Fouriera funkcję f(t)-t ....................................................................... 104
Przykład 20 - Bisekcja ........................................................................................................................... 113
Przykład 21. Metoda "regula falsi" ....................................................................................................... 117
Przykład 22. Metoda siecznych ............................................................................................................ 119
Przykład 23. Metoda stycznych ............................................................................................................ 122
Przykład 24. Metoda kolejnych przybliżeń ........................................................................................... 124
Spis Tabel
Tabela 1. Przykładowy ciąg wartości funkcji dyskretnej ........................................................................ 16
Tabela 2. Częstotliwości próbkowania dźwięku ..................................................................................... 19
Tabela 3. Liczba bitów przetwornika, a liczba poziomów kwantyzacji .................................................. 21
Tabela 4. Funkcja spróbkowana i warunki interpolacji .......................................................................... 23
Tabela 5. Krzywa nagrzewania się łożyska ............................................................................................. 25
Tabela 6. Dane wyjściowe ...................................................................................................................... 30
Tabela 7. Dane do interpolacji metodą wielomianów Czebyszew I rodzaju .......................................... 34
Tabela 8.Tablica progresywnych różnic skończonych dla węzłów. ........................................................ 40
Tabela 9. Przykładowa tabela różnic wstecznych .................................................................................. 41
Tabela 10. Funkcja spróbkowana z krokiem stałym............................................................................... 41
Tabela 11. I wzór Newtona - dane do obliczeń ...................................................................................... 44
Tabela 12. Tabel wartości dla przykładu interpolacji I wzorem Newtona ............................................. 45
Tabela 13. Różnice wsteczne ................................................................................................................. 47
Tabela 14. Schemat Aitkena ................................................................................................................... 48
Tabela 15 Interpolacja trygonometryczna - dane ................................................................................. 53
Tabela 16. Dane do aproksymacji z wagami .......................................................................................... 65
Tabela 17. Definicje pochodnych funkcji dyskretnej ............................................................................. 88
Tabela 18. Wyjściowa funkcja dyskretna i wyniki analizy widmowej .................................................. 108
5
Tabela 19. Sygnał harmoniczny jak poprzednio, próbkowany z częstotliwością 10,66667 Hz (okres
próbkowania 0,09375 s) ................................................................................................................................... 110
Tabela 20. Kolejne kroki iteracji dla przykładu 1.................................................................................. 114
Tabela 21. Kolejne kroki iteracji - metoda "regula falsi" ...................................................................... 118
Tabela 22. Wyniki obliczeń metodą siecznych ..................................................................................... 119
Tabela 23. Wyniki obliczeń metodą stycznych. .................................................................................... 122
Tabela 24. Kolejne kroki iteracji (metoda kolejnych przybliżeń) ......................................................... 125
Spis rysunków
Rys. 1. Obraz graficzny funkcji ciągłej i dyskretnej ................................................................................... 9
Rys. 2. Dyskretyzacja w pętli while... do oraz w w pętli od ... ilość powtórzeń ...................................... 11
Rys. 3. Wykres funkcji dyskretnej ze stałym okresem próbkowania ..................................................... 12
Rys. 4. Definicje funkcji trygonometrycznych ........................................................................................ 12
Rys. 5. Wykres funkcji sinus (ciągłej funkcji kąta) .................................................................................. 12
Rys. 6. Funkcja harmoniczna - zmiana dziedziny ................................................................................... 13
Rys. 7. Widmo amplitudowo- i fazowo-częstotliwościowe.................................................................... 13
Rys. 8. Widmo sygnału okresowego, będącego sumą sygnałów harmonicznych (poliharmonicznego)14
Rys. 9. Zniekształcenie obrazu dyskretnego funkcji ciągłej w zależności od okresu próbkowania
(sin(2*pi()*t/T); T=1s) ......................................................................................................................................... 14
Rys. 10. Niejednoznaczność próbkowania - przykład 1 ......................................................................... 15
Rys. 11. Niejednoznaczność próbkowania - przykład 2 ......................................................................... 15
Rys. 12. Niejednoznaczność próbkowania - przykład 3 ......................................................................... 15
Rys. 13. Przykłady błędnego próbkowania ............................................................................................ 16
Rys. 14. Niejednoznaczność odwzorowania funkcji podczas próbkowania ........................................... 16
Rys. 15. Przykład wykresu funkcji f(x) = - 3x^3 + 15x^2 – x – 15 przy różnym okresie próbkowania; a)
Δx = 0,08 ; b) Δx = 1)............................................................................................................................................ 18
Rys. 16. Funkcja skwantowana i przykład jej realizacji (pomiar wysokości lustra wody w zbiorniku)... 20
Rys. 17. Funkcja spróbkowana i skwantowana ...................................................................................... 21
Rys. 18. Funkcja ciągła zdyskretyzowana i jej funkcja interpolująca ..................................................... 22
Rys. 19. Krzywa nagrzewania się łożyska (dane w tabeli 5) ................................................................... 26
Rys. 20. Interpolacja krzywej nagrzewania się łożyska z tabeli 5 wielomianem dziewiątego stopnia (na
pierwszych 10 punktach) .................................................................................................................................... 26
Rys. 21. Efekt Runge'go .......................................................................................................................... 27
Rys. 22. Funkcja spróbkowana ze zmiennym okresem próbkowania .................................................... 27
Rys. 23. Interpolacja przedziałami (na 4 punktach) ............................................................................... 29
Rys. 24. Interpolacja liniowa .................................................................................................................. 30
Rys. 25. Ilustracja graficzna przykładu 1 ................................................................................................ 33
Rys. 26. Geometryczna interpretacja schematu Aitkena ....................................................................... 49
Rys. 27. Ilustracja parzystości funkcji ..................................................................................................... 53
Rys. 28. Wykres wielomianu trygonometrycznego dla funkcji z przykładu 9 ........................................ 54
Rys. 29. Ilustracja twierdzenia Stona-Weierstrassa. .............................................................................. 56
Rys. 30. Zbiór wartości uzyskanych z eksperymentów, dobrze aproksymowalny prostą. .................... 57
Rys. 31. Funkcja dyskretna dobrze aproksymowalna wielomianem drugiego stopnia ......................... 59
Rys. 32. Wykres funkcji aproksymującej G(x) dla przykładu 1 ............................................................... 61
Rys. 33. Wielomian aproksymujący trzeciego stopnia dla danych z przykładu 1 .................................. 62
Rys. 34. Wykres wielomianu aproksymującego czwartego stopnia dla danych z przykładu 1 .............. 62
6
Rys. 35. Wielomiany aproksymujące drugiego stopnia z wagami różnymi i równymi .......................... 67
Rys. 36. Obraz funkcji często aproksymowanej funkcjami: y(x)=ax; y(x)=axb; y(x)= a0+a1x+a2x2 ........... 71
Rys. 37. Wielomian aproksymujący y(x)= a0+a1x+a2x2 na tle pierwotnej funkcji dyskretnej.................. 72
Rys. 38. Funkcja typu y=b*a^x na tlE funkcji dyskretnej z poprzedniego przykładu ............................. 73
Rys. 39. Aproksymacja danych z przykładu A funkcją wykładniczą postaci y(x)=axb ............................. 74
Rys. 40. Obraz funkcji zazwyczaj aproksymowanej wielomianem stopnia drugiego lub trzeciego ....... 74
Rys. 41. Wykres kwadratowego wielomianu aproksymującego na tle pierwotnej funkcji dyskretnej.. 75
Rys. 42. Wykres wielomianu stopnia trzeciego na tle pierwotnej funkcji dyskretnej ........................... 76
Rys. 43. Funkcja dyskretna do przykładu C ............................................................................................ 76
Rys. 44. Funkcja aproksymująca y(x) = b +a log(x) na tle funkcji pierwotnej ......................................... 77
Rys. 45. Funkcja aproksymująca y=b*x^a .............................................................................................. 78
Rys. 46. Funkcja aproksymująca postaci y(x)=ax/(x+b) .......................................................................... 79
Rys. 47. Inny przykład postaci funkcji dyskretnej i jej aproksymaty ...................................................... 79
Rys. 48. Przykłady funkcji dyskretnych i zależności dobrze je aproksymujących................................... 80
Rys. 49. Geometryczna interpretacja pochodnej ................................................................................... 81
Rys. 50. Interpretacja różnicowa pochodnej ......................................................................................... 82
Rys. 51. Graficzna interpretacja gradientu............................................................................................. 82
Rys. 52. Pierwsza pochodna liczona z różnic progresywnych ................................................................ 84
Rys. 53. Pierwsza pochodna liczona z różnic wstecznych ...................................................................... 85
Rys. 54. Różnice wartości pochodnej dla tego samego węzła liczonej z różnic progresywnych i
wstecznych .......................................................................................................................................................... 85
Rys. 55. Różnice w wartościach pierwszych pochodnych liczonych z różnic skończonych .................... 86
Rys. 56. Geometryczna interpretacja całki oznaczonej .......................................................................... 89
Rys. 57. Całkowanie metodą prostokątów............................................................................................. 90
Rys. 58. Modyfikowana metoda prostokątów ....................................................................................... 90
Rys. 59. Całkowanie metodą trapezów .................................................................................................. 91
Rys. 60. Całkowanie metodą Simpsona 1/3 ........................................................................................... 94
Rys. 61. Całkowanie metodą Simpsona 3/8 ........................................................................................... 94
Rys. 62. Metoda Monte Carlo liczenia całki. .......................................................................................... 95
Rys. 63. Sygnał okresowy ....................................................................................................................... 96
Rys. 64. Drgania struny gitary ................................................................................................................ 97
Rys. 65.Wykresy funkcji z równań(1). .................................................................................................... 98
Rys. 66.Funkcja piłokształtna ................................................................................................................. 99
Rys. 67.Wykres wartości amplitud harmonicznych funkcji składowych .............................................. 101
Rys. 68. Funkcja prostokątna ............................................................................................................... 102
Rys. 69, Transformata odwrotna ......................................................................................................... 103
Rys. 70. Funkcja f(t)=t ........................................................................................................................... 104
Rys. 71. Odwrotna transformata Fouriera funkcji z Rys. 70 ................................................................ 105
Rys. 72. Okresowa funkcja dyskretna .................................................................................................. 107
Rys. 73. Widmo funkcji z Tabela 18 ...................................................................................................... 109
Rys. 74. Powielanie sygnału w DFT ...................................................................................................... 109
Rys. 75. Przykład funkcji okresowej - funkcja dyskretna i jej widmo amplitudowe ............................. 111
Rys. 76. Ilustracja twierdzenia Bolzano-Cauchy'ego ............................................................................ 112
Rys. 77. Schemat metody bisekcji ........................................................................................................ 113
Rys. 78. Ilustracja rozwiązania przykładu 1 .......................................................................................... 115
Rys. 79. Wybór krańców w "regula falsi" ............................................................................................. 116
7
Rys. 80. Metoda "regula falsi" – algorytm dla f’(x)*f(x)>0 ................................................................... 116
Rys. 81. Schemat graficzny metody siecznych ..................................................................................... 119
Rys. 82. Ilustracja graficzna i algorytm metody stycznych ................................................................... 121
Rys. 83 . Metoda kolejnych przybliżeń - algorytm zbieżny .................................................................. 123
Rys. 84. Metoda kolejnych przybliżeń - algorytm rozbieżny ................................................................ 123
Rys. 85. Metoda kolejnych przybliżeń .................................................................................................. 124
Rys. 86. Wybór postaci przkształcenia ............................................................................................... 125
8
1 Funkcje dyskretne
W dalszej części wykładu posługiwać będziemy się pojęciem funkcji, rozumianej jako zależność
pomiędzy pewnymi wielkościami fizycznymi.
Funkcją lub inaczej, odwzorowaniem zbioru X w zbiór Y nazywamy przyporządkowanie każdemu
elementowi ze zbioru X jednego elementu ze zbioru Y
f:X→ Y
Zbiór X nazywamy dziedziną funkcji f i oznaczamy go jako Df natomiast elementy
dziedziny nazywamy argumentami. Zbiór Y nazywamy zbiorem wartości funkcji
f:X→ Y
Zbiór wartości oznaczamy przez f(X)
łac. functio 'czynność' od fungi 'wykonywać; zarządzać; sprawować urząd';
(W. Kopaliński ”Słownik wyrazów obcych”)
Czasami jednak pojawi się pojęcie sygnału i zgodnie z teorią sygnałów (bo częściowo będziemy z niej
korzystać) przytaczamy definicję tego pojęcia:
SYGNAŁ proces zmian pewnej wielkości fizycznej lub stanu obiektu fizycznego w czasie lub
w przestrzeni.
Sygnał jest nośnikiem informacji.
Przywykliśmy do tego, że w algebrze korzystamy z funkcji ciągłych. Że wiele zjawisk w mechanice czy
wytrzymałości materiałów opisujemy funkcjami ciągłymi, ale jednak niemal zawsze mamy do czynienia
z funkcjami, które mają wartości tylko w ściśle określonych punktach. Tak dzieje się wtedy, gdy dokonujemy
obliczeń metodami numerycznymi (przy pomocy komputera). Żadna funkcja w reprezentacji komputerowej
(jeśli nawet jest analityczną funkcją ciągłą) nie ma wartości dla każdej wartości argumentu, bo obliczenia
nigdy by się nie skończyły.
Funkcje (sygnały) dyskretne otrzymujemy również jako wynik eksperymentu, ponieważ niemal
zawsze pomiary odbywają się przy pomocy mierników i rejestratorów cyfrowych lub na zasadzie okresowego
odczytu wskazań mierników analogowych.
Co więc nazywamy funkcją dyskretną lub sygnałem dyskretnym?
Co to jest funkcja już mówiliśmy, należy więc wyjaśnić pochodzenie drugiego członu nazwy:
Discretio – łac. ‘oddzielnie, rozróżnienie’ (W. Kopaliński ”Słownik wyrazów obcych”)
Dyskretny = nieciągły
9
Przyjmiemy następującą definicję:
Funkcją dyskretną yi = f(xi) nazywamy funkcję, która przyjmuje wartości yi tylko dla
określonych wartości argumentu xi, które nazywać będziemy węzłami. Wartości funkcji yi
nazywać będziemy wartościami węzłowymi.
W reprezentacji komputerowej każdą funkcję ciągłą zastępuje się ciągiem wartości funkcji dla
wybranych wartości argumentu. Podobnie wygląda postać funkcji zdjętej w pomiarach – Rys. 1
Rys. 1. Obraz graficzny funkcji ciągłej i dyskretnej
W przedziale znanych wartości argumentu xi-1 ≤ x ≤ xi wartość y(x) nie jest znana.
Proces zamiany funkcji ciągłej na dyskretną nazywamy dyskretyzacją.
Właściwie po co zamieniać znaną nam funkcje ciągłą na ciąg jej wartości? Funkcję ciągłą zazwyczaj
można różniczkować, całkować, a przede wszystkich z postaci analitycznej wyznaczyć można jej wartość dla
DOWOLNEJ wartości argumentu.
Dyskretyzacja funkcji ciągłej (jeśli rzeczywiście potrafimy opisać ją jedną zależnością) stosowana jest
wówczas, gdy koszt wyznaczenia jej wartości jest duży, czyli innymi słowy, gdy nakład pracy konieczny do
wyznaczenia wartości funkcji jest znaczny. Łatwiej jest wtedy zdobyć się na jednorazowy wysiłek
stabelaryzowania funkcji i odczytywania z niej wartości metodą interpolacji – o czym dalej.
Dyskretyzacja funkcji ciągłej ma również miejsce wtedy, gdy opis zjawiska jest bardzo złożony
i parametry funkcji uzyskiwane są z wielu równań i wreszcie wtedy, gdy zamierzamy sporządzić wykres
funkcji.
W przypadku eksperymentu jest to właściwie obecnie jedyna metoda odwzorowania.
1.1 Dyskretyzacja
Zamiana funkcji ciągłej w ciąg wartości liczbowych może odbywać się na kilka sposobów. Najczęściej
spotykanym w obliczeniach numerycznych jest próbkowanie, ale w pewnych sytuacjach zamiana ta może
odbywać się w procesie kwantowania lub w połączonych procesach próbkowania i kwantowania.
-10
-5
0
5
10
0 2 4 6
-10
-5
0
5
10
0 2 4 6
xi-1 -10
-5
0
5
10
0 2 4 6
xi
yi yi-1
10
1.1.1 Próbkowanie
Próbkowanie
Proces tworzenia funkcji dyskretnej (sygnału dyskretnego) reprezentującej funkcję
ciągłą za pomocą ciągu wartości nazywanych próbkami.
Liczbowe odwzorowanie funkcji ciągłej – dyskretyzacja – dokonywane droga obliczeń numerycznych
realizowanych w dowolny sposób (obliczenia „ręczne”, obliczenia przy pomocy algorytmu zapisanego
w konkretnym języku programowania czy obliczenia realizowane narzędziem uniwersalnym, zwanym
arkuszem kalkulacyjnym) polega na wyznaczeniu ciągu wartości yi = f(xi) dla argumentów xi, oddalonych od
siebie wartość Δxi = xi – xi-1.
Taki proces dyskretyzacji nazywamy próbkowaniem, a wartość Δxi nazywamy krokiem lub okresem
próbkowania, ponieważ co pewien krok - niekoniecznie stały – pobieramy próbkę wartości funkcji.
W obliczeniach numerycznych najczęściej posługujemy się stałym krokiem próbkowania, co wynika
z konstrukcji języków programowania. Kolejne wartości funkcji yi = f(xi) wylicza się w pętli, np. wg schematu
od… do, powiększając wartość argumentu. Algorytm takiego postępowania przedstawiono na Rys. 2.
Inny schemat pętli w językach programowania polega na wyznaczaniu kolejnych wartości argumentu
poprzez określona liczbę powtórzeń operacji dodawania stałego okresu próbkowania do wartości
początkowej argumentu (Rys. 2).
Ponieważ posłużyliśmy się pojęciem algorytmu, pora przytoczyć jego definicję.
ALGORYTM (W.Kopaliński „Słownik wyrazów obcych..”)
mat. formuła, wzór, schemat, program obliczania, mechanicznego rozwiązywania danego typowego
zadania mat.
inf. sposób rozwiązania jakiegoś zadania, który może być zrealizowany w postaci programu
komputerowego
śrdw. łac. algorismus ‘algorytm’ od arab. przydomka matematyka pers. abu-Dżafar Mohammed ibn
Mũsa al-Chwãrizmi (ok.852 r.) – przydomek Algoritmi
Definicja algorytmu wg encyklopedii PWN
Przepis rozwiązania danego zagadnienia matematycznego; metoda postępowania zawierająca
wszystkie formuły obliczeniowe, określająca kolejność ich stosowania, warunki, przy których stosuje
się tę lub inną formułę, zasady przechodzenia od jednego etapu procesu obliczeniowego do
następnych oraz informacje o rodzajach i własnościach odpowiednich obiektów matematycznych:
liczb, wektorów, macierzy, a także tablic, które są danymi początkowymi zadania lub pojawiają się
podczas obliczeń
11
Algorytm musi charakteryzować się następującymi cechami:
jednoznaczność - jednoznaczna droga postępowania wiodąca do wyznaczonego celu,
ma początek i koniec - (algorytm Euklidesa dla np. pary liczb 0 i 15 jest nieskończony),
efektywność - wymaganie, by wszystkie operacje były wystarczająco proste i by czas osiągania celu
był określony i skończony,
masowość - możliwość rozwiązywania całej klasy podobnych zadań (nie tylko dla jednego,
unikalnego zestawu danych).
START
Czytaj t0;deltat;k
i=0
t=t0+i*deltaty=f(t)
i>k
Pisz t,y
KONIECtak
Nie
START
Czytaj xp;xk
x=xp
x=x+deltax
x>xk
Pisz t,y
KONIECtak
Nie
x=xp
xp=10;deltax=10;xk=100;while x<=xk do begin x=x+deltax y=f(x) end
t0=10;deltat=10;k=10;for i=0 step 1 until k do begin t=10+i*delta y=f(x) end
Rys. 2. Dyskretyzacja w pętli while... do oraz w w pętli od ... ilość powtórzeń
W badaniach doświadczalnych próbkowanie polega na odczytaniu wartości mierzonej zazwyczaj co
pewien odstęp czasu Δt (niekoniecznie stały), również zwany okresem próbkowania .
Na Rys. 3 pokazano wykres funkcji dyskretnej y = f(x), uzyskany przez próbkowanie drogą obliczeń lub
pomiarów ze stałym krokiem próbkowania.
12
`
Rys. 3. Wykres funkcji dyskretnej ze stałym okresem próbkowania
W przypadku obliczeń numerycznych bywa, że okres próbkowania nie jest stały. Na krańcach
przedziałów czasami punkty się zagęszcza, by przy „wygładzaniu” funkcji uniknąć jej „rozbiegania” (Efekt
Runge'go), co będzie zilustrowane podczas omawiania zagadnienia interpolacji.
Próbkowanie w obliczeniach numerycznych jest najczęściej stosowaną metodą dyskretyzacji.
Wprowadza jednak ona ryzyko silnego zniekształcenia funkcji odwzorowywanej, dlatego próbkowanie musi
odbywać się z zastosowaniem pewnych kryteriów.
Zanim omówimy te błędy, zajmiemy się opisem ruchu harmonicznego, ponieważ występuje on
powszechnie w wielu zjawiskach w mechanice (gr. harmonia 'spojenie, łącze; związek; zgoda; harmonia').
Gwoli przypomnienia na Rys. 4 pokazano definicje funkcji trygonometrycznych.
Rys. 4. Definicje funkcji trygonometrycznych
Funkcję trygonometryczną sinus (lub cosinus, bo jest to ta sama funkcja przesunięta w fazie)
zilustrowano na Rys. 5 jako funkcję kąta. W praktyce opisywana jest często w dziedzinie czasu lub
odwzorowywana jeszcze inaczej. Punkty zaznaczone na wykresie są wartościami funkcji próbkowanej z
okresem próbkowania Δφ = 15°
Rys. 5. Wykres funkcji sinus (ciągłej funkcji kąta)
Zmiana dziedziny – z w dziedzinę czasu - opiera się na założeniu, że okres funkcji wynosi T.
φ
sin
(φ)=y
y0
x
0
y1
x
1
y2
x
2
y3
x
3
y4
x
4 Δx Δx Δx Δx
x
y
13
Rys. 6. Funkcja harmoniczna - zmiana dziedziny
Zakładając, że promień wodzący obraca sie ze stała prędkością kątową ω wiemy, że kąt φ
przebędzie w czasie
a pełny obrót wykona w czasie
.
Podstawiając otrzymujemy:
sin( ) = sin( t) = sin(
( 1)
Prędkość kątową ω nazywamy pulsacją lub częstością kołową, która zawiera informację o tym, ile
pełnych obrotów (o kąt 2π) wykonał promień wodzący w ciągu 1 sekundy.
Często posługujemy sie pojęciem częstotliwości f wyrażanej w Hz, która mówi o tym, ile okresów
funkcji mieści się w jednej sekundzie, czyli:
f=1
T
Podstawiając f do równania ( 1)mamy:
sin =sin(2 π f t) ( 2)
Zamiast wykresu w funkcji czasu, można posłużyć się przedstawieniem funkcji harmonicznej w
dziedzinie częstotliwości (widmo amplitudowo- częstotliwościowe – Rys. 7).
Rys. 7. Widmo amplitudowo- i fazowo-częstotliwościowe
T
Przebieg czasowy Widmo
fazowe - Widmo amplitudowe -
0 t
y A
f 0
f 0 =1/T 0 f
φ 0
?
?
f 0 =1/T
φ
φ 0 A 0 A
0
- 1 - 0,8 - 0,6 - 0,4 - 0,2
0 0,2 0,4 0,6 0,8
1
0 1 2 3 4 5 6 7 ?
14
Rys. 8. Widmo sygnału okresowego, będącego sumą sygnałów harmonicznych (poliharmonicznego)
Funkcji harmonicznej będziemy w dalszej części wykładu często używać do ilustracji pewnych
zagadnień.
Wspomniano już, że próbkowanie może bardzo zniekształcić obraz odwzorowywanej funkcji. Na Rys.
9 pokazano funkcję
o okresie T = 1 s próbkowaną z różnym okresem (częstotliwością).
Pierwszy wykres dość dobrze układa się w postać sinusoidy, natomiast drugi wykres ma wyraźny
charakter trójkątny, a pozostałe dwa wykresy sugerują raczej zależność liniową.
Rys. 9. Zniekształcenie obrazu dyskretnego funkcji ciągłej w zależności od okresu próbkowania (sin(2*pi()*t/T); T=1s)
Zniekształcenie postaci funkcji może powodować fałszywy jej opis. Jeśli zbiór wartości pochodzi np.
z pomiarów, możemy zmierzonej funkcji przypisać inną postać, niż ma ona w rzeczywistości. Na kolejnych
rysunkach (Rys. 11,Rys. 12,Rys. 13) jest ilustracja tego zjawiska.
-1,5
-1
-0,5
0
0,5
1
1,5
0 0,5 1 1,5 2 2,5 3
dt=0,1 s
-1,5
-1
-0,5
0
0,5
1
1,5
0 2 4 6
dt=0,25 s
-1
-0,5
0
0 10 20 30
dt=0,995 s 0
0,2
0,4
0,6
0 5 10 15 20 25 30
dt=1,003 s
15
-1,000
-0,800
-0,600
-0,400
-0,200
0,000
0,200
0,400
0,600
0,800
1,000
0 50 100 150 200 250
T=3 s; dt =2,85 s
-1,000
-0,800
-0,600
-0,400
-0,200
0,000
0,200
0,400
0,600
0,800
1,000
0 50 100 150 200 250
T=57 s; dt =2,85 s
Rys. 10. Niejednoznaczność próbkowania - przykład 1
-1,000
-0,800
-0,600
-0,400
-0,200
0,000
0,200
0,400
0,600
0,800
1,000
0 50 100 150 200 250
T=3 s; dt = 2,75 s
-1,000
-0,800
-0,600
-0,400
-0,200
0,000
0,200
0,400
0,600
0,800
1,000
0 50 100 150 200 250
T=33,1 s; dt = 2,75 s
Rys. 11. Niejednoznaczność próbkowania - przykład 2
-0,4000
-0,3500
-0,3000
-0,2500
-0,2000
-0,1500
-0,1000
-0,0500
0,0000
0 50 100 150 200 250 300
Funkcja harmoniczna o okresie T = 3sy=sin(2π/3*t) dt = 2,998 s
-0,400
-0,350
-0,300
-0,250
-0,200
-0,150
-0,100
-0,050
0,000
0 50 100 150 200 250 300
liniowa y=-0,40291/296,8*t ; dt =2,998 s
Rys. 12. Niejednoznaczność próbkowania - przykład 3
16
-0,400
-0,350
-0,300
-0,250
-0,200
-0,150
-0,100
-0,050
0,000
0 50 100 150 200 250 300
Funkcja harmoniczna o okresie T = 3sy=sin(2π/3*t) dt = 2,998 s
0,000
0,050
0,100
0,150
0,200
0,250
0,300
0,350
0,400
0 50 100 150 200 250 300
Funkcja liniowa o równaniu y = 0,40291/296,8*t dt = 3,002
Rys. 13. Przykłady błędnego próbkowania
Próbkowanie sygnału możemy prowadzić z dowolną częstotliwością. Jedynym ograniczeniem
fizycznym są możliwości naszego sprzętu (gdy mowa o eksperymencie) lub dysponowalny czas obliczeń. Nie
każda jednak częstotliwość próbkowania pozwoli na odtworzenie oryginalnego sygnału.
Jeśli dysponujemy tylko próbkami sygnału, nie znając postaci funkcji wyjściowej, może się okazać, że
próbki te mogą być niereprezentatywne. Jakaś funkcja może "udawać" drugą, podszywając się pod nią.
Wyobraźmy sobie, że wartości zdjęte w pomiarach układały się w taki ciąg, jak w Tabela 1:
Tabela 1. Przykładowy ciąg wartości funkcji dyskretnej
xi 1 2 3 4 5 6 7 8 9
yi 0 0,866 0,866 0 -0,866 -0,866 0 0,866 0,866
Wiemy, że jest to sinusoida - jednak jaka? Pasuje tu zarówno sinusoida o okresie T=7s, jak i sinusoida
T1 = 1s (Rys. 14). Który więc sygnał został zmierzony? Zapewne nasza interpretacja wskazywałaby na funkcję
"wolniejszą", choć z fizyki zjawiska wynika, że była to funkcja "szybsza".
Rys. 14. Niejednoznaczność odwzorowania funkcji podczas próbkowania
-1
-0,8
-0,6
-0,4
-0,2
0
0,2
0,4
0,6
0,8
1
0 2 4 6 8
-1,5
-1
-0,5
0
0,5
1
1,5
0 2 4 6 8
dyskretna
sinus 1
-1,5
-1
-0,5
0
0,5
1
1,5
0 2 4 6 8
dyskretna
sinus 1
17
Z tego przykładu wynika, że próbkowanie ze zbyt niską częstotliwością prowadzi do błędnej
interpretacji częstotliwości sygnału odtworzonego. Przyjęliśmy niższą wartość od rzeczywistej.
Zjawisko ukrywania się funkcji pod inną postacią zgodną z wartościami węzłowymi nazywamy
aliasingiem.
Twierdzenie Kotielnikowa-Shannona, znane również jako twierdzenie Whittakera-Nyquista-
Kotielnikova-Shannona lub twierdzenie o próbkowaniu, mówi o tym, jakie warunki należy spełnić podczas
próbkowania sygnału ciągłego y(t), by z uzyskanego sygnału dyskretnego yi(ti) można było wiernie ten sygnał
odtworzyć.
Warunkiem transformacji odwrotnej jest spełnienie warunku:
Częstotliwość próbkowania jako odwrotność okresu próbkowania, czyli odstępu w czasie pomiędzy
kolejnymi próbkami
musi być co najmniej dwukrotnie wyższa od najwyższej częstotliwości
w sygnale obserwowanym.
Zgodnie z twierdzeniem Shannona, w celu uniknięcia aliasingu, sygnał musi być próbkowany
z częstotliwością większą niż dwukrotność najwyższej częstotliwości występującej w sygnale. Można je
zinterpretować również tak, że maksymalna częstotliwość, jaką da się odtworzyć z sygnału próbkowanego
z częstotliwością fpr jest połową tej częstotliwości próbkowania.
TWIERDZENIE O PRÓBKOWANIU
Sygnał ciągły może być ponownie odtworzony z sygnału dyskretnego, jeśli był próbkowany z
częstotliwością co najmniej dwa razy większą od granicznej częstotliwości swego widma.
Maksymalna częstotliwość sygnału, która może być właściwie (bez aliasingu) zinterpretowana przy
określonej częstotliwości próbkowania nosi nazwę częstotliwości Nyquista i jest równa połowie
częstotliwości próbkowania.
Twierdzenie Kotielnikowa-Shannona mówi o tym, jaką najwyższą częstotliwość może mieć sygnał
próbkowany z zadaną częstotliwością, by można było odtworzyć go bez zniekształceń.
Twierdzenie mówi o tym, jaka powinna być częstotliwość próbkowania, gdy znamy najwyższą
składową częstotliwości w sygnale mierzonym.
KRYTERIUM NYQUISTA
Próbkując sygnał z określoną częstotliwością można wiernie zidentyfikować tylko te częstości,
które są przynajmniej dwukrotnie mniejsze od częstotliwości próbkowania.
Najwyższą, poprawnie rejestrowaną częstotliwością jest , zwana częstotliwością Nyquista
18
Sygnały o częstotliwości wyższej od częstotliwości Nyquista ukażą się zniekształcone w postaci
„aliasów”, o częstotliwościach pomiędzy 0 a .
Częstotliwość aliasu wyznaczyć można z zależności:
gdzie:
fa – częstotliwość aliasu,
n - liczba całkowita,
fpr – częstotliwość próbkowania,
f – częstotliwość sygnału mierzonego,
przy czym n*fpr jest wielokrotnością częstotliwości próbkowania, najbliższą częstotliwości sygnału
mierzonego.
Jeśli próbkujemy z częstotliwości fpr= 100 Hz sygnał o częstotliwości f =70 Hz, to ze wzoru Nyquista
wiemy, że nasz sygnał leży w paśmie nie do odtworzenia. Zamiast naszego sygnału zobaczymy jego alias:
fa = |1*100 - 70| = 30 Hz
ALIASING
Nieodwracalne zniekształcenie sygnału w procesie próbkowania spowodowane niespełnienieniem
warunku Nyquista.
Niejednoznaczności związane z próbkowaniem dotyczą nie tylko funkcji harmonicznych.
Częstym przypadkiem jest również "gubienie" miejsc zerowych lub ekstremów lokalnych. Przykład
takiej deformacji pokazano na Rys. 15.
-30
-20
-10
0
10
20
30
40
50
-2 -1 0 1 2 3 4 5 6
y(x)=-3x^3+15x^2-x-15; dx = 0,08
-200000
-150000
-100000
-50000
0
50000
100000
150000
200000
250000
-60 -40 -20 0 20 40 60
y(x)=-3x^3+15x^2-x-15; dx = 1
Rys. 15. Przykład wykresu funkcji f(x) = - 3x^3 + 15x^2 – x – 15 przy różnym okresie próbkowania; a) Δx = 0,08 ; b) Δx = 1)
Częstotliwość próbkowania związana jest z częstotliwością analizowanego sygnału. Na przykład w
analizie dźwięku, ze względu na cechy zmysłu słuchu (inne zakresy częstotliwości w przypadku mowy,
muzyki...) stosuje się różne częstotliwości próbkowania (Tabela 2).
a) b)
19
Tabela 2. Częstotliwości próbkowania dźwięku
Czętotliwość Przenaczenie sygnału
8 kHz - telefonia
16 kHz - komunikacja medialna
22,5 kHz - komputery osobiste
32 kHz - cyfrowe radio i telewizja
44,1 kHz - płyty CD audio
48 kHz - magnetofony cyfrowe DAT, (Digital Audio Tape),HDTV
96 kHz - DVD
Próbkować można z dowolnie wysoką częstotliwością. Ograniczeniem są jedynie możliwości sprzętu
i dostępna przestrzeń dyskowa.
20
1.1.2 Kwantyzacja
Próbkowanie nie jest jedyną metodą dyskretyzacji. W obliczeniach i pomiarach stosuje się również
inny sposób zamiany funkcji ciągłej na dyskretną. Sposób ten nazywa się kwantyzacją (od łac. quantum ‘ile’ -
W. Kopaliński ”Słownik wyrazów obcych").
Kwantyzacja Nieodwracalne nieliniowe odwzorowanie statyczne zmniejszające dokładność danych przez
ograniczenie ich zbioru wartości. Zbiór wartości wejściowych dzielony jest na rozłączne przedziały.
Każda wartość wejściowa wypadająca w określonym przedziale jest w wyniku kwantyzacji
odwzorowana na jedną wartość wyjściową przypisaną temu przedziałowi, czyli tak zwany poziom
reprezentacji. W rozumieniu potocznym proces kwantyzacji można przyrównać do "zaokrąglania"
wartości do określonej skali.
Wartości wejściowe muszą być jednoznacznie kojarzone z poziomami reprezentacji, dlatego
przedział dopuszczalnych wartości wejściowych jest dzielony na podprzedziały. Punkty podziału
nazywamy poziomami decyzyjnymi, których liczba jest o jeden mniejsza od liczby poziomów
reprezentacji. Każda wartość należąca do danego podprzedziału jest zastępowana przez poziom
reprezentacji przypisany do danego przedziału. Poziomem reprezentacji może być górna lub dolna
granica przedziału, jednak najczęściej jest nią wartość ze środka przedziału. Powoduje to
minimalizację błędu średniokwadratowego, ale pod warunkiem, że rozkład prawdopodobieństwa
wartości wejściowych jest stały w danym przedziale. Warunek ten jest w przybliżeniu spełniony, jeśli
szerokości przedziałów kwantyzacji są "bardzo małe".
Przykładem kwantyzacji jest pokazany na Rys. 16 sposób pomiaru objętości cieczy w zbiorniku.
Rys. 16. Funkcja skwantowana i przykład jej realizacji (pomiar wysokości lustra wody w zbiorniku)
Omówione procedury można skojarzyć. Funkcja może być spróbkowana i skwantowana, i wtedy
wyraźnie widoczny jest problem kojarzenia wartości próbki z poziomem decyzyjnym.
t
V
(t)
t
i
V
i(ti) V
i(ti-1)
t
i-1
Źr
ód
ło
świa
tła Fo
to
elem
ent
21
Rys. 17. Funkcja spróbkowana i skwantowana
Kwantowanie funkcji ciągłej drogą obliczeń numerycznych jest procesem złożonym. Najpierw funkcję
się próbkuje (taki jest charakter obliczeń numerycznych), a potem kwantuje, zaliczając próbkę do
konkretnego poziomu decyzyjnego. Należy pamiętać o tym, że takie odwzorowanie jest odwzorowaniem
stratnym - nie można dokładnie odtworzyć funkcji (sygnału skwantowanego).
Odwzorowanie to jest tym bliższe oryginału, im więcej jest poziomów decyzyjnych. W pomiarach
związane jest to z ilością bitów przetwornika analogowo-cyfrowego (czyli ilością poziomów możliwych do
zapisania) - tabela 1.
Tabela 3. Liczba bitów przetwornika, a liczba poziomów kwantyzacji
Liczba bitów n Liczba poziomów
4 24 =16
8 28 = 128
12 212 = 4096
16 216 = 65536
Δx
Δy
y
(t)
t
22
2 Interpolacja
Funkcja dyskretna yi= f(xi) ma wartości określone dla skończonego ciągu wartości argumentu xi,
zwanych węzłami:
n = 0,1,2,…n
Dla innych niż węzłowe wartości argumentu x wartość funkcji y = f(x) nie jest określona. Nie jest
również określona dla wartości argumentu spoza zbioru węzłów.
Wartość funkcji y=f(x) można wyznaczyć dla dowolnej wartości argumentu z przedziału wartości
znanych, stosując interpolację.
INTERPOLACJA
Zastąpienie funkcji dyskretnej funkcją ciągłą (zwaną funkcją interpolującą), która
zachowuje węzłowe wartości funkcji dyskretnej.
Funkcja interpolującą w przedziałach pomiędzy węzłami najczęściej przebiega inaczej, niż pierwotna
funkcja ciągła, którą zamieniono na ciąg wartości w procesie dyskretyzacji.
Rys. 18. Funkcja ciągła zdyskretyzowana i jej funkcja interpolująca
W procesie interpolacji przyjmuje się postać funkcji interpolującej i najczęściej wykorzystuje się
wielomiany algebraiczne, trygonometryczne lub funkcje wymierne.
Dyskretyzacja funkcji ciągłej f(x) ma miejsce często wtedy, gdy funkcja jest analitycznie złożona i koszt
wyznaczenia wartości funkcji dla konkretnej wartości argumentu jest znaczny. Opłaca się wówczas funkcje
stabelaryzować w wybranym zakresie wartości argumentu. Jeżeli zajdzie potrzeba wyznaczenia wartości
funkcji dla argumentu x spoza znanego przedziału <xmin, xmax>, wówczas interpolacja będzie „tańsza” niż
wyznaczenie wartości funkcji f(x) dla konkretnego x. Zabieg taki może wymagać mniejszego nakładu pracy,
ale wyznaczona wartość zawsze obarczona jest błędem.
Interpolacje stosujemy również i wtedy, gdy opis matematyczny jakiegoś zjawiska nie jest możliwy.
Gdy zagadnienie jest opisane np. hierarchicznie – parametry wynikają z wartości funkcji pośrednich –
x0
x1
x2
y1
y2
y
Funkcja interpolująca
Funkcja pierwotna f(x)
x x3
xi
xn
x
y0
y
y3
yi
yn
Zdyskretyzowana funkcja f(x)
23
a zależność końcowa niemożliwa jest do scalonego opisu analitycznego. Jedyna droga pozostaje analiza
numeryczna i wynikiem jej zawsze jest funkcja dyskretna. Powtarzanie tak złożonej procedury wymaga zbyt
dużego kosztu, więc obliczenia przeprowadzamy raz, a wartości pośrednie dostajemy z funkcji interpolującej.
Interpolację stosujemy więc wtedy, gdy:
trzeba zastąpić funkcję złożoną, dla której wyznaczenie wartości wymaga dużego nakładu pracy,
prostszą,
należy obliczyć wartości funkcji dyskretnej dla argumentów innych niż węzły,
trzeba rozwiązać równanie f(x) = 0 (interpolacja odwrotna).
2.1 Interpolacja wielomianowa Mamy ciąg wartości funkcji y = f(x), określonych dla konkretnych wartości argumentu z zadanego
przedziału <x0, xn>, czyli mamy (n+1) punktów. Szukamy funkcji ciągłej W(x) o zadanej postaci, która w
węzłach przyjmie ich wartości. Mamy więc układ (n+1) równań, z którego wyznaczyć można (n+1) wartości.
Problem polega więc tylko na tym, jak przyjmiemy postać funkcji W(x), która musi mieć (n+1) parametrów, by
wykorzystać pełny układ równań.
Tabela 4. Funkcja spróbkowana i warunki interpolacji
x y W(x)
x0 y0 = f(x0) W(x0) = y0
x1 y1 = f(x1) W(x1) = y1
… … …
xi yi = f(xi) W(xi) = yi
… … …
xn yn = f(xn) W(xn) = yn
W procesie interpolacji najczęściej przyjmujemy wielomianową postać funkcji interpolującej ( 3)
( 3)
Z układu równań (Tabela 4) można wyznaczyć wartości współczynników ai. Wielomian uogólniony ma
więc postać .
( 4 )
Funkcje nazywamy funkcjami bazowymi, a współczynnikami wielomianu.
Równanie ( 3) można zapisać macierzowo ( 5)
( 5)
gdzie:
24
Macierz funkcji bazowych Φ(x) jest wektorem wierszowym o wymiarach (1x(n+1)), natomiast macierz
współczynników A jest wektorem kolumnowym o wymiarach ((n+1)x1).
Wychodząc z warunku równości wartości wielomianu interpolującego W(xi) z wartościami węzłowymi
yi ( 6) układ równań z Tabela 4 sprowadzić można do postaci ( 7).
( 6)
( 7)
gdzie :
X - macierz interpolacyjna o rozmiarach (n+1) x (n+1)
A - macierz współczynników - wektor kolumnowy o (n+1) wierszach
Y - macierz wartości w węzłach funkcji interpolowanej - wektor kolumnowy o (n+1) wierszach
Jeżeli wyznacznik macierzy X ma wartość różną od zera:
to wyznaczyć można wartości macierzy współczynników z równania ( 8).
( 8)
Podstawiając wyznaczone wartości A do równania ( 7) otrzymamy ( 9).
( 9)
25
2.1.1 Wielomian w postaci naturalnej
W interpolacji problemem jest wybór postaci funkcji bazowych . Przyjmiemy najprostszą
z postaci - naturalną ( 10):
( 10)
wielomian interpolujący będzie miał postać ( 11):
( 11)
Macierz interpolacyjna ma więc postać ( 12):
( 12)
Wiemy, że układ równań ( 8) ma jedno rozwiązanie względem ai, jeśli wyznacznik macierzy X≠0.
Rozwiązaniem jest macierz ( 13) współczynników A:
( 13)
Interpolacja dużych zbiorów danych daje niestety duże macierze, które trzeba odwrócić. Czasami
macierze te są źle uwarunkowane i podczas ich odwracania występują błędy.
Przykładem takich danych jest zbiór wartości z Tabela 5.
Tabela 5. Krzywa nagrzewania się łożyska
czas [s]
temp. Łożyska [°C]
czas [s]
temp. Łożyska [°C]
czas [s]
temp. Łożyska [°C]
czas [s]
temp. Łożyska [°C]
czas [s]
temp. Łożyska [°C]
0 21,6 5 31,5 10 46,7 18 79,2 23 83,5
1 21,8 6 34,0 11 50,7 19 81,6 24 83,6
2 24,1 7 37,3 15 70,2 20 83,3 25 83,6
3 25,7 8 39,9 16 74,3 21 83,3
4 28,5 9 42,7 17 77,3 22 8,4
26
Bardzo wysoki stopień wielomianu i asymptotyczny wzrost temperatury ustalającej się na poziomie
ok. 84°C spowodowały olbrzymie błędy przy odwracaniu macierzy. W efekcie wielomian interpolacyjny, który
miał przechodzić przez wszystkie wartości węzłowe zupełnie się od nich odsunął (Rys. 19).
Rys. 19. Krzywa nagrzewania się łożyska (dane w tabeli 5)
Dla tego samego zbioru wartości obniżenie stopnia wielomianu do dziewiątego (10 pierwszych
węzłów dało dobre rozwiązanie, przedstawione na rys.
Rys. 20. Interpolacja krzywej nagrzewania się łożyska z tabeli 5 wielomianem dziewiątego stopnia (na pierwszych 10 punktach)
Innym zjawiskiem jest tzw. efekt Runge’go (Rys. 21). Polega ona na tym, że w przypadku
wielomianów wysokiego stopnia następuje „rozfalowania” wartości przy krańcach przedziału. Zjawisko to
widoczne jest wtedy, gdy węzły rozłożone są równomiernie (stały okres próbkowania). Jeśli węzły przy
krańcach przedziału się zagęści umieszczając je w punktach Czebyszewa (o czym później), wówczas tego
efektu można uniknąć. Na Rys. 21 pokazano funkcję dyskretną uzyskaną poprzez próbkowanie ze stałym
okresem funkcji y(x) i wielomian ją aproksymujący W(x). Rys. 22 pokazuje tę samą funkcję y(x), ale
próbkowaną ze zmiennym okresem (węzły w punktach Czebyszewa) i jej wielomian aproksymujący W(x).
W obu przypadkach stopień wielomianu jest ten sam (wielomiany naturalne).
0
50
100
150
200
250
300
350
400
0 5 10 15 20 25 30
Tem
pe
ratu
ra ło
żysk
a [s
top
ni C
]
Czas [s]
W(x)
yi(xi)
20,0
25,0
30,0
35,0
40,0
45,0
50,0
-1 1 3 5 7 9 11
temp. Łożyska [°C]
w(x) 10pkt
27
Rys. 21. Efekt Runge'go
Rys. 22. Funkcja spróbkowana ze zmiennym okresem próbkowania
2.1.1.1 Punkty Czebyszewa
Optymalne położenia węzłów stanowią zera wielomianów Czebyszewa pierwszego rodzaju, których
postać trygonometryczna podana jest niżej :
Zera wielomianów (czyli wartości węzłów) wyznacza się z zależności:
gdzie:
n - liczba punktów;
m - indeks punktu.
-15
-10
-5
0
5
10
15
20
25
30
35
0 2 4 6 8 10 12
Stały okres próbkowania
W(x)
y
0
5
10
15
20
25
30
35
0 2 4 6 8 10 12
Punkty Czebyszewa
W(x)
y-czebyszewa
dyskretna1
28
Ponieważ punkty Czebyszewa należą do przedziału <-1,1> a nasza funkcja ma wartości określone w
przedziale węzłów <a,b> trzeba wartości xm przeskalować.
Skalowanie z przedziału <-1,1> na <a,b>:
Ostatecznie:
Skalowanie z przedziału <a,b> na <-1,1>:
Optymalne położenie węzłów można wyznaczyć wg wzoru:
Węzły są zagęszczone na krańcach przedziału.
Ze względu na kłopoty z odwracaniem dużych macierzy oraz na efekt Runge'go, który w pomiarach
jest nie do uniknięcia z powodu niemal powszechnej rejestracji wartości mierzonych co stały okres czasu,
taktowany zegarem urządzeń pomiarowych, interpolację przeprowadza się na ograniczonej liczbie węzłów,
na których rozpina się wielomian interpolacyjny. Zmniejszenie stopnia wielomianu oznacza też mniejszą
macierz do odwrócenia. W zasadzie nie stosuje się stopni wyższych niż piąty. Oznacza to jednak, że cały zbiór
węzłów aproksymować należy przedziałami, co w konsekwencji prowadzi do innych współczynników
wielomianu dla każdego z interpolowanych zakresów (Rys. 23). Oczywiście z wyznaczonego wielomianu
interpolacyjnego skorzystać można tylko w zakresie węzłów, użytych do interpolacji. poza tym zakresem
wielomian nie przechodzi przez wartości węzłowe.
Patrząc na Rys. 23 dochodzimy do wniosku, że funkcję interpolującą można "posklejać" z fragmentów
różnych wielomianów wyznaczonych dla kolejnych, przyległych podzbiorów wartości węzłowych. Tak właśnie
powstała metoda funkcji sklejanych, o której już mówić nie będziemy.
29
-80
-70
-60
-50
-40
-30
-20
-10
0
10
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
próbki
W(x) dla 4 punktów
-2
0
2
4
6
8
10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
próbki
W(x) dla 4 punktów
0
1
2
3
4
5
6
7
8
9
10
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
próbki
W(x) dla 4 punktów
0
10
20
30
40
50
60
70
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
próbki
W(x) dla 4 punktów
Rys. 23. Interpolacja przedziałami (na 4 punktach)
2.1.1.2 WADY INTERPOLACJI WIELOMIANAMI NATURALNYMI
Procedura wyznaczania wartości współczynników wymaga odwracania macierzy interpolacyjnej.
Odwracanie macierzy jest operacją kosztowną i podczas odwracania macierzy dużych stopni
występują błędy.
Macierz interpolacyjna nie zawsze jest dobrze uwarunkowana
punkt startowy 2
punkt startowy 8
punkt startowy 12
punkt startowy 20
30
2.1.1.3 Interpolacja liniowa
Jeżeli stopień wielomianu ograniczymy do pierwszego:
wówczas mówimy o interpolacji liniowej, która stosowana jest dość często. Dokładność tego
odwzorowania silnie zależy od wielkości kroku próbkowania. Przy małym kroku daje zazwyczaj akceptowalną
dokładność.
Wartości współczynników wielomianu możemy wyznaczyć jak poprzednio, możemy również policzyć
je wprost z równania prostej (Rys. 24).
Rys. 24. Interpolacja liniowa
Przykład 1 - Interpolacja wielomianami naturalnymi
Dla ilustracji różnych metod interpolacji dokonamy "ręcznych" obliczeń na tym samym zbiorze
wartości. Zakładamy, że mamy funkcję zdyskretyzowaną, której wartości zebrane są w Tabela 6 .
Tabela 6. Dane wyjściowe
węzły wartości węzłowe
x0 1 y0 4
x1 2 y1 8
x2 3 y2 3
Szukamy wyrazów macierzy A z równania ( 14):
( 14)
gdzie:
By układ równań ( 14) miał rozwiązanie, należy sprawdzić, czy wyznacznik macierzy X różny jest od
zera. Potrzebny jest on również do znalezienia macierzy odwrotnej X-1.
xi xi+1 x
yi
y
yi+1
y(x)
x
31
WYZNACZANIE MACIERZY ODWROTNEJ
gdzie: det X - wyznacznik macierzy X DT - transponowana macierz dopełnień algebraicznych macierzy X
DOPEŁNIENIE ALGEBRAICZNE MACIERZY
W algebrze liniowej dopełnienie algebraiczne elementu xij danej macierzy kwadratowej X stopnia n
jest iloczynem (-1)i+j oraz minora Mij czyli wyznacznika podmacierzy stopnia (n-1) powstałego z usunięcia i-
tego wiersza oraz j-ej kolumny macierzy X.
WYZNACZNIK MACIERZY
Wyznacznikiem nazywamy takie odwzorowanie, które danej macierzy X = [xij]n×n przyporządkowuje
dokładnie jedną liczbę rzeczywistą detX.
( 15)
Obliczamy wyznacznik macierzy X. Ponieważ jest to macierz (3x3), wykorzystamy metodę Sarrusa
(Uwaga - tylko dla macierzy 3x3)
Jeśli mamy macierz większą, darujmy sobie "ręczne" rachunki. Jeśli możemy skorzystać z
Excela, to wyznacznik obliczamy przy pomocy funkcji
WYZNACZNIK.MACIERZY (zakres)
pamiętając, że jest to funkcja tablicowa, którą wprowadza się do zaznaczonego obszaru
i kończy wprowadzanie sekwencją klawiszy CTR+SHIFT+ENTER
Wartość tego wyznacznika obliczyć można również z definicji ( 15):
Wyznacznik jest różny od zera - układ równań ma jedno rozwiązanie ze względu na ai. Odwracamy
macierz X. W tym celu obliczamy dopełnienia algebraiczne wszystkich wyrazów macierzy X.
32
Mając wszystkie wyrazy macierzy dopełnień można znaleźć jej postać transponowaną, potrzebną do
wyznaczenia macierzy X-1.
;
;
;
Obliczamy macierz współczynników A.
Ostatecznie wielomian interpolacyjny ma postać ( 16):
( 16)
Węzły funkcji dyskretnej należą do przedziału x<1,3> i dla dowolnej wartości z tego przedziału
wyznaczyć możemy wartość W(x), która jest przybliżoną wartością funkcji dyskretnej dla danego x. Jeśli
potrzebna nam jest przybliżona wartość funkcji y dla x=2,5, obliczamy ją z wielomianu interpolującego:
Na Rys. 25 pokazano wykres funkcji dyskretnej, wielomian interpolujący oraz wyznaczoną,
interpolowaną wartość y(2,5). Oczywiście gałąź krzywej na lewo od 1 (w kierunku wskazanym strzałką)
NIE MOŻE BYĆ STOSOWANA do wyznaczania przybliżonej wartości funkcji y(x).
Podobnie jest z obszarem na prawo od 3 (w kierunku wskazanym strzałką). Wielomian interpolacyjny
miał przechodzić przez zadane węzły. I na tym polega istota interpolacji.
33
Rys. 25. Ilustracja graficzna przykładu 1
2.1.2 Interpolacja wielomianami Czebyszewa pierwszego rodzaju
Poprzednio wspomnieliśmy, że interpolacja wielomianami wysokich stopni prowadzi do efektu
Rungego, który można uniknąć stosując zmienny krok próbkowania i że rozwiązaniem może być przyjęcie
węzłów w zerach wielomianów Czebyszewa pierwszego rodzaju. Wielomian interpolacyjny wyraża sie
klasycznym wzorem ( 17):
( 17)
Funkcje bazowe są wielomianami Czebyszewa I rodzaju. W postaci rekurencyjnej, wygodnej
w obliczeniach, opisuje się je następującymi wzorami ( 18):
( 18)
Wielomiany te mają wartości określone dla .
Jeśli funkcja dyskretna rozpięta jest na węzłach , to należy je przeskalować:
Przeliczając "w drugą stronę" mamy:
Oczywiście zgodnie z założeniami przekształcenia wielomian musi spełniać warunki równości
w węzłach z funkcją dyskretną:
Współczynniki wielomianu wyznaczane są jak np. w przypadku wielomianów naturalnych z układu
równań:
6,625
-4
-2
0
2
4
6
8
10
0 1 2 3 4
Dyskretna yi(xi)
W(x)
wartość interpolowana
34
Ponieważ wartości węzłów mieszczą sie w granicach <-1,1>, więc wyrazy macierzy Φ i jej macierzy
odwrotnej mieszczą się również w tych granicach, co powoduje, że interpolacja tymi wielomianami jest mniej
wrażliwa na błędy zaokrągleń.
Przykład 2 - Interpolacja wielomianami Czebyszewa
Mamy dane jak w Tabela 7
Tabela 7. Dane do interpolacji metodą wielomianów Czebyszew I rodzaju
Czas [s] t0 t1 t2 t3 t4
1 2 3 4 5
Temp.[°C] 21 22 26 30 31
y0 y1 y2 y3 y4
Jest to funkcja postaci rozpięta na węzłach . Musimy przeskalować wartości tak,
by mieściły się w zakresie :
Tak skalując węzły dostaniemy ciąg wartości:
Ponieważ postać rekurencyjna ( 18) jest bardzo wygodna jest do obliczeń numerycznych, to
korzystamy z niej w przypadku obliczeń zautomatyzowanych (program w jakimś języku lub formuły w arkuszu
kalkulacyjnym).
By pokazać postaci funkcji bazowych wyznaczymy je dla naszego przypadku kolejno:
Macierz Φ jest następująca:
35
Macierz odwrotna Φ-1 ma wartości również mieszczące się w granicach <-1,1>:
0,166667 0,333333 0 0,333333 0,166667
-0,33333 -0,33333 0 0,333333 0,333333
0,25 0 -0,5 0 0,25
-0,16667 0,333333 0 -0,33333 0,166667 0,083333 -0,33333 0,5 -0,33333 0,083333
Mając macierz współczynników A, można znaleźć wartość interpolowaną dla każdego
Dla
Przykład 3 - Interpolacja wielomianami Czebyszewa
Niezależnie od postaci funkcji bazowych wielomiany interpolacyjne maja taką samą postać
analityczną. Sprawdźmy, czy wielomian Czebyszewa dla danych z Przykład 1 będzie dokładnie taki sam.
Dla ułatwienia powtórzono tabelę wartości funkcji z przykładu 1 (Tabela 6).
węzły wartości węzłowe
x0 1 y0 4
x1 2 y1 8
x2 3 y2 3
.
Funkcje bazowe mają postać ( 19):
( 19)
Skalujemy wartości węzłów tak, by były zawarte w granicach <-1,1>:
Wartości przeskalowane w kolejnych punktach liczymy tak:
Φ-1 =
36
Obliczamy wartości podstawiając przeskalowane wartości xi do wzorów ( 19).
Mamy więc układ równań postaci ( 20), możemy przekształcić go do postaci ( 21) i znaleźć wartości
współczynników ai.
( 20)
( 21)
Rozwiązując ten układ równań dostajemy wartości współczynników ai ( 22):
( 22)
Wielomian W(x) po podstawieniu ( 19) i ( 21) do wyrażenia ( 17) sprowadzimy do postaci
algebraicznej ( 23):
( 23)
Podstawiając sprowadzimy wielomian do postaci:
( 24)
Algebraicznie jest to taki sam wielomian, jak wyznaczony dla tych danych z wielomianów
naturalnych.
2.1.3 Interpolacja wielomianem Lagrange’a
Interpolacja wielomianami naturalnymi jest pracochłonne i wymaga odwracania macierzy.
Wspominaliśmy już, że bywa to przyczyną błędów. Poszukiwano więc innej postaci funkcji bazowych, które
ułatwiałyby obliczenia.
Pan Lagrange przyjął wielomian w postaci ( 25), gdzie funkcje bazowe mają specyficzna postać,
przedstawioną równaniami ( 26). W tym zapisie przyjęliśmy jawną wartość 1 w miejscu niewystępujących
różnic. Ułatwia to prezentację zapisu.
37
Wielomian interpolujący ma ogólną postać jak poprzednio:
( 25)
a funkcje bazowe są iloczynami różnic pomiędzy wartością bieżącą argumentu i wartościami węzłów ( 26):
)1())()()(()(
)())(1)()(()(
)())()(1)(()(
)())()()(1()(
3210
3102
3201
3210
xxxxxxxxx
xxxxxxxxx
xxxxxxxxx
xxxxxxxxx
n
n
n
n
( 26)
W każdej z funkcji bazowych nie występuje czynnik .
Macierz interpolacyjna Φ ma postać ( 27).
)()()(
)()()(
)()()(
10
11111
00100
nnnn
n
n
xxx
xxx
xxx
( 27)
Znając wartość węzłów 0x ,1x nx wyznaczymy wyrazy macierzy .
0)(,,0)(,0)(
)())()(()(
0)(
0)(
0)(,,0)(,0)(
)())()(()(
0)(
0)(,,0)(,0)(
)())(()(
22423
232120222
21
20
11312
131210111
10
00201
0201000
xxx
xxxxxxxxx
x
x
xxx
xxxxxxxxx
x
xxx
xxxxxxx
n
n
n
n
n
n
Wynika z tego, że macierz interpolacyjna jest macierzą diagonalną – ma wartości różne od zera tylko
na głównej przekątnej ( 28)
)(000
0)(00
00)(0
000)(
22
11
00
nn x
x
x
x
( 28)
38
Każda z funkcji bazowych )( ii x ma wartość, natomiast pozostałe się zerują. Przy takiej postaci
macierzy łatwo wyznaczyć współczynniki wielomianu interpolacyjnego z równania ( 29). Równanie to po
rozwinięciu ma postać ( 30).
( 29)
nnnn y
y
y
y
a
a
a
a
x
x
x
x
2
1
0
2
1
0
22
11
00
)(000
0)(00
00)(0
000)(
( 30)
Z definicji działania mnożenia macierzy wynika, że:
)()(
00
00000
x
yayax o
)()(
11
111111
x
yayax
)()(
nn
nnnnnn
x
yayax
( 31)
Wielomian interpolacyjny ma więc postać ( 32).
dla j=0,1,2,...,n
( 32)
Sumując wyrazy po ni 1,0 otrzymujemy postać wielomianu ( 33)
nj
xx
xx
yxWn
in
ij
ji
n
ij
j
i ,,2,1,0;
)(
)(
)(0
( 33)
Jak widać wielomiany Langrange’a w stosunku do wielomianów naturalnych wymagają prostszych
operacji. Brak jest odwracania macierzy, wnoszącego często duże błędy.
Metoda Lagrange’a nie ma istotnych wad. Zaletą jej jest możliwość prowadzenia obliczeń „ręcznie”,
nawet na znacznych zbiorach danych.
39
Przykład 4 - Interpolacja wielomianem Lagrange'a
Korzystając z metody Lagrange’a wyznaczymy wielomian interpolacyjny dla danych z Przykład 1.
Dla ułatwienia przytoczymy dane ponownie (Tabela 6).
Węzły Wartości węzłowe
10 x 40 y
21 x 81 y
32 x 32 y
Wyznaczamy wartości funkcji bazowych dla kolejnych węzłów ( 34).
2)2)(1()31)(21())(()( 201000 xxxxx
1)1(1)32)(12())(()( 210111 xxxxx
212)23)(13())(()( 120222 xxxxx
( 34)
Znając wartości funkcji )( ii x obliczymy wartość współczynników ia wielomianu interpolacyjnego ( 35).
22
4
)( 00
00
x
ya
8)1(
8
)( 11
11
x
ya
5,12
3
)( 22
22
x
ya
( 35)
Wielomian interpolacyjny ma więc postać ( 36).
))(())(())(()( 102201210 xxxxaxxxxaxxxxaxW
)2)(1(5,1)3)(1(8)3)(2(2)( xxxxxxxW
( 36)
Chcąc wyznaczyć wartość interpolowaną wartość )5,2( xfy podstawimy w miejsce x liczbę 2,5.
625,6125,165,0
5,05,15,1)5,0(5,18)5,0(5,02
)25,2)(15,2(5,1)35,2)(15,2(8)35,2)(25,2(2)5,2(
xfy
Wynik jest ten sam, co w przykładzie 1. Pomimo, że „wizualnie” postać wielomianu Lagrange’a jest
pozornie inna, to jednak jest to nadal ten sam wielomian, co w przykładzie 1. Sprawdźmy, sprowadzając
postać ( 36) do postaci naturalnej.
)22(5,1)33(8)623(2)( 222 xxxxxxxxxxW
35,45,12432812102)( 222 xxxxxxxW
95,175,4)( 2 xxxW ( 37)
Jest to dokładnie ta sama postać co w równaniu ( 16).
40
2.1.4 Wielomiany Newtona
Interpolacja metodą Newtona stosowana jest dla funkcji dyskretnych, spróbkowanych stałym
krokiem ii xxh 1 idem dla ni ,,1,0 .
Zanim opiszemy oba z wzorów Newtona, wprowadzimy pojęcie różnicy skończonej.
2.1.4.1 Różnice skończone.
Różnicą skończoną progresywną rzędu pierwszego dla argumentu ix nazywamy różnicą wartości
węzłowych ( 38).
iiiii yyxfhxfy 1)()( dla i = 0,1,...,n ( 38)
Różnice skończone wyższych rzędów definiuje się rekurencyjnie. Np. różnica skończona rzędu
drugiego ma postać ( 39).
iiii yyyy 1
2 )( ( 39)
gdzie:
iii yyy 1 121 iii yyy
Ostatecznie otrzymujemy wyrażenie ( 40):
iiiiiiii yyyyyyyy 12112
2 2)()(
( 40)
Podobnie definiujemy różnicę skończoną rzędu k ( 41).
1
0
1
1
11 )1()(
ki
k
j
j
i
k
i
k
i
k
i
k yj
kyyyy
( 41)
Mając zbiór węzłów xi i wartości węzłowych yi buduje się tablicę różnic skończonych (Tabela 8), które
wykorzystamy w pierwszym wzorze Newtona.
Tabela 8.Tablica progresywnych różnic skończonych dla węzłów.
index ix iy iy iy
2 iy
3
i
n y2 i
n y1 i
n y
0 0x 0y 0y 0
2 y 0
3y
0
2 yn 0
1yn
1 1x 1y 1y 1
2 y 1
3y
1
2 yn
2 2x 2y 2y 2
2 y 2
3y
n-2 2nx 2ny 2 ny 2
2
ny
n-1 1nx 1ny 1 ny
n nx ny
41
Podobnie definiuje się różnice wsteczne. Różnica pierwszego stopnia tak, jak poprzednio jest różnicą
wartości funkcji iy i poprzedzającej jej wartości 1iy ( 42).
1 iii yyy ( 42)
Analogicznie, jak dla różnic progresywnych, definiujemy kolejne stopnie różnic wstecznych,
korzystając z zależności rekurencyjnej ( 43).
1
11
i
k
i
k
i
k yyy ( 43)
Jak w przypadku różnic progresywnych budujemy tablicę skończonych różnic wstecznych (Tabela 9),
którą to ograniczymy do np. 6 punktów.
Tabela 9. Przykładowa tabela różnic wstecznych
index ix iy iy iy
2 iy
3 iy
4 iy
5
0 0x 0y
1 1x 1y 1y
2 2x 2y 2y 2
2 y
3 3x 3y 3y 3
2 y 3
3y
4 4x 4y 4y 4
2 y 4
3y 4
4y
6 5x 5y 5y 5
2 y 5
3y 5
4 y 5
5y
2.1.4.2 I wzór Newtona.
I wzór Newtona stosowany jest w interpolacji funkcji dyskretnej spróbkowanej z krokiem stałym dla górnej części tabeli wartości. Funkcja interpolowana ma wartości węzłowe odległe od siebie o h=idem (Tabela 10).
Tabela 10. Funkcja spróbkowana z krokiem stałym
index ix iy
0 0x 0y
1 hxx 01 1y
2 hxy 202 2y
n hnxyn 0 ny
Podstawiając h
xxq 0 wyznaczyć można wartości q dla kolejnych węzłów ( 44).
42
0xxdla 000
h
xxq
1xxdla 100011
h
xhx
h
xxq
2xxdla 22 0002
2
h
xhx
h
xxq
nxxdla nqn
( 44)
Wielomian Newtona ma postać taką, jak każdy wielomian interpolacyjny ( 45).
)()()()()( 221100 qaqaqaqaqW nn ( 45)
Funkcje bazowe wyrażają się następującymi formułami ( 46):
Podstawiając ( 46) do ( 45) mamy ( 47).
)1)(2)(1()1()( 210 nqqqqaqqaqaaqW n ( 47)
Parametr q w węzłach przyjmuje wartości, które są liczbami całkowitymi ( 48).
nh
xhnx
h
xxqxx
h
xhx
h
xxqxx
h
xhx
h
xxqxx
h
xxqxx
nnn
000
000222
000111
0000
22
1
0
( 48)
)]1([)2)(1()(
)2)(1()(
)1()(
)(
1)(
3
2
1
0
nqqqqq
qqqq
qqq
q
n
( 46)
43
Wielomian interpolacyjny można zapisać macierzowo jako ( 49):
( 49)
gdzie:
Φ- kwadratowa macierz wartości funkcji bazowych (n+1)x(n+1)
A - macierz współczynników wielowartościowa (kolumnowa (n+1)x1)
- macierz wartości węzłowych (kolumnowa (n+1)x1)
Rozpisując wyrazy macierzy mamy ( 50):
nnnnnn
n
n
y
y
y
a
a
a
qqq
qqq
qqq
1
0
1
0
10
11100
00100
)()()(
)()()(
)()()(
( 50)
Wstawiając do ( 50) wartości funkcji bazowych dla parametrów q wyznaczonych z ( 48) mamy ( 51).
nn y
y
y
y
y
y
a
a
a
a
a
a
nnnnnnn
4
3
2
1
0
4
3
2
1
0
!)2)(1()1(1
06631
00231
00221
0
0
0
0
0
0
1
0
1
1
( 51)
Weźmy macierz 3x3 i wyznaczmy wartości współczynników a .
2
1
0
1
0
221
011
001
y
y
y
a
a
a
a
Wyznaczamy wartości a odpowiednio mnożąc wyrazy macierzy:
2210
110
00
22 yaaa
yaa
ya
Przekształcając otrzymujemy:
0
2
01201021022
00011
00
2)(222
)(
yyyyyyyyaaya
yaprogresywnróżniayyya
ya
44
Porządkując wartości mamy:
Analogicznie dostaniemy wzór na współczynnik ( 52):
( 52)
Procedura wyznaczania wartości współczynników wielomianu jest więc bardzo prosta. Budujemy dla
swoich danych tablicę różnic skończonych, wyznaczając kolejne ich wartości, a współczynniki wielomianu
obliczamy z zależności ( 52).
Zaletą tego algorytmu jest to, że wartości współczynników łatwo jest policzyć dla rozszerzonego
zakresu węzłów. Nie trzeba całej procedury powtarzać. Łatwo jest interpolować funkcję wielomianu
wybranego rzędu na wybranych węzłach, co pokażemy na przykładach.
Przykład 5 - I wzór Newtona
Wyznaczyć wartość y(x) dla x=2,5 stosując I wzór Newtona. Dane do obliczeń zawarto w Tabela 11.
Tabela 11. I wzór Newtona - dane do obliczeń
index ix iy iy iy2
0 1 4 8 - 4 = 4 -5 - 4 = -9
1 2 8 3 - 8 = -5
2 3 3
Wartości współczynników ia wyznaczamy z zależności ( 52).
= 4
Wartość interpolowaną )5,2()5,2( Wy wyznaczamy, przyjmując q :
5,11
15,20
h
xxq
45
i podstawiając wyliczoną wartość do wzoru ( 47) mamy:
)1()( 210 qqaqaaqW
625,6375,364)15,1(5,15,45,144)5,2( W
Wartość oczywiście taka sama, jak wyznaczona dla tych danych we wcześniejszych przykładach
(innymi wielomianami).
Wielomian sprowadzony do postaci naturalnej musi mieć oczywiście tę samą postać co
w przykładzie 1.
Podstawiając )1(1
10
xx
h
xxq do ( 47) otrzymujemy następującą postać wielomianu:
)2)(1()1()( 210 xxaxaaxW
)2)(1(5,4)1(44)( xxxxW
)22(5,4444)( 2 xxxxxW
95,135,44)( 2 xxxxW
95,175,4)( 2 xxxW Jest to analitycznie dokładnie ten sam wielomian co w przykładzie 1.
Interpolacja wielomianem wg I wzoru Newtona umożliwia dowolny wybór stopnia wielomianu
k <= n, jeśli punktów jest n+1. Musimy oczywiście pamiętać o tym, że przyjęcie stopnia wielomianu k<n
wymaga k+1 punktów. Oznacza to, że w przypadku interpolacji w końcowej, prawej części zbioru węzłów,
może nam "zabraknąć" punktów, by użyć wielomianu stopnia k. Brak nam progresywnych różnic
skończonych. Dlatego dla wartości z prawej strony przedziału używamy różnic wstecznych i opartego na nich
II wzoru Newtona.
Przykład 6 - Interpolacja wg I wzoru Newtona
Tabela 12 zawiera stabelaryzowaną funkcję y(x), która spróbkowana jest z krokiem stałym h=1
Tabela 12. Tabel wartości dla przykładu interpolacji I wzorem Newtona
x y Δy Δ2y Δ3y Δ4y Δ5y Δ6y Δ7y Δ8y Δ9y
x0 0 1,00 6,50 8,60 -2,40 2,72 -25,60 76,80 -179,20 358,40 -645,12
x1 1 7,50 15,10 6,20 0,32 -22,88 51,20 -102,40 179,20 -286,72
x2 2 22,60 21,30 6,52 -22,56 28,32 -51,20 76,80 -107,52
x3 3 43,90 27,82 -16,04 5,76 -22,88 25,60 -30,72
x4 4 71,72 11,78 -10,28 -17,12 2,72 -5,12
x5 5 83,50 1,50 -27,40 -14,40 -2,40
x6 6 85,00 -25,90 -41,80 -16,80
x7 7 59,10 -67,70 -58,60
x8 8 -8,60 -126,30
x9 9 -134,90
a
b
c
46
Interpolując tę funkcję wielomianem 3 stopnia rozpiętym na węzłach 0,1,2,3 (klamra a w Tabela 12)
otrzymamy wartości współczynników wyliczone z pierwszego wiersza tabeli:
i wielomian w postaci:
gdzie:
Zmieniając zakres węzłów - rozpinamy wielomian na węzłach 4,5,6,7 (klamra b w tabeli) - mamy
wartości współczynników wyliczone z różnic skończonych z wiersza 5 tabeli:
i wielomian w postaci:
gdzie:
; x0 = 64, więc
Próba wyznaczenia wielomianu interpolacyjnego stopnia 3 na węzłach od 7 począwszy musi
zakończyć się niepowodzeniem - brak jednego węzła - i w tym przypadku trzeba przejść na II wzór Newtona
oparty na różnicach wstecznych.
2.1.4.3 II wzór Newtona - różnice wsteczne
Interpolując funkcję dyskretną w prawej części przedziału węzłów korzystamy z II wzoru Newtona,
który przytoczymy bez wyprowadzania.
Podstawiając:
II wór Newtona oparty na różnicach wsteczny ma postać:
Dla danych z poprzedniego przykładu zbudujemy tablicę różnic skończonych i wyznaczymy wartości
współczynników dla wielomianu stopnia 3, rozpiętego na węzłach 5,6,7,8 (Tabela 13)
47
Tabela 13. Różnice wsteczne
x y
1yn 2yn
3yn 4yn
5yn 6yn
7yn 8yn
9yn
x0 0 1,00 x1 1 7,50 6,50
x2 2 22,60 15,10 8,60 x3 3 43,90 21,30 6,20 -2,40
x4 4 71,72 27,82 6,52 0,32 2,72 x5 5 83,50 11,78 -16,04 -22,56 -22,88 -25,60
x6 6 85,00 1,50 -10,28 5,76 28,32 51,20 76,80 x7 7 59,10 -25,90 -27,40 -17,12 -22,88 -51,20 -102,40 -179,20
x8 8 -8,60 -67,70 -41,80 -14,40 2,72 25,60 76,80 179,20 358,40 x9 9 -134,90 -126,30 -58,60 -16,80 -2,40 -5,12 -30,72 -107,52 -286,72 -645,12
Wartości współczynników wyliczamy z różnic skończony z ostatniego wiersza zakresu:
Mamy więc wielomian postaci:
gdzie:
Zalety Interpolacji metodami różnic skończonych
Raz policzone różnice skończone dla węzłów 0,1,...,n umożliwiają interpolację wielomianem
dowolnego stopnia kn dla dowolnego podzbioru węzłów.
Można powiększać zbiór węzłów rozszerzając go w prawo
Metoda wygodna do obliczeń ręcznych i numerycznych
2.1.5 Schemat Aitkena.
Wyznaczanie wartości wielomianu Lagrange’a dla dowolnej wartości argumentu nxxx ,0 jest
dość pracochłonne.
Metoda Aitkena pozwala na wyznaczenie wartości interpolowanej tego wielomianu bez konieczności
wyznaczania współczynników i jego pełnej postaci.
48
Żeby obliczyć wartość wielomianu opartego na n węzłach wyznacza się wartość wielomianów
kolejnych stopni, przechodzących przez zadane węzły, dla konkretnego punktu x.
Definiujemy wielomiany stopnia n, oparte na węzłach
- wielomian pierwszego stopnia rozpięty na punktach
- wielomian stopnia drugiego przechodzący przez
- wielomian stopnia n przechodzący przez punkty gdzie
Wartości tych wielomianów dla zadanej wartości argumentów xwyznaczamy ze wzorów ( 53)
( 53)
Wartości wielomianów umieszczamy w tabeli trójkątnej i obliczamy od góry w prawo kolejne wyrazy ( ) dla zadanej wartości x (Tabela 14).
Tabela 14. Schemat Aitkena
0x 0y
1x 1y 1,0W
2x 2y 2,0W 2,1,0W
3x 3y 3,0W 3,1,0W 3,2,1,0W
4x 4y 4,0W
4,1,0W 4,2,1,0W 4,3,2,1,0W
nx nW ,0 nW ,1,0 nW ,2,1,0 nW ,3,2,1,0 nW ,,1,0 ny
49
Przykład 7 -Schemat Aitkena
Wyznaczyć metodą Aitkena wartość wielomianu interpolacyjnego )(2,1,0 xW dla punktu 5,2x dla
danych z przykładu 2 (Tabela 6) - wartości powtórzono w tabeli niżej.
Rozwiązanie:
Nr ix iy 0 1 4
1 2 8 101,0 W
2 3 3 25,32,0 W
625,62,1,0 W
Zawarte w tablicy wielomiany wyznaczamy następująco:
10)12(
)5,21(8)5,22(4
01
11
00
,1,0
xx
xxy
xxy
Wji
25,3)13(
)5,21(3)5,23(4
02
22
00
,2,0
xx
xxy
xxy
Wji
625,623
)5,22(25,3)5,23(10
12
22,0
11,0
2,1,0
xx
xxW
xxW
W
Oczywiście wynik jest dokładnie taki sam, jak w przykładach poprzednich. Oszczędziliśmy trochę na
rachunkach, ponieważ kolejne wartości wielomianów zawierały wartości już wyliczone. Algorytm Aitkena jest
skuteczny zarówno w obliczeniach „ręcznych”, jak i numerycznych.
Na Rys. 26 pokazano geometryczną interpretację schematu Aitkena
Rys. 26. Geometryczna interpretacja schematu Aitkena
0
2
4
6
8
10
12
0 1 2 3 4
dyskretna
wo1
w02
w012
50
2.1.6 Schemat Neville’a.
W schemacie Neville’a podobnie, jak w schemacie Aitkena definiujemy wielomiany interpolacyjne
i obliczamy wartość interpolowaną w punkcie x .
Wartość wielomianu stopnia zerowego, przechodzącego przez punkt ),( ii yx dla pewnego x jest iP
)(xPyP iii dla ni ,,1,0
Wartość wielomianu stopnia pierwszego przechodzącego przez punkty ),( ii yx oraz ),( 11 ii yx jest
)1( iiP :
nidlaxpP iiii ,...,1,0)()1()1(
Wartości wielomianów stopni wyższych wyznaczyć można z zależności rekurencyjnej:
kii
kiiiikiiini
niiixx
PxxPxxP
)(,),2)(1()1(,),1(
)(,),1(
)()(
gdzie:
k - stopień wielomianu; nk ,,2,1
ni ,,1,0 Budujemy tablicę symetryczną ( 54).
000; pyx
1,0p
111; pyx
2,1,0p
2,1p
3,2,1,0p
222; pyx
3,2,1p
4,3,2,1p
3,2p
4,3,2,1p
333; pyx
4,3,2p
4,3p
444; pyx
( 54)
Kolejne elementy tablicy wyznacza się na podstawie wartości uprzednio wyliczonych.
Stosując oznaczenie ( 55) sprowadza się ten schemat do bardzo przyjaznej formy ( 56).
)(,),1(),( kiiikki pt ( 55)
51
0,000; tyx
1,1t
0,111; tyx
2,2t
1,2t
3,3t
0,222; tyx
2,3t
4,4t
1,3t
2,4t
0,333; tyx
2,4t
1,4t
0,444; tyx
( 56)
gdzie:
kii
kiikiki
kixx
txxtxxt
1,11,
,
)()(niik ,,2,1,0;1; ( 57)
Przykład 8 - Schemat Neville'a
Obliczyć wartość interpolowaną dla danych z poprzednich przykładów (Tabela 6) dla 5,2x
schematem Neville’a.
węzły wartości węzłowe
x0 1 y0 4
x1 2 y1 8
x2 3 y2 3
Mamy tylko trzy punkty, więc tabela ma postać:
x0 y0 t0,0 1 4
t1,1 1
x1 y1 t1,0 t2,2 2 8 6,625
t2,1 5,5
x2 y2 t2,0 3 3
Wartości wyrazów jit , wyznaczono rekurencyjnie , korzystając ze wzoru ( 57).
40,0 t
80,1 t
30.2 t
1012
4)25,2(8)15,2()()(
01
0,010,10
1,1
xx
txxtxxt
5,523
8)35,2(3)25,2()()(
12
0,120,21
1,2
xx
txxtxxt
625,613
10)35,2(5,5)15,2()()(
02
1,121,20
2,2
xx
txxtxxt
(
30)
52
Interpolowana wartość jest oczywiście ta sama co poprzednio, bo schemat Neville'a oparty jest na
wielomianie Lagrange'a.
2.2 Interpolacja funkcjami trygonometrycznymi
W przypadku funkcji okresowych, czyli takich, że , które powtarzają swoje wartości
co okres T, wygodnie jest je interpolować funkcjami trygonometrycznymi. Funkcje trygonometryczne:
stanowią bazę dla funkcji o okresie 2π.
Warunkiem jest, by funkcja określona w dziedzinie liczb rzeczywistych, ograniczona, okresowa
okresie T spełniała warunki Dirichleta, tzn.:
przedział można podzielić na skończoną ilość przedziałów takich, że jest ciągła i
monotoniczna na wnętrzu każdego z nich;
dla każdego x mamy
gdzie granice są właściwe.
Zakładamy, że mamy węzłów, które należą do przedziału
to możemy taką funkcję interpolować wielomianem postaci ogólnej:
( 58)
gdzie:
W obu przypadkach liczy się współczynniki Ak oraz Bk wg wzorów ( 59):
( 59)
Jeżeli jest funkcją parzystą na przedziale
to dla każdego k = 1, 2, . . . ,m;
co oznacza, że w szeregu ( 58) nie występują sinusy.
53
Gdy jest funkcją nieparzystą na przedziale
to dla każdego k = 1, 2, . . . m+1.
Wówczas w szeregu ( 58) nie występują cosinusy.
Funkcja nieparzysta to taka, która spełnia warunek:
Dla funkcji parzystej:
Rys. 27. Ilustracja parzystości funkcji
Przykład 9 - Interpolacja wielomianami trygonometrycznymi
Funkcja dyskretna, którą będziemy interpolować jest zadana w Tabela 15 Interpolacja
trygonometryczna - dane Tabela 15. Wartości x mają stały krok h = 0,5 π.
Tabela 15 Interpolacja trygonometryczna - dane
Ponieważ n=3 jest nieparzyste,
i .
Wyznaczamy wartości Ak
-1,5
-1
-0,5
0
0,5
1
1,5
-3 -2 -1 0 1 2 3
funkcja nieparzysta
-1
-0,8
-0,6
-0,4
-0,2
0
0,2
0,4
0,6
0,8
1
1,2
-3 -2 -1 0 1 2 3
Funkcja parzysta
nr pkt. x y=f(x)
0 0 0
1
2
3
54
Wyznaczamy współczynnik B1:
0
Ostatecznie postać funkcji interpolującej jest następująca:
Dla x=2 wartość interpolowana tym wielomianem jest W(2,6)=2,9168
0
0,5
1
1,5
2
2,5
3
3,5
0 0,5 1 1,5 2 2,5 3 3,5 4 4,5 5
dyskretna
w(x)
wielomiany naturalne
Rys. 28. Wykres wielomianu trygonometrycznego dla funkcji z przykładu 9
Na wykresie pokazano również wielomian interpolacyjny w postaci naturalnej, wyznaczony na tych
samych węzłach.
Interpolowana tym wielomianem wartość funkcji dyskretnej w punkcie x=2,6 wynosi
.
55
Nie należało się spodziewać identycznych wartości, choć w węzłach wartości są zgodne - taki był
warunek interpolacji.
2.3 Interpolacja – Podsumowanie Interpolacja polega na wyznaczeniu postaci funkcji, która będzie w węzłach przyjmowała wartości
węzłowe funkcji dyskretnej – funkcja interpolująca przechodzi przez wszystkie punkty funkcji
dyskretnej, którą interpoluje.
Interpolację przeprowadzamy, gdy:
znamy postać algebraiczną funkcji, lecz jest ona skomplikowana i wyznaczanie jej wartości dla
dowolnej wartości argumentu jest kosztowne – funkcję tablicujemy, a dla wartości innej niż
węzłowa przeprowadzamy interpolację.
mamy funkcję dyskretną, chcemy oszacować jej wartość dla argumentu z wnętrza przedziału
węzłów, czyli wyznaczyć jej wartość dla innej wartości argumentu niż węzeł.
mamy funkcję dyskretną i chcemy policzyć jej pochodną w punkcie lub całkę z niej
w określonym przedziale.
Interpolacja wielomianami algebraicznymi niezależnie od metody daje dokładnie tę sama postać
wielomianu naturalnego – wielomian niezależnie od metody wyznaczania współczynników zawsze
przechodzi przez te same punkty i jest tego samego stopnia N-1 (N – liczba węzłów).
Różne metody interpolacji wielomianowej różnią się nakładem pracy i dokładnością wyznaczenia
wartości współczynników.
W przypadku stałego kroku próbkowania i dużych stopni wielomianu występuje efekt Runge’go,
charakteryzujący się znacznym „rozfalowaniem” wartości wielomianu na krańcach przedziałów.
Uniknięcie efektu Runge’go możliwe jest poprzez zagęszczenie węzłów na krańcach przedziału (np.
punkty Czebyszewa)
Wielomian interpolacyjny obowiązuje tylko w zakresie węzłów użytych do interpolacji.
Wartość wielomianu interpolującego dla dowolnej wartości argumentu z zakresu węzłów wyznaczyć
można bez znajdowania postaci wielomianu bezpośrednio np. ze schematy Aitken’a.
56
3 Aproksymacja
Aproksymacja
Proces określania rozwiązań przybliżonych na podstawie rozwiązań znanych.
Aproksymacja w naszym wykładzie sprowadza się do procedur przybliżania wartości funkcji
dyskretnej (empirycznej lub uzyskanej w wyniku rozwiązania złożonych równań opisujących stan jakiegoś
modelu) możliwie prostą funkcją, która w naszym mniemaniu najlepiej przystaje do zbioru wartości
węzłowych. Zadaniem aproksymacji jest znalezienie najlepszej z funkcji danej klasy - najlepszej w sensie
przyjętego kryterium oceny.
Podstawą aproksymacji jest twierdzenie Stona-Weierstrassa (Rys. 29):
Każdą funkcję ciągłą o wartościach rzeczywistych na przedziale domkniętym <a,b> można
przybliżyć jednostajnie wielomianem z dowolną dokładnością ε.
Rys. 29. Ilustracja twierdzenia Stona-Weierstrassa.
Nie oznacza to, że przybliżenie będzie obowiązywało na całej jej dziedzinie. Poza przedziałem <a,b>, z
której wartości pobrano do aproksymacji, funkcja aproksymującą może dramatycznie odbiegać wartością od
funkcji aproksymowanej. Podobnie było podczas interpolacji, która jest szczególnym przypadkiem
aproksymacji.
Różnica pomiędzy aproksymacją i interpolacją polega na tym, że funkcja interpolująca przechodzi
przez wszystkie wartości węzłowe, a funkcja aproksymująca może przez nie przechodzić, ale najczęściej tak
nie jest.
Drugą różnicą jest fakt, że w przypadku aproksymacji sami wybieramy postać funkcji zakładając, że
najlepiej przystający do zbioru wartości węzłowych będzie np. wielomian drugiego stopnia. W przypadku
interpolacji wielomianowej stopień wielomianu zależy od liczby punktów wziętych do procedury
interpolacyjnej.
Teoria aproksymacji w zastosowaniach inżynierskich dotyczy dwóch podstawowych zadań:
uproszczenia skomplikowanej postaci znanej funkcji prostszą, łatwiejszą do obliczeń,
dopasowanie możliwie prostej funkcji do danych eksperymentalnych.
Funkcja pierwotna y(x)
Funkcja aproksymująca W(x)
x
y
ε
ε
a b
57
W przypadku wielu punktów uzyskanych z eksperymentów (np. tysiąca) trudno wyobrazić sobie
interpolację tak wysokim stopniem wielomianu gdy np. punkty układają się jak na Rys. 30.
Rys. 30. Zbiór wartości uzyskanych z eksperymentów, dobrze aproksymowalny prostą.
Widać, że wartości funkcji z Rys. 30 układają się dość wyraźnie wg prostej, a odchyłki wartości
zmierzonych wynikają chyba z błędów pomiaru. W tej sytuacji interpolacja na całym zbiorze wartości funkcji
dyskretnej jest bez sensu. Z góry zakładamy, że zależność jest postaci:
Problemem jest wyznaczenie wartości współczynników tej funkcji, która w każdym z węzłów odbiega
od wartości węzłowych.
Jeśli wybierzemy funkcję, która (naszym zdaniem) najlepiej będzie przystawała do zbioru punktów, to
funkcja ta będzie miała jakieś współczynniki. Jak wyznaczyć ich wartości by funkcja NAJLEPIEJ przystawała do
węzłów?
Należy przyjąć miarę tego przystawania, czyli sposób określania błędu wartości funkcji
aproksymującej w stosunku do wartości węzłowych.
By dokonać aproksymacji musimy:
wybrać postać funkcji;
wybrać normę, wg której będziemy określać błąd.
Dokonując minimalizacji błędu, wyznaczymy parametry funkcji aproksymującej.
Skupiamy się w naszych rozważaniach nad jedną normą - euklidesową ( 60):
( 60)
gdzie:
- wartości węzłowe (znane); - wartość funkcji aproksymującej w węzłach ; - punkty funkcji dyskretnej.
0
5
10
15
20
25
0 5 10 15 20 25 30
Funkcja dyskretna
W(x)=a0+a1*x
58
Przyjmując postać wielomianową funkcji aproksymującej ( 61):
( 61)
Warunek aproksymacji w sensie minimalizacji błędu ( 60) sprowadzimy do warunku( 62), podnosząc
stronami ( 60) do kwadratu:
( 62)
Szukając minimum przy znanych (założonych) postaciach funkcji bazowych musimy
przyrównać do zera pochodną po ( 63):
( 63)
Będziemy mieć więc równań ( 64):
( 64)
Różniczkujemy stronami dostając ( 65):
( 65)
Dzielimy stronami przez 2 i robimy porządek w sumowaniu, sprowadzając do postaci ( 66):
( 66)
Wprowadzamy oznaczenia ( 67):
( 67)
59
0
5
10
15
20
0 5
Równanie ( 66) sprowadzamy do postaci ( 68):
( 68)
W postaci macierzowej równanie ( 68) można przedstawić następująco ( 69):
( 69)
Możemy więc zapisać ten układ równań krótko ( 70):
( 70)
Z równania ( 67) wynika, że macierz jest symetryczna.
Przykład 10. Aproksymacja wielomianem kwadratowym
Mamy funkcję dyskretną, uzyskaną w wyniku eksperymentu, której rozkład punktów sugeruje
zależność kwadratową (Rys. 31).
Rys. 31. Funkcja dyskretna dobrze aproksymowalna wielomianem drugiego stopnia
Przyjmiemy więc, że wielomian aproksymujący jest wielomianem drugiego stopnia :
( 71)
Funkcje bazowe są więc postaci ( 72):
( 72)
i 0 1 2 3 4
0 1 2 3 4
4 1 3 10 16
60
Wyznaczmy wartości wyrazów macierzy ( 69) pamiętając, że punktów mamy .
Współczynniki mają indeksy ; .
Macierz ma więc postać ( 73):
Ponieważ .
Wyznaczymy teraz wartości wyrazów macierzy . Wartości wyrazów wyznaczymy ze
wzorów ( 67):
( 73)
61
Równania ( 69) z konkretnymi wartości wyrazów macierzy zawiera ( 74):
( 74)
Wyliczone stąd wartości współczynników są następujące:
Równanie funkcji aproksymującej jest następujące:
i jest to najlepsza z funkcji kwadratowych, jaką można przybliżyć naszą funkcje dyskretną.
Wykres funkcji pokazano na Rys. 32
Rys. 32. Wykres funkcji aproksymującej G(x) dla przykładu 1
Jak widać dla każdego z węzłów odbiega od wartości węzłowej .
Miarą oszacowania była z założenia (1) suma kwadratów odchyleń, której wartość wynosi
.
Pytanie, czy funkcja drugiego stopnia jest najlepsza? Nie wiadomo. Sprawdźmy, jaki błąd da funkcja
trzeciego stopnia.
Przyjmując:
wyznaczymy wartości współczynników dla naszego
zbioru danych:
0
2
4
6
8
10
12
14
16
18
0 1 2 3 4 5
G(x)=a0+a1*x+a2*x^2 Funkcja dyskretna
62
Postać wielomianu aproksymującego jest więc następująca:
Wykres funkcji pokazano na Rys. 33
Rys. 33. Wielomian aproksymujący trzeciego stopnia dla danych z przykładu 1
Suma kwadratów odchyleń ma wartość
Wartość ε jest mniejsza niż poprzednio. Ale czy może stanowić to podstawę odrzucenia funkcji
stopnia drugiego jako najlepszego przybliżenia? Niekoniecznie. Być może charakter zjawiska badanego
należy jednak opisać funkcją drugiego stopnia, a pomiary nie są zbyt dokładne.
Jeżeli użyjemy wielomianu czwartego stopnia do aproksymacji dostaniemy jeszcze mniejszy błąd. U
nas , bo przecież wielomian tego stopnia jest wielomianem interpolującym. Rzeczywiście ten wielomian
wykazuje najmniejszą sumę kwadratów odchyleń, bo przechodzi przez wartości węzłowe.
Na Rys. 34 pokazano wykres wielomianu aproksymującego 4-stopnia na tle funkcji dyskretnej
, który oczywiście interpoluje zadaną funkcję dyskretną.
Rys. 34. Wykres wielomianu aproksymującego czwartego stopnia dla danych z przykładu 1
0
2
4
6
8
10
12
14
16
18
0 1 2 3 4 5
G(x)=a0+a1*x+a2*x^2
Funkcja dyskretna
0
2
4
6
8
10
12
14
16
18
0 1 2 3 4 5
Funkcja dyskretna
W(x)=a0+a1*x+a2*x^2+a3*x^3+a4*x^4
63
3.1.1 Aproksymacja liniowa.
Bardzo często w technice spotyka się liniową zależność pomiędzy zmiennymi (np. wydłużenie
materiału rozciąganego w funkcji siły rozciągającej w zakresie obowiązywania prawa Hook'a). Błędy pomiaru
sprawiają, że wartości zmierzone nie układają się dokładnie po prostej, lecz wykazują pewien rozrzut.
W tej sytuacji aproksymacji dokonujemy funkcją ( 75),
( 75)
czyli funkcją liniową. Taki proces aproksymacji (jej szczególny przypadek ogólnej procedury aproksymacji)
nazywa się w statystyce regresją liniową.
Zgodnie z wyprowadzonymi wcześniej zależnościami mamy w tym wypadku zapisany macierzowo
układ równań ( 76):
gdzie:
Ponieważ , a to układ równań ma postać :
( 77)
Dokonując mnożenia macierzy mamy ( 78):
( 78)
( 76)
64
Rozwiązując ten układ względem mamy ( 79):
( 79)
gdzie znak oznacza jeśli indeksy punktów są
Zakładając, że niepewność wartości jest zaniedbywalna, a niepewność wartości jest dla
wszystkich taka sama, możemy obliczyć średnie odchylenie standardowe (błąd standardowy). Musimy
jednak uwzględnić fakt, że dodatkowe błędy wnosi rachunek i . Wyliczając wartości współczynników
podwyższyliśmy błąd aproksymowanych wartości funkcji. Uwzględnimy ten fakt obniżając liczbę stopni
swobody układu (była o tym mowa na wykładzie ze statystyki).
Średni błąd kwadratowy wyznaczymy więc z zależności ( 80):
( 80)
gdzie:
Błędy standardowe wartości współczynników wyznaczymy ze wzorów ( 81) gdzie S jest średnim
odchyleniem standardowe od prostej z zależności ( 80):
( 81)
3.1.2 Aproksymacja z wagami.
Dotychczasowa analiza oparta była na założeniu, że mamy do czynienia z funkcją dyskretną, która jest
wynikami pomiarów pewnej wielkości fizycznej.
Poszukiwanie najlepszej (w sensie sumy kwadratów odległości wartości funkcji aproksymującej
w węzłach od wartości węzłowych funkcji dyskretnej) funkcji aproksymującej bazowało na przyjęciu takich
samych błędów wartości funkcji dyskretnej.
65
Możemy jednak mieć do czynienia z taką sytuacją, że pewne punkty obarczone są mniejszymi
błędami niż inne. Należy więc przypisać im jakieś wagi tak, by funkcja aproksymująca przebiegała bliżej tych
wartości.
Biorąc więc pod uwagę większy stopień zaufania do wartości pewnych punktów lub ich wyższy
poziom istotności zróżnicujemy punkty co do ich znaczenia dla przebiegu funkcji aproksymującej. Dodamy im
wagi , .
W każdym węźle wyznaczymy więc odległości zwiększając je wagą ( 82):
( 82)
Szukając minimum ze względu na otrzymamy ( 83):
( 83)
Tak jak poprzednio przyjmujemy oznaczenia ( 84):
( 84)
i rozwiązujemy układ równań :
( 85)
Przykład 11. Aproksymacja z wagami
Mając dane jak w przykładzie 10, przypiszemy wyższe wagi pewnym punktom, zakładając że są one
pewniejsze. Funkcja aproksymująca powinna zbliżyć się do tych wartości węzłowych bardziej, niż było to przy
równych poprzednio wagach (wszystkie punkty miały wagę 1).
Tabela danych poszerzy się więc o dodatkowy wiersz (Tabela 16).
Tabela 16. Dane do aproksymacji z wagami
indeks 0 1 2 3 4
Węzeł 0 1 2 3 4
Wartość węzłowa 4 1 3 10 16
Waga 5 1 10 1 1
66
Zakładając jak w przykładzie x, że aproksymujemy wielomianem kwadratowym ( 86):
( 86)
Czyli funkcje bazowe są następujące:
Wyznaczamy wartości wyrazów macierzy i :
67
Ostatecznie mamy układ równań ( 87):
( 87)
Wyliczone współczynniki wielomianu maja wartości:
Wielomian ma postać:
Jego wykres na tle wielomianu aproksymującego bez wag pokazano na Rys. 35.
Rys. 35. Wielomiany aproksymujące drugiego stopnia z wagami różnymi i równymi
3.1.3 Aproksymacja - jakobiany.
Mając wielomian aproksymujący postaci :
( 88)
liczymy jego pochodne po współczynnikach :
( 89)
0
2
4
6
8
10
12
14
16
18
0 1 2 3 4 5
G(x)=a0+a1*x+a2*x^2 Funkcja dyskretna G(x) z wagami
68
Pochodne te dla węzłów mają konkretne wartości liczbowe:
Pochodne zamieścimy w macierzy dla kolejnych -wierszami- wartości , otrzymując taką jej postać,
jak w ( 90) i oznaczymy ją przez . Jest to tak zwany jakobian lub macierz Jakobiego.
( 90)
Jeżeli pomnożymy transponowaną macierz przez macierz ,to dostaniemy potrzebną nam
macierz aproksymacyjną .
Przykład 12. Aproksymacja - Jakobiany
Mamy 5 punktów o wartościach:
Jakobian dla aproksymacji funkcją drugiego stopnia: ma postać ( 91), a
jakobian transponowany JT ( 92).
( 91)
( 92)
Iloczyn ma postać ( 93).
( 93)
Tworzenie macierzy aproksymującej jest więc bardzo uproszczone. Dalsza procedura sprowadza
się do wyznaczenia wartości wyrazów macierzy i wartości współczynników A.
69
3.1.4 Aproksymacja funkcjami innymi niż wielomiany.
Nie zawsze łatwo jest dokonać aproksymacji funkcjami o złożonej postaci. Stosunkowo łatwo można
stworzyć z funkcji wykładniczych i niezależnie od tego, czy zmienna jest wykładnikiem potęgi czy jej bazą.
Jeżeli zależność jest typu ( 94):
( 94)
to można taką funkcję sprowadzić do postaci liniowej, logarytmując stronami:
pamiętamy oczywiście, że:
Równanie ( 94) sprowadzamy więc do postaci ( 95):
( 95)
Podstawiając:
otrzymamy równanie liniowe ( 96):
( 96)
Zadanie sprowadziliśmy do aproksymacji liniowej.
Podobnie możemy postąpić np. z funkcją :
( 97)
Taką funkcję wykładniczą również logarytmujemy obustronnie:
Pamiętamy, że:
tzn. że
70
Podstawiamy:
i ostatecznie mamy zadanie aproksymacji liniowej:
Innym przykładem równania aproksymującego dla zadanej funkcji dyskretnej (xi, yi; i=0,1,...,n) być
może funkcja:
Jeżeli zlogarytmujemy ją stronami:
i podstawimy:
to otrzymamy postać liniową:
Po wyznaczeniu współczynników ai należy wyznaczyć wartości a i b:
71
3.1.5 Wybór postaci funkcji aproksymującej
W zależności od obrazu funkcji dyskretnej (rozkładu punktów) dobiera się a'priori postać analityczną
funkcji aproksymującej, pamiętając oczywiście o charakterze zjawiska, opisanego danym zbiorem punktów.
Wiemy, że zasadniczą różnicą pomiędzy interpolacją i aproksymacją jest fakt, że w procesie
aproksymacji sami dokonujemy wyboru postaci funkcji. Funkcja aproksymująca jest NAJLEPSZĄ z danej klasy
funkcji, to znaczy, że przy aproksymacji np. wielomianem drugiego stopnia żaden inny wielomian drugiego
stopnia nie będzie „lepiej pasował” do zadanej funkcji dyskretnej, ale np. wielomian trzeciego stopnia może
być „lepszy” w sensie przyjętej przez nas miary. Tą miarą była suma kwadratów odchyleń wartości funkcji
aproksymującej od funkcji pierwotnej w węzłach.
Wybór postaci funkcji, jeśli nie znamy charakteru zjawiska może być trudny, co zobaczymy na
kolejnych przykładach.
Przykład 13. Aproksymacja funkcja nieliniowa - przykład A
Dla obrazu funkcji z Rys. 36 można przyjąć kilka postaci funkcji aproksymującej. Zazwyczaj przyjmuje
się:
Rys. 36. Obraz funkcji często aproksymowanej funkcjami: y(x)=ax; y(x)=ax
b; y(x)= a0+a1x+a2x
2
Wielomian drugiego stopnia
Dla danych z Rys. 36 wielomian kwadratowy ma postać:
W(x) = 0,160818 = 1,69373 x + 0,483627 x2
Wykres tego wielomianu dla danych z Rys. 36 pokazano na Rys. 37.
0,0000
50,0000
100,0000
150,0000
200,0000
250,0000
0 5 10 15
x y
1 10,26409
1,5 18,13839
2 16,33833
2,5 27,67513
3 31,93106
3,5 31,69358
4 39,90332
4,5 47,64701
5 56,94139
5,5 70,93218
6 76,31533
6,5 82,6266
7 93,91267
7,5 107,4252
8 122,8234
8,5 133,2796
9 150,9927
9,5 164,9183
10 180,5422
10,5 197,5936
11 218,4368
11,5 235,3555
72
Rys. 37. Wielomian aproksymujący y(x)= a0+a1x+a2x2
na tle pierwotnej funkcji dyskretnej
Funkcja wykładnicza typu y(x)=bax
Logarytmując funkcję stronami dostajemy:
i po podstawieniu
otrzymujemy funkcję liniową:
Po wyznaczeniu wartości współczynników a0 i a1 należy wyznaczyć wartości i i b:
Dla danych z Rys. 36 wartości współczynników są następujące:
a0 = 1,147721; a1 = 0,317705
Po obliczeniu a i b postać funkcji jest następująca:
0
50
100
150
200
250
0 5 10 15
a0+a1x+a2x^2
dyskretna
x w(x) y(x)
1 13,6022 10,26409
1,5 16,13939 18,13839
2 19,47551 16,33833
2,5 23,61056 27,67513
3 28,54453 31,93106
3,5 34,27743 31,69358
4 40,80925 39,90332
4,5 48,14 47,64701
5 56,26968 56,94139
5,5 65,19828 70,93218
6 74,92581 76,31533
6,5 85,45226 82,6266
7 96,77765 93,91267
7,5 108,902 107,4252
8 121,8252 122,8234
8,5 135,5473 133,2796
9 150,0684 150,9927
9,5 165,3884 164,9183
10 181,5074 180,5422
10,5 198,4253 197,5936
11 216,142 218,4368
11,5 234,6578 235,3555
73
Rys. 38. Funkcja typu y=b*a^x na tlE funkcji dyskretnej z poprzedniego przykładu
Funkcja wykładnicza typu y(x)=axb
Podobnie jak poprzednio logarytmujemy równanie stronami:
Podstawiając:
Otrzymujemy funkcję liniową;
Po wyznaczeniu wartości współczynników równania liniowego należy wyznaczyć współczynniki a i b:
Dla danych z Rys. 36 wartości współczynników i postać równania są następujące:
Na Rys. 39 pokazana jest ta funkcja na tle pierwotnej funkcji dyskretnej.
0
50
100
150
200
250
0 2 4 6 8 10 12 14
funkcja ba^x funkcja dyskretna
x w(x) y
1 7,900649 10,26409
1,5 13,45885 18,13839
2 19,64038 16,33833
2,5 26,33106 27,67513
3 33,45763 31,93106
3,5 40,96835 31,69358
4 48,82443 39,90332
4,5 56,99547 47,64701
5 65,45693 56,94139
5,5 74,18848 70,93218
6 83,173 76,31533
6,5 92,39578 82,6266
7 101,8441 93,91267
7,5 111,5067 107,4252
8 121,3736 122,8234
8,5 131,4361 133,2796
9 141,6862 150,9927
9,5 152,1166 164,9183
10 162,7207 180,5422
10,5 173,4926 197,5936
11 184,4267 218,4368
11,5 195,5179 235,3555
74
Rys. 39. Aproksymacja danych z przykładu A funkcją wykładniczą postaci y(x)=axb
Przykład 14. Aproksymacja funkcja nieliniowa - przykład B
Dla obrazu funkcji dyskretnej z Rys. 40 można przyjąć wielomian drugiego lub trzeciego stopnia.
Rys. 40. Obraz funkcji zazwyczaj aproksymowanej wielomianem stopnia drugiego lub trzeciego
0
50
100
150
200
250
0 2 4 6 8 10 12 14
funkcja y=ax^b funkcja dyskretna
0
10
20
30
40
50
60
70
-8 -6 -4 -2 0 2 4 6
Funkcja dyskretna
x w(x) y
1 7,900649 10,26409
1,5 13,45885 18,13839
2 19,64038 16,33833
2,5 26,33106 27,67513
3 33,45763 31,93106
3,5 40,96835 31,69358
4 48,82443 39,90332
4,5 56,99547 47,64701
5 65,45693 56,94139
5,5 74,18848 70,93218
6 83,173 76,31533
6,5 92,39578 82,6266
7 101,8441 93,91267
7,5 111,5067 107,4252
8 121,3736 122,8234
8,5 131,4361 133,2796
9 141,6862 150,9927
9,5 152,1166 164,9183
10 162,7207 180,5422
10,5 173,4926 197,5936
11 184,4267 218,4368
11,5 195,5179 235,3555
x y
-6 60,35714
-5,5 51,49436
-5 42,08595
-4,5 33,51013
-4 27,71882
-3,5 21,55592
-3 13,1015
-2,5 9,434605
-2 8,480443
-1,5 2,217345
-1 3,445157
-0,5 1,103069
0 2,686819
0,5 6,046892
1 4,132631
1,5 10,38439
2 13,22364
2,5 20,43989
3 26,95131
3,5 30,769
4 39,23798
4,5 48,73261
75
Wielomian stopnia drugiego
Dla danych z Rys. 40 wielomian drugiego stopnia ma postać:
Wykres tego wielomianu na tle funkcji dyskretnej ilustruje Rys. 41.
Rys. 41. Wykres kwadratowego wielomianu aproksymującego na tle pierwotnej funkcji dyskretnej
Wielomian stopnia trzeciego
Wielomian stopnia trzeciego, aproksymujący funkcję dyskretną z Rys. 40 ma postać:
a jego wykres zamieszczono na Rys. 42. Patrząc na wykresy wielomianów stopnia drugiego i trzeciego
z przykładu B trudno określić, który wielomian lepiej aproksymuje zadaną funkcję. W tym przykładzie
zjawisko opisane funkcją dyskretną ma charakter funkcji kwadratowej, jednak błędy pomiaru dość mocno
zniekształciły wyniki w pobliżu punktu przegięcia. Wprowadzenie wag mogłoby poprawić aproksymację.
Jeśli nie jest znany charakter zjawiska, trudno jest podjąć decyzję co do wyboru funkcji.
Dla funkcji kwadratowej norma Euklidesowa L2:
ma wartość ε=5,989399; a dla funkcji trzeciego stopnia ε=5,972595. Różnica znikoma.
0
10
20
30
40
50
60
70
-8 -6 -4 -2 0 2 4 6
Funkcja dyskretna
y=a0+a1x+a2x^2
x y w(x)
-6 60,35714 64,38264
-5,5 51,49436 52,87776
-5 42,08595 42,45703
-4,5 33,51013 33,12045
-4 27,71882 24,86801
-3,5 21,55592 17,69972
-3 13,1015 11,61558
-2,5 9,434605 6,61558
-2 8,480443 2,699727
-1,5 2,217345 -0,13198
-1 3,445157 -1,87954
-0,5 1,103069 -2,54295
0 2,686819 -2,12222
0,5 6,046892 -0,61734
1 4,132631 1,971687
1,5 10,38439 5,644859
2 13,22364 10,40218
2,5 20,43989 16,24364
3 26,95131 23,16925
3,5 30,769 31,17901
4 39,23798 40,27291
4,5 48,73261 50,45096
76
Rys. 42. Wykres wielomianu stopnia trzeciego na tle pierwotnej funkcji dyskretnej
Przykład 15. Aproksymacja funkcja nieliniowa - przykład C
Innym przykładem funkcji dyskretnej jest typ z Rys. 43. Taką funkcję aproksymuje się najczęściej
funkcjami:
Rys. 43. Funkcja dyskretna do przykładu C
0
10
20
30
40
50
60
70
-8 -6 -4 -2 0 2 4 6
funkcja dyskretna y=a0+a1x+a2x^2+a3x^4
0
1
2
3
4
5
6
7
0 5 10 15
dyskretna
x y w(x)
-6 60,35714 61,34859
-5,5 51,49436 51,12343
-5 42,08595 41,87918
-4,5 33,51013 33,61295
-4 27,71882 26,32186
-3,5 21,55592 20,003
-3 13,1015 14,65349
-2,5 9,434605 10,27043
-2 8,480443 6,850938
-1,5 2,217345 4,392114
-1 3,445157 2,891069
-0,5 1,103069 2,34491
0 2,686819 2,750746
0,5 6,046892 4,105684
1 4,132631 6,406833
1,5 10,38439 9,651301
2 13,22364 13,8362
2,5 20,43989 18,95862
3 26,95131 25,0157
3,5 30,769 32,00452
4 39,23798 39,9222
4,5 48,73261 48,76585
x y
1,5 2,135143
2 2,581393
2,5 3,045766
3 3,317045
3,5 3,564143
4 3,959968
4,5 3,98638
5 4,531821
5,5 4,668154
6 4,631705
6,5 4,560971
7 4,698253
7,5 5,150301
8 4,969443
8,5 5,296484
9 5,499992
9,5 5,513682
10 5,298985
10,5 5,495209
11 5,750427
11,5 5,523703
12 5,790473
77
Funkcja aproksymująca postaci y(x)=b+a log(x)
Funkcję aproksymującą sprowadzamy do postaci:
podstawiając:
Wyznaczając wartości współczynników mamy:
Wykres tej funkcji na tle funkcji pierwotnej pokazano na Rys. 44.
Rys. 44. Funkcja aproksymująca y(x) = b +a log(x) na tle funkcji pierwotnej
Funkcja aproksymująca postaci y(x)=b xa
Tego typu funkcja rozpatrywana była już wcześniej i sprowadzaliśmy ją do postaci liniowej
logarytmując stronami:
i podstawiając:
Otrzymana funkcja była więc postaci:
0
1
2
3
4
5
6
0 5 10 15
W(x)=b+alog(x)
Funkcja dyskretna
x W(x) y(x)
1,5 2,14994 2,135143
2 2,656336 2,581393
2,5 3,049127 3,045766
3 3,370061 3,317045
3,5 3,641406 3,564143
4 3,876457 3,959968
4,5 4,083786 3,98638
5 4,269248 4,531821
5,5 4,437019 4,668154
6 4,590181 4,631705
6,5 4,731078 4,560971
7 4,861527 4,698253
7,5 4,982973 5,150301
8 5,096577 4,969443
8,5 5,203293 5,296484
9 5,303906 5,499992
9,5 5,399079 5,513682
10 5,489369 5,298985
10,5 5,575252 5,495209
11 5,65714 5,750427
11,5 5,735386 5,523703
12 5,810302 5,790473
78
Po wyznaczeniu wartości współczynników równania liniowego należy wyznaczyć współczynniki a i b:
Postać funkcji dla danych z Rys. 43 jest następująca:
Wykres tej funkcji zawiera Rys. 45
Rys. 45. Funkcja aproksymująca y=b*x^a
Funkcja aproksymująca postaci
Wybierając taką postać funkcji musimy dokonać przekształcenia:
Podstawiając:
otrzymamy:
Wielomian aproksymujący funkcję z Rys. 43 ma poniższą postać a jego obraz jest na Rys. 46.
0
1
2
3
4
5
6
0 5 10 15
W(x)=b*x^a
dyskretna
x Wx) y
1,5 3,192133 2,135143
2 3,357552 2,581393
2,5 3,501413 3,045766
3 3,63014 3,317045
3,5 3,747508 3,564143
4 3,855954 3,959968
4,5 3,957159 3,98638
5 4,052338 4,531821
5,5 4,142405 4,668154
6 4,228064 4,631705
6,5 4,309873 4,560971
7 4,388282 4,698253
7,5 4,463663 5,150301
8 4,536322 4,969443
8,5 4,60652 5,296484
9 4,674478 5,499992
9,5 4,740385 5,513682
10 4,804407 5,298985
10,5 4,866689 5,495209
11 4,927357 5,750427
11,5 4,986524 5,523703
12 5,04429 5,790473
79
Rys. 46. Funkcja aproksymująca postaci y(x)=ax/(x+b)
Przykład 16. Aproksymacja funkcja nieliniowa - przykład D
Nie dokonując już aproksymacji na Rys. 47 pokazano obraz funkcji dyskretnej aproksymowanej
często funkcjami:
Rys. 47. Inny przykład postaci funkcji dyskretnej i jej aproksymaty
0
1
2
3
4
5
6
0 5 10 15
W(x)=ax/(x+b)
dyskretna
0
0,02
0,04
0,06
0,08
0,1
0,12
0 10 20 30 40
x Wx) y
1,5 2,137044 2,135143
2 2,604452 2,581393
2,5 2,997863 3,045766
3 3,333559 3,317045
3,5 3,623374 3,564143
4 3,876111 3,959968
4,5 4,098458 3,98638
5 4,295586 4,531821
5,5 4,471555 4,668154
6 4,629599 4,631705
6,5 4,772323 4,560971
7 4,901851 4,698253
7,5 5,019934 5,150301
8 5,128024 4,969443
8,5 5,227338 5,296484
9 5,318903 5,499992
9,5 5,403592 5,513682
10 5,482151 5,298985
10,5 5,555223 5,495209
11 5,623363 5,750427
11,5 5,687055 5,523703
12 5,746719 5,790473
80
-4
-3
-2
-1
0
1
2
3
0 2 4 6
y=a0+aa1*x+a2*x^2+a3*x^3
Przykład 17.Aproksymacja funkcja nieliniowa - przykład E
Na Rys. 48 pokazano przykłady funkcji dyskretnych
Rys. 48. Przykłady funkcji dyskretnych i zależności dobrze je aproksymujących
3.1.6 Aproksymacja - podsumowanie
Aproksymacja tym różni się od interpolacji, że postać funkcji przybliżającej funkcję dyskretną
wybierana jest a’priori.
Wybór postaci aproksymaty w przypadku analizy wyników pomiarów zależy ściśle od charakteru
badanego zjawiska.
Funkcja aproksymująca może przechodzić przez wartości węzłowe, ale najczęściej tak nie jest.
Jeżeli jako wielomian aproksymujący funkcję dyskretną o N węzłach wybierzemy wielomian stopnia N-
1, to stanie się on wielomianem interpolującym – interpolacja jest szczególnym przypadkiem
aproksymacji.
W przypadku wielomianów trygonometrycznych jakość aproksymacji mierzona odchyleniem
średniokwadratowym jest lepsza niż wielomianami algebraicznymi.
Unika się aproksymacji wielomianami wyższych rzędów, ponieważ tak jak interpolacja (o czym była
mowa wcześniej) może być źle uwarunkowana – błędy odwracania macierzy.
W przypadku analizy eksperymentu aproksymacja w porównaniu do interpolacji uwzględnia błędy
pomiarów.
Stosowanie wag pozwala na sterowanie przebiegiem funkcji aproksymującej tak, by przebiegała bliżej
punktów zmierzonych dokładniej.
-0,5
0
0,5
1
1,5
2
2,5
3
3,5
-5 0 5 10
𝑦=𝑘/(1+𝑏𝑒^(−𝑎𝑥)
0
0,5
1
1,5
2
2,5
0 2 4 6 8
y=a1*x^b1; y=1/(a2*x+b2); y=(x/(a3*x+b)
81
4 Różniczkowanie funkcji dyskretnej
Co to jest różniczkowanie?
Różniczką nazywamy nieskończenie małą zmianę danej zmiennej. Jeśli zmianę wartości oznaczymy
przez , to nazywamy ją różnicą skończoną, jeśli jednak ta różnica zmierza do zera ( 98):
( 98)
wówczas oznaczamy ją i nazywamy różniczką.
Różniczkowanie to z definicji proces wyznaczania stosunku przyrostu wartości funkcji do
przyrostu argumentu , gdy przyrost ten zmierza do zera ( 99):
( 99)
Gdy przyrost skończony zastąpimy różniczką ,wówczas używamy definicji pochodnej funkcji ( 100):
( 100)
Pochodna funkcji mówi o prędkości jej zmian, przy najmniejszej zmianie argumentu, a jej graficzną
interpretacją jest kąt nachylenia stycznej do wykresu funkcji w zadanym punkcie (Rys. 49).
Rys. 49. Geometryczna interpretacja pochodnej
Wartości pochodnej funkcji dyskretnej dla węzła można przybliżyć stosunkiem różnic skończonych ( 101)
- Rys. 50:
( 101)
Pochodna funkcji jest liczbą i to liczbą mianowaną, gdy funkcja opisuje jakieś zjawiska fizyczne.
Mówiliśmy, że wartość pochodnej oddaje prędkość zmian wartości funkcji wraz ze zmianą wartości
argumentu. Na Rys. 50 pokazano interpretację pochodnej różnicami skończonymi.
x1
α
y
x
82
`
Rys. 50. Interpretacja różnicowa pochodnej
Funkcja wolniej przyrasta dla tej samej zmiany , niż funkcja , to znaczy, że pochodna funkcji
jest w punkcie mniejsza niż (zakładając, że wyznaczyliśmy ją tak, jak na rysunku). Wiemy, że funkcja
dyskretna nie może mieć pochodnej w ścisłym sensie, jednak możemy znaleźć jej przybliżona wartość dla
wybranego węzła, korzystając z dalej opisanych metod.
Kiedy liczymy pochodną funkcji dyskretnej?
gdy mierzymy jakąś wielkość fizyczną, np. drogę w funkcji czasu i chcemy z przebiegu tej zmiennej
odczytać jej pochodną - tu prędkość:
gdy szukamy gradientu w metodach optymalizacyjnych (kierunku najszybszego wzrostu funkcji).
Szukając np. ekstremum wyznaczamy numerycznie (dla złożonych przypadków) wartości funkcji celu,
poruszając się po takiej drodze, by jak najszybciej dotrzeć do celu. Wędrować więc będziemy po ścieżce
najszybszego wzrostu (szukamy maksimum) lub spadku (szukamy minimum) wartości funkcji celu (Rys. 51).
Rys. 51. Graficzna interpretacja gradientu
Wędrujemy więc po punktach, w których pochodna jest największa.
Jak liczyć pochodną funkcji dyskretnej?
Mając funkcję dyskretną nie można policzyć pochodnej, ponieważ można ją wyznaczyć tylko dla
funkcji ciągłej.
Ścieżka najszybszego wzrostu x1
y=f(x1,x2)
x2
Ekstremum
Δy1
Δy2
Δx x
y
y1=f1(x)
y2=f2
(x)
x0
83
Zbiór wartości węzłowych należy przybliżyć gładką, ciągłą, różniczkowalna funkcją. Najprościej jest
rozpiąć na węzłach wielomian interpolacyjny. Wiemy jednak, że stosowanie wysokich stopni wielomianu przy
stałym kroku próbkowania oznacza wystąpienie efektu Rungego. Wartość pochodnej w pobliżu końców
przedziału może rażąco odbiegać od wartości oczekiwanych.
Do różniczkowania obniżamy więc stopień wielomianu, co oznacza, że interpolację przeprowadzamy
na wybranej liczbie kolejnych węzłów. W interpolacji wielomianu nie stosujemy wielomianów stopnia
wyższego niż 5 lub max. 6. Dla policzenia pochodnej obniżamy najczęściej stopień wielomianu do max.2.
4.1 Pierwsza pochodna funkcji dyskretnej.
Załóżmy, że punkty węzłowe rozłożone są równomiernie, a krok próbkowania ma wartość h
.
W takiej sytuacji skorzystać możemy z wielomianu Newtona ( 102).
( 102)
Zastosowaliśmy podstawienie ( 103):
( 103)
Wiemy, że współczynniki tego wielomianu wyznacza się z różnic skończonych:
przy czym
Zastosowaliśmy I wzór Newtona, oparty na różnicach progresywnych.
Możemy przyjąć, że:
Mając zbiór wartości dokonajmy najpierw interpolacji liniowej, ograniczając stopień
wielomianu do pierwszego:
Podstawiamy
i mamy:
84
czyli:
Ponieważ nas interesuje zależność , więc:
Ostatecznie pierwsza pochodna funkcji dyskretnej ma wartość ( 104) - Rys. 52:
( 104)
Rys. 52. Pierwsza pochodna liczona z różnic progresywnych
W przypadku osiągnięcia prawego kresu obszaru węzłów mamy problem, bo skończyły nam się
różnice progresywne . Przechodzimy więc na różnice wsteczne i II wzór Newtona:
gdzie:
Szukamy pochodnej tego wielomianu, ograniczonego do dwóch pierwszych wyrazów:
(Δy0)
Δy0
h
x
y=f (x)
(y1)
x2 x1 x0
h h
x3 xn
(x0) x1 x0 h h x1 x1 Δy1 Δy2 h x y y1=f1(x) y2=f2
(x) x2
(x1) x1 x0 h h x1 x1 Δy1 Δy2 h x y y1=f1(x) y2=f2
(x) x2
y0
y1
(y0)
Dla ostatniego węzła nie ma różnicy skończonej progresywnej Δyn=yn+1-yn
85
Interesuje nas jednak zależność do :
Różniczkujemy stronami po :
Przyjmując, że indeksy obu punktów są 0 i 1 pochodną tę zapiszemy ( 105):
( 105)
Ilustracją rachunku jest Rys. 53
Rys. 53. Pierwsza pochodna liczona z różnic wstecznych
Uwaga: Pochodna w punkcie liczona z różnic progresywnych i wstecznych może mieć różne
wartości (Rys. 54)
Rys. 54. Różnice wartości pochodnej dla tego samego węzła liczonej z różnic progresywnych i wstecznych
(Δy0)
y1
h
x
y=f (x)
(y1) (x)
x2 x1 x0 h h x3 xn
(x0) x1 x0 h h x1 x1 Δy1 Δy2
(x1) x1 x0 h h x1 x1 Δy1 Δy2
y0
(x)
y1;(y0) (x) α1
α
(y1)
y1
h
x
y=f (x)
(y1)
x2 x1 x0
h h
x3 xn
(x0) x1 x0 h h x1 x1 Δy1 Δy2 h x y y1=f1(x) y2=f2
(x) x2
(x1) x1 x0 h h x1 x1 Δy1 Δy2 h x y y1=f1(x) y2=f2
(x) x2
y0
y1
(y0)
Dla pierwszego węzła nie ma różnicy skończonej wstecznej
y0=y0-y0-1
86
W przypadku wyznaczania wartości pochodnej w punkcie korzysta się również z definicji różnicy
centralnej, którą w przypadku funkcji dyskretnej definiuje się jako różnicę wartości następującej i poprzedniej
( 106):
( 106)
Korzystając z różnic centralnych pierwszą pochodna można wyznaczyć następująco ( 107):
( 107)
Dla krańców przedziału nie istnieje różnica centralna, więc nie można dla tych węzłów określić
pochodnej ze wzoru ( 107).
Rys. 55. Różnice w wartościach pierwszych pochodnych liczonych z różnic skończonych
4.2 Druga pochodna funkcji dyskretnej.
Z interpolacji liniowej nie da się wyznaczyć drugiej pochodnej funkcji. Trzeba użyć co najmniej
wielomianu stopnia drugiego, czyli musimy rozpiąć wielomian na trzech punktach.
Ponieważ:
to na różnicach skończonych:
Druga pochodna jest pochodną pierwszej pochodnej;
Korzystając z I wzoru Newtona opisującego wielomian drugiego stopnia rozpięty na węzłach:
mamy:
y
h h
xi-1 xi+1
2
1
3
x
xi
1. pochodna z różnic progresywnych dla xi
3. pochodna z różnic centralnych dla xi
2.pochodna z różnic wstecznych dla xi
87
Jeśli zbudowaliśmy tablicę różnic skończonych, to łatwo odczytać , jeśli nie, to:
Ostatecznie wzór na pochodną drugiego rzędu wyznaczony z różnic progresywnych ma postać ( 108).
( 108)
Oczywiście na prawym końcu przedziału zabraknie nam znowu różnic skończonych i musimy przejść
na różnice wsteczne:
Dla naszych trzech punktów o indeksach 0,1 i 2 mamy:
Pochodna drugiego rzędu wyznaczona dla funkcji dyskretnej z różnic wstecznych wyraża się wzorem ( 109)
( 109)
88
4.3 Pochodna funkcji dyskretnej - podsumowanie
Wartości pochodnych funkcji dyskretnej wyznaczać można na wiele sposobów. W Tabela 17 zebrano
najczęściej używane zależności do wyznaczania pierwszej i drugiej pochodnej takiej funkcji.
Tabela 17. Definicje pochodnych funkcji dyskretnej
Pierwsza pochodna
Dwupunktowa różnica progresywna
Trzypunktowa różnica progresywna
Dwupunktowa różnica wsteczna
Trzypunktowa różnica wsteczna
Dwupunktowa różnica centralna
Druga pochodna
Trzypunktowa różnica progresywna
Trzypunktowa różnica wsteczna
Trzypunktowa różnica centralna
89
5 Całkowanie funkcji dyskretnej
Interpretacją geometryczną całki:
jest pole A pod funkcją w przedziale wartości argumentu (Rys.7)
Rys. 56. Geometryczna interpretacja całki oznaczonej
W przypadku funkcji dyskretnej musimy zastąpić ją gładką, ciągłą funkcją, tak jak i przy
różniczkowaniu.
5.1 Metoda prostokątów: Wielomian Newtona ograniczamy do pierwszego wyrazu; bazując na różnicach progresywnych:
Całka z ma postać ( 110):
( 110)
Tak będzie, jeżeli przyjmiemy różnice progresywne. Na różnicach wstecznych rachunek wygląda
następująco ( 111).
( 111)
Z Rys. 57 widać, że są to dane różnej wartości. Całka jest w tym wypadku przeszacowana, a
niedoszacowana.
x
y
y=f(x)
(x)
a
b
90
Rys. 57. Całkowanie metodą prostokątów
Licząc całkę z funkcji dyskretnej w całym zakresie węzłów dla różnic progresywnych
dostaniemy ( 112):
( 112)
a dla różnic wstecznych ( 113):
( 113)
5.2 Modyfikowana metoda prostokątów
Całkę policzyć można również modyfikowana metodą prostokątów z różnic centralnych (bierzemy
wówczas pod uwagę trzy węzły), ale jeszcze lepszym odwzorowaniem będzie potraktowanie średniej
wartości funkcji dyskretnej w przedziale jako pozornego węzła dla różnicy centralnej z krokiem próbkowania
h/2 (Rys. 58).
Rys. 58. Modyfikowana metoda prostokątów
Różnice progresywne
x
y
y=f(x)
(x)
x0 x1
y0
y1
Różnice wsteczne
x
y y
=f(x)
(
x)
x
0
x
1
y
0
y
1
x
y y=f(x)
(x)
x0
x1
y0
y1
(y1+ y2)/2
h/2 h/2
91
5.3 Metoda trapezów
Bazując na I wzorze Newtona (różnica progresywna):
czyli wielomian rozpięty na węzłach 0 i 1 wyznaczymy całkę:
Ostatecznie wzór na całkę opartą na różnicach progresywnych ma postać ( 114).
( 114)
Całkę tą ilustruje Rys. 59
Rys. 59. Całkowanie metodą trapezów
Całkę z funkcji dyskretnej w całym zbiorze węzłów liczymy wg wzoru ( 115):
( 115)
x
y
y=f(x)
(x)
x0
x1
y0
y1
Różnice progresywne
x
y
y=f(x)
(x)
x0
x1
y0
y1
Różnice wsteczne
92
Metoda trapezów na różnicach wstecznych oparta jest na II wzorze Newtona, na jego dwóch
pierwszych wyrazach:
Mamy wielomian rozpięty na węzłach 0 i 1 wyznaczony całką w granicach :
Wzór na całkę metoda trapezów na różnicach wstecznych ma więc postać ( 116):
( 116)
Całka w całym zakresie węzłów liczona jest wg wzoru ( 117):
( 117)
5.4 Metoda Simpsona 1/3 W metodzie Simpsona zakłada się, że mamy wielomian interpolacyjny drugiego stopnia rozpięty na
trzech kolejnych węzłach.
Wychodząc z I wzoru Newtona mamy ( 118):
( 118)
Podstawiam:
dla
Przekształcam zależność ( 118):
93
( 119)
Szukając całki z wielomianu:
całkujemy wielomian ( 119) w granicach :
( 120)
`Wyznaczam:
Wyliczone wartości podstawiam do ( 120).
Wzór na całkę ze wzoru Simpsona
ma więc postać ( 121):
( 121)
Korzystając ze wzoru Simpsona ( 121) pamiętać należy, że musi być parzyste.
94
Na Rys. 60 pokazano schemat całkowania tą metodą:
Rys. 60. Całkowanie metodą Simpsona 1/3
Patrząc na Rys. 60 widać, że licząc po całym obszarze wartości i bierzemy raz, wartości
nieparzyste czterokrotnie, a wartości parzyste dwukrotnie.
Stąd wzór ( 122) na całkę po przedziale :
( 122)
5.5 Metoda Simpsona 3/8
Metoda Simpsona
polega na liczeniu całki z wielomianu interpolacyjnego trzeciego stopnia,
opartego na czterech kolejnych węzłach.
Nie wyprowadzając już zależności przytoczymy wzór ( 123):
( 123)
Rys. 61 ilustruje schemat całkowania po całym zakresie węzłów .
Rys. 61. Całkowanie metodą Simpsona 3/8
0 x0 x1 x2
x3
x4
x5
x6
x7
x8
x9
y0 y1 y2 y4 y5 y6 y7 y8
1 3 3 1
I1 I2
x
y
I3
y3
1 3 3 1
1 3 3 1
0 x0 x1 x2
x3
x4
x5
x6
x7
x8
x9
y0 y1 y2 y3 y4 y5 y6 y7 y8
1 4 1
1 4 1
1 4 1
1 4 1
I1 I2 I3 I4
x
y
95
W tej metodzie liczba węzłów musi stanowić wielokrotność liczby 3:
Całka po całym zakresie węzłów wyraża się wzorem ( 124):
( 124)
5.6 Metoda Monte Carlo
Metoda Monte Carlo jest metodą losową. Polega na zliczaniu trafień w obszar pod funkcją w
stosunku do ogólnej liczby trafień w założone pole ( 125) -Rys. 62.
Rys. 62. Metoda Monte Carlo liczenia całki.
( 125)
Metod całkowania numerycznego jest więcej (nazywa się je często kwadraturami), ale innych nie
będziemy już omawiać.
a b
x
y
A
Nog y=W(x)
Ntr
96
6 Analiza widmowa.
W technice wiele sygnałów ma charakter okresowy, tzn. że wartości sygnałów powtarzają się co stały
okres (Rys. 63).
Rys. 63. Sygnał okresowy
Taki sygnał ma więc określoną częstotliwość
zwaną częstotliwością podstawową. Można
również zdefiniować dla niego częstość kołową
zwaną również częstością podstawową.
Jeżeli taki sygnał spełnia warunki Dirichleta, czyli:
przedział można podzielić na nieskończoną liczbę podprzedziałów takich, że funkcja
we wnętrzu każdego z nich jest ciągła i monotoniczna,
że funkcja ma skończoną liczbę punktów nieciągłości I-go rodzaju, czyli takich, że:
gdzie granice
są właściwe,
funkcja ma skończone wartości maksimów i minimów w każdym z podprzedziałów,
to można rozłożyć ten sygnał na sumę sygnałów harmonicznych i składowej stałej. Najmniejszą
częstotliwością tych harmonicznych jest częstotliwość podstawowa
, a częstotliwości kolejnych
składowych harmonicznych są całkowitymi jej wielokrotnościami.
Amplitudy tych składowych i składową stałą wyznaczyć można z szeregu Fouriera i taką procedurę
nazywa się transformatą Fouriera. Działanie odwrotne, czyli składanie sygnałów wyznaczonych
z transformaty by uzyskać funkcję pierwotną, nazywamy odwrotną transformatą Fouriera.
Przykładem drgania poliharmonicznego (czyli złożonego z wielu funkcji harmonicznych) jest drganie
struny np. gitary (Rys. 64):
-8
-6
-4
-2
0
2
4
6
8
0 0,02 0,04 0,06 0,08 0,1 0,12 0,14 0,16 0,18 0,2
f(t)
T T
97
Rys. 64. Drgania struny gitary
Struna teoretycznie może mieć każdą postać drgań, która charakteryzuje się falą mającą węzły w
punktach podparcia struny. Najdłuższa z fal ma długość i dłuższej fali nie można wygenerować. Jeżeli
tak drgająca struna daje dźwięk a1, to drganie ma częstotliwość .
Dla każdej kolejnej postaci drgań długość fali musi być taka, by jej węzły leżały w punktach podparcia
struny A i B (Rys. 64). Długość fali maleje więc i-krotnie, gdzie .
Zależność pomiędzy długością fali a częstotliwością jest odwrotnie proporcjonalna:
gdzie:
- długość fali (czyli najmniejsza odległość między dwoma punktami o tej samej fazie drgań),
- częstotliwość,
- prędkość fazowa fali w danym ośrodku.
Częstotliwości drgań składowych (lub częstości kołowe) są więc całkowitymi wielokrotnościami
częstotliwości podstawowej. Oczywiście ze względu na fizyczne właściwości struny (masa, tłumienie) nie
może ona przenosić wszystkich (do ) możliwych częstotliwości. Ma określone "pasmo przenoszenia". Te
wyższe częstotliwości, które przenosi struna nazywa się alikwotami i decydują one o barwie dźwięku (zależy
ona od budowy układu rezonansowego, typu struny itd.). Częstotliwość podstawowa decyduje o wysokości
dźwięku.
Tak jak struna drgają np. konstrukcje stalowe suwnic. Drgania te są sumą drgań własnych konstrukcji
(jak struny) i wymuszeń np. od napędów, parcia wiatru itp. Znajomość wartości częstotliwości drgań
konstrukcji i elementów mechanizmów jest bardzo ważna dla właściwego wymiarowania
wytrzymałościowego konstrukcji.
Częstości drgań mają również duży wpływ na ergonomię - bardzo istotnie mogą wpływać na zdrowie
operatorów maszyn ale również (zwłaszcza w przypadku mechanizmów) decydują o emisji hałasu.
A B
L
98
6.1 Szeregi Fouriera.
Na Rys. 65 mamy funkcję , która jest sumą następujących funkcji harmonicznych:
( 126)
Rys. 65.Wykresy funkcji z równań(1).
Kolejne sumy funkcji harmonicznych coraz bardziej przybliżają się do postaci piłokształtnej (Rys. 66).
-1,5
-1
-0,5
0
0,5
1
1,5
0 2 4 6 8
y1=sin(x)
y2=1/2*sin(2x)
f1=y1+y2
-2
-1,5
-1
-0,5
0
0,5
1
1,5
2
0 2 4 6 8
y3=1/3*sin(3x)
f2=f1+y3
-2
-1,5
-1
-0,5
0
0,5
1
1,5
2
0 2 4 6 8
y4=1/4*sin(4x)
f3=f2+y4
-2
-1,5
-1
-0,5
0
0,5
1
1,5
2
0 2 4 6 8
y5=1/5*sin(5x)
f4=f3+y5
99
Rys. 66.Funkcja piłokształtna
Mając taki przebieg, jak na Rys. 65, czy Rys. 66 można znaleźć składowe funkcje harmoniczne,
rozkładając funkcję w szereg Fouriera ( 127).
( 127)
Współczynnik nazywa się współczynnikami Fouriera i wyznacza się ich wartości ze wzorów ( 128):
( 128)
gdzie:
- okres funkcji ,
- funkcja wyjściowa,
- częstość podstawowa
,
- liczba całkowita
Zadanie polega więc na wyznaczeniu wartości współczynników dla funkcji harmonicznych,
których częstości równe są:
a amplitudy .
-2
-1,5
-1
-0,5
0
0,5
1
1,5
2
0 2 4 6 8 10 12 14 16 18 20
piła suma 15 kolejnych harmonicznych f(2T+)
f(2T-)
100
6.1.1 Wyprowadzenie wartości współczynników Fouriera
Żeby wyznaczyć wartości współczynnika mnożymy obie strony równania ( 127) przez i
wyliczamy wartości średnie obu stron równania w całym zakresie zmienności .
Średnią wyznaczamy z całki ( 129):
( 129)
Wyznaczymy ar ć współczynnika ,postępując zgodnie z opisaną procedurą:
( 130)
Pod znakami sum mamy iloczyny stałych oraz:
Wyznaczymy całki z tych iloczynów po przedziale , pamiętając, że:
Iloczyn zapiszemy jako i przekształcamy:
( 131)
Podobnie wyznaczamy wartości iloczynów oraz iloczyn , który
później będzie nam potrzebny do wyznaczenia wartości współczynnika .
Ostatecznie:
( 132)
101
Wartości średnie tych iloczynów, czyli całki z przedziału dzielone przez okres będą miały
wartości:
dla
Analogicznie policzymy średnie w okresie z pozostałych iloczynów i ostatecznie:
Współczynniki i mają więc wartości ( 133):
( 133)
Wartości współczynników Fouriera są amplitudami kolejnych drgań cosinusoidalnych i
sinusoidalnych . Zakładając, że składowa stała ma wartość , wartości współczynników można
przedstawić w funkcji częstotliwości lub częstości (Rys. 67):
Rys. 67.Wykres wartości amplitud harmonicznych funkcji składowych
Wartości współczynników Fouriera są wartościami dyskretnymi. Wykres ich wartości jest tzw.
widmem prążkowym.
A(f)
f
fp 2fp 3fp 4fp 5fp
A0
A1
A2
A3
A4
A5
B(f)
f
fp 2fp 3fp 4fp 5fp
B1
B2
B3
B4
B5
102
Szereg Fouriera można przedstawić w innej postaci, jako sumę funkcji wyłącznie sinus lub cosinus, ale
przesuniętych wzajemnie w fazie.
Podstawiamy:
ponieważ:
możemy napisać:
( 134)
gdzie:
Możemy również funkcję przedstawić jako sumę wyłącznie funkcji sinus ( 135):
( 135)
gdzie:
Wyznaczenie wsp. szeregu Fouriera jest tzw. prostym przekształceniem Fouriera, a proces
odtwarzania sygnału pierwotnego z sumy składowych harmonicznych nazywamy odwrotnym
przekształceniem Fouriera.
Przykład 18. Rozwinięcie w szereg Fouriera funkcji prostokątnej
Rozwinąć w szereg Fouriera funkcję prostokątną z Rys. 68:
( 136)
Rys. 68. Funkcja prostokątna
T/2 T
g=1
y=f(t)
t
103
Wyznaczamy współczynniki Fouriera:
;
;
dla:
Na Rys. 69 pokazano transformatę odwrotną:
Rys. 69, Transformata odwrotna
Na Rys. 69 zaznaczono kółkiem tzw. efekt Gibbsa. Jest on również dobrze widoczny na Rys. 66.
Efekt Gibbsa jest charakterystycznym obrazem odwrotnej transformaty Fouriera w punktach
nieciągłości. "Zafalowanie" w punkcie nieciągłości przekracza wartość funkcji pierwotnej o ok 9%. By uniknąć
tego efektu stosuje się tzw. okienkowanie lub mnożenie danych przez "współczynnik sumy Lanczos'a"
podczas obliczania transformaty. Te zagadnienia nie wchodzą jednak w zakres niniejszego wykładu.
-0,8
-0,6
-0,4
-0,2
0
0,2
0,4
0,6
0,8
1
1,2
0 1 2 3 4 5 6
suma 9 harmonicznych
częstość podstawowa
104
Przykład 19. Rozwinąć w szereg Fouriera funkcję f(t)-t
Rozwinąć w szereg Fouriera funkcję na przedziale (Rys. 70)
Rys. 70. Funkcja f(t)=t
Ponieważ omawiając interpolację wielomianem trygonometrycznym stwierdziliśmy, że funkcja
nieparzysta nie zawiera składowych postaci , więc i w tym przypadku poszukamy tylko
współczynników , które stoją przy .
Całkę wyznaczamy przez części:
Dla naszego przypadku:
Wyliczamy całkę:
Całka oznaczona we wzorze na
t
y y=f(t)
π -π
π
-π
105
dla kolejnych :
Szereg Fouriera jest następujący:
Na Rys. 71 jest ilustracja odwrotnej transformaty Fouriera ograniczonej do 9 pierwszych
harmonicznych. Również w tym przypadku widoczny jest efekt Gibbsa.
Rys. 71. Odwrotna transformata Fouriera funkcji z Rys. 70
6.2 Postać zespolona transformaty Fouriera
Szereg Fouriera można przedstawić również w postaci zespolonej. Ponieważ liczby zespolone nie
należą wśród studentów wydziału mechanicznego do szczególnie lubianego działu matematyki, ograniczymy
się tylko do podania wzorów, bez ich wyprowadzania.
Taka postać transformaty Fouriera będzie nam potrzebna ze względu na fakt, że algorytm jej
wyznaczania w arkuszu kalkulacyjnym Microsoft Excel bazuje na tej postaci.
-4
-3
-2
-1
0
1
2
3
4
-4 -3 -2 -1 0 1 2 3 4
suma 9 pierwszych harmonicznych
częstość podstawowa
106
Wzór ( 137) zawiera taką postać transformaty Fouriera:
( 137)
gdzie
jest amplitudą zespoloną
Ciąg nazywa się widmem amplitudowym funkcji , a ciąg nazywa się widmem
fazowym funkcji .
Widmo fazowe wyznacza się następująco:
Widmo z szeregu trygonometrycznego nie ma częstotliwości ujemnych, a widmo z szeregu
zespolonego ma i dodatnie i ujemne.
107
6.3 Dyskretne przekształcenie Fouriera
Dyskretne przekształcenie Fouriera dotyczy funkcji, która jest funkcją dyskretną. Przyjmuje się, że w
okresie T funkcja ma N próbek, czyli . Mamy więc okresową funkcję dyskretną (Rys. 72):
Rys. 72. Okresowa funkcja dyskretna
Dla N-elementowego ciągu xn dyskretną transformatę Fourier'a definiujemy następująco:
Po wyliczeniu amplitudy zespolonej xn widmo amplitudowe wyliczamy z zależności:
a widmo fazowe następująco:
Wyliczone widmo trzeba przeskalować - częstości (lub częstotliwości) wyliczamy następująco:
,
gdzie:
jest częstotliwością próbkowania
t - czas bieżący
N liczba próbek
Dzielimy więc fp przez liczbę przedziałów (N-1) otrzymując Δf. Pierwsza częstotliwość jest równa zeru a
kolejne są większe od siebie o Δf. Amplitudę normujemy, dzieląc ją przez połowę liczby punktów (bo zgodnie
z kryterium Nyquista bierzemy pod uwagę połowę zakresu częstotliwości).
T
t
0 1 2
x(n)
Δt
x(t)
T=N*Δt
N-1
108
Algorytm DFT zaimplementowany w Excelu wymaga, by liczba próbek wynosiła . Najczęściej
128 lub 256 próbek.
Na pokazano przykład widma amplitudowego wyznaczonego w arkuszu Excel z funkcji dyskretnej
podanej w Tabela 1, zawierającej również wyniki analizy widmowej. Pierwotną była funkcja harmoniczna :
y(t)= Asin(2πft), przy czym A = 4, a okres funkcji wynosi T=1 [s] (f0=1 Hz). Przyjmujemy N+1 =32 punkty i
częstotliwość próbkowania fp=7 Hz.
Tabela 18. Wyjściowa funkcja dyskretna i wyniki analizy widmowej
nr t y widmo zespolone częstotliwość
Amplituda składowych
harmonicznych
1 0 0 8,76257253506962 0 0,565327
2 0,142857 3,127326 9,1871412031541+0,473818021581604i 0,22580645 0,593507
3 0,285714 3,899712 10,7631610716784+1,10549796873685i 0,4516129 0,698051
4 0,428571 1,735535 15,1598980936657+2,31804125150958i 0,67741935 0,989426
5 0,571429 -1,73553 36,4164639287741+7,33827355742665i 0,90322581 2,396676
6 0,714286 -3,89971 -42,8968598160841-10,623187117189i 1,12903226 2,85114
7 0,857143 -3,12733 -11,4760696988538-3,32928324863725i 1,35483871 0,770919
8 1 -8,1E-15 -6,07079047082578-1,98668207948881i 1,58064516 0,412103
9 1,142857 3,127326 -3,89971164872731-1,39179097340187i 1,80645161 0,267138
10 1,285714 3,899712 -2,76348929130975-1,03971931963955i 2,03225806 0,190491
11 1,428571 1,735535 -2,08646993847421-0,796793817258333i 2,25806452 0,144093
12 1,571429 -1,73553 -1,65328702985206-0,611947031833169i 2,48387097 0,113736
13 1,714286 -3,89971 -1,36617378849538-0,461149740027777i 2,70967742 0,093026
14 1,857143 -3,12733 -1,17522738973442-0,331353421543958i 2,93548387 0,078777
15 2 -1,6E-14 -1,05321838481072-0,214609550344356i 3,16129032 0,069346
16 2,142857 3,127326 -0,985078488832067-0,10552618976375i 3,38709677 0,063917
17 2,285714 3,899712 -0,963149237615059 3,61290323 0,062139
18 2,428571 1,735535 -0,98507848883207+0,105526189763742i
19 2,571429 -1,73553 -1,05321838481072+0,214609550344357i
20 2,714286 -3,89971 -1,17522738973441+0,331353421543946i
21 2,857143 -3,12733 -1,3661737884954+0,461149740027816i
22 3 -3,1E-14 -1,65328702985206+0,611947031833153i
23 3,142857 3,127326 -2,08646993847421+0,796793817258333i
24 3,285714 3,899712 -2,76348929130974+1,03971931963955i
25 3,428571 1,735535 -3,8997116487273+1,39179097340187i
26 3,571429 -1,73553 -6,07079047082576+1,98668207948881i
27 3,714286 -3,89971 -11,4760696988538+3,32928324863728i
28 3,857143 -3,12733 -42,8968598160841+10,6231871171891i
29 4 -3,2E-14 36,4164639287741-7,33827355742669i
30 4,142857 3,127326 15,1598980936657-2,31804125150964i
31 4,285714 3,899712 10,7631610716784-1,10549796873688i
32 4,428571 1,735535 9,18714120315407-0,473818021581636i
-5
0
5
0 1 2 3 4 5
109
Rys. 73. Widmo funkcji z Tabela 18
Nasza funkcja wyjściowa była czystym drganiem harmonicznym, a wykres ujawnia wiele składowych
o różnych amplitudach. Nie ma tylko jednego prążka o częstotliwości 1 Hz. Również amplituda drgania o f=1
Hz jest mniejsza od A=4 (taka amplitudę miał nasz sygnał wyjściowy. Jest to efekt tzw. przecieku.
Przeciek pojawia się dlatego, że Dyskretna Transformata Fouriera (zdefiniowana dla granic
skończonych, a nie <-∞,∞>) zakłada okresowość sygnału i rozciąga sygnał do nieskończoności powielając go).
Powoduje to powstanie nieciągłości (patrz Rys. 74). Moc sygnału całkowita jest taka jak sygnału wyjściowego,
stąd prążek dominujący nie osiąga wartości amplitudy sygnału wyjściowego.
Rys. 74. Powielanie sygnału w DFT
Jeśli w oknie próbkowania zmieści się całkowita liczba okresów, to widmo powinno nie mieć
przecieku (patrz Tabela 19, Rys. 1)
0
0,5
1
1,5
2
2,5
3
0,00 0,23 0,45 0,68 0,90 1,13 1,35 1,58 1,81 2,03 2,26 2,48 2,71 2,94 3,16 3,39 3,61
110
Tabela 19. Sygnał harmoniczny jak poprzednio, próbkowany z częstotliwością 10,66667 Hz (okres próbkowania 0,09375 s)
nr t y widmo
zespolone
częstotliwość Amplituda
składowych harmonicznych
1 0 0 0 0 0
2 0,09375 2,222280932 0 0,333333333 0
3 0,1875 3,69551813 0 0,666666667 0
4 0,28125 3,923141122 -64i 1 4
5 0,375 2,828427125 0 1,333333333 0
6 0,46875 0,780361288 0 1,666666667 0
7 0,5625 -1,530733729 0 2 0
8 0,65625 -3,325878449 0 2,333333333 0
9 0,75 -4 0 2,666666667 0
10 0,84375 -3,325878449 0 3 0
11 0,9375 -1,530733729 0 3,333333333 0
12 1,03125 0,780361288 0 3,666666667 0
13 1,125 2,828427125 0 4 0
14 1,21875 3,923141122 0 4,333333333 0
15 1,3125 3,69551813 0 4,666666667 0
16 1,40625 2,222280932 0 5 0
17 1,5 1,47018E-15 0 5,333333333 0
18 1,59375 -2,222280932 0 5,666666667 0
19 1,6875 -3,69551813 0 6 0
20 1,78125 -3,923141122 0 6,333333333 0
21 1,875 -2,828427125 0 6,666666667 0
22 1,96875 -0,780361288 0 7 0
23 2,0625 1,530733729 0 7,333333333 0
24 2,15625 3,325878449 0 7,666666667 0
25 2,25 4 0 8 0
26 2,34375 3,325878449 0 8,333333333 0
27 2,4375 1,530733729 0 8,666666667 0
28 2,53125 -0,780361288 0 9 0
29 2,625 -2,828427125 0 9,333333333 0
30 2,71875 -3,923141122 64i 9,666666667 4
31 2,8125 -3,69551813 0 10 0
32 2,90625 -2,222280932 0 10,33333333 0
0
0,2
0,4
0,6
0,8
1
0 0,2 0,4 0,6 0,8 1
y=4sin(2*pi()*t)
0
2
4
6
0,0 0,3 0,7 1,0 1,3 1,7 2,0 2,3 2,7 3,0 3,3 3,7 4,0 4,3 4,7 5,0
Widmo amplitudowe
111
Kolejnym przykładem jest funkcja z .
Rys. 75. Przykład funkcji okresowej - funkcja dyskretna i jej widmo amplitudowe
W widmie widoczne są wyraźne słupki częstotliwości dominujących.
-10
-5
0
5
10
0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1
0,00
0,50
1,00
1,50
2,00
2,50
3,00
3,50
4,00
4,50
0,0
7,5
15
,0
22
,6
30
,1
37
,6
45
,1
52
,6
60
,2
67
,7
75
,2
82
,7
90
,2
97
,8
10
5,3
11
2,8
12
0,3
12
7,8
13
5,4
14
2,9
15
0,4
15
7,9
16
5,4
17
2,9
18
0,5
18
8,0
19
5,5
20
3,0
21
0,5
21
8,1
22
5,6
23
3,1
24
0,6
24
8,1
25
5,7
26
3,2
27
0,7
Widmo amplitudowe
112
7 Równania nieliniowe
Rozwiązywanie równań polega na znalezieniu miejsc zerowych funkcji, która może mieć ich wiele.
Trzeba więc najpierw oszacować przedział, w którym znajduje się poszukiwany pierwiastek równania.
Nazywa się go przedziałem izolacji pierwiastka. Poszukiwanie miejsc zerowych opiera się na twierdzeniu
Bolzano-Cauchy'ego.
Twierdzenie Bolzano-Cauchy'ego
Jeżeli funkcja ciągła ma na końcach przedziału domkniętego wartości różnych znaków
, to wewnątrz tego przedziału istnieje co najmniej jeden pierwiastek równania (Rys. 76)
Rys. 76. Ilustracja twierdzenia Bolzano-Cauchy'ego
Poszukiwanie miejsc zerowych odbywać się może różnymi metodami. W przypadku funkcji dyskretnej
stosowaliśmy metodę interpolacji odwrotnej, ale istnieje wiele metod numerycznych rozwiązywania równań
nieliniowych.
7.1 Metoda bisekcji Metoda bisekcji zwana również metodą równego podziału (czy połowienia) polega na sukcesywnym
dzieleniu przedziału izolacji pierwiastka na pół.
Najpierw musimy znaleźć przedział, w którym istnieje jeden pierwiastek i obrać granice tego
przedziału . Najczęściej tworzy się w tym celu wykres funkcji lub analizuje jej stabelaryzowane wartości.
W tym przedziale muszą być spełnione następujące warunki:
funkcja jest w przedziale ciągła,
funkcja na krańcach przedziału ma różne znaki:
-4000
-3000
-2000
-1000
0
1000
2000
3000
-50 -40 -30 -20 -10 0 10 20
y=f(x)
f(b)
a b
f
(a)
113
Algorytm poszukiwania miejsca zerowego polega na tym, że:
a) Przedział dzielimy na pół:
b) Sprawdzamy, czy , gdzie bliskie zera jest dokładnością wyznaczenia pierwiastka
równania (szukając "dokładnego" zera, algorytm pewnie sie nie skończy).
a) Jeśli , to algorytm się kończy i miejscem zerowym jest , tzn. .
b) Jeśli , to szukamy dalej.
c) Jeśli , to za podstawiamy i proces dzielenia przedziału powtarzamy.
d) Jeśli , to za podstawiamy i powtarzamy czynności od punktu a).
Na Rys. 77 jest schemat algorytmu i jego ilustracja graficzna.
Start
Dane:a, b, ε
y=f(a)
x=(a+b)/2
y1=f(x)
y*y1<0 a=x
b=x
y1<=ε koniecx1=x
TAK
NIE
TAK
NIE
Rys. 77. Schemat metody bisekcji
Metoda bisekcji jest zawsze zbieżna, ale ma wady. Jest niestety wolnozbieżna i im bliżej pierwiastka,
tym bardziej prędkość obliczeń maleje.
Przykład 20 - Bisekcja
Mamy równanie:
( 138)
Znaleźć miejsce zerowe w przedziale <1,22> z dokładnością ε=0,001. W zadanym przedziale funkcja
jest ściśle monotoniczna.
a b
f(x)
x1 x2 x3
f(x1)
f(x2)
f(x3)
Przedział I
Przedział II
Przedział III
y
x
114
W pierwszym kroku wyznaczamy połowę przedziału wartości argumentów:
I wartość funkcji dla x1:
Wartość ta nie spełnia warunku miejsca zerowego:
( 139)
By dzielić przedział dalej, trzeba podjąć decyzję co do kierunku podziału - w stronę lewego, czy
prawego krańca przedziału zmienności x. W tym celu sprawdzamy znak iloczynu:
( 140)
Jeżeli warunek jest spełniony, to znaczy, że poszukiwać należy pierwiastka w przedziale <a;x1>,
ponieważ wartość funkcji na krańcach tego przedziału ma różne znaki. Podstawiamy więc za b wartość x1
i powtarzamy rachunki, wyznaczając połowę nowego przedziału. Gdy warunek ( 140) nie jest spełniony,
wówczas za a podstawiamy x1, pozostawiając wartość prawego końca przedziału bez zmian (b) i powtarzamy
rachunki tak długo, aż spełnimy warunek ( 139).
W Tabela 20 zebrano wyniki kolejnych iteracji. Ostatecznie miejscem zerowym funkcji ( 138) jest
x=13,01906.
Tabela 20. Kolejne kroki iteracji dla przykładu 1.
Nr iteracji
a b f(a) f(b) x f(x) |f(x)]<=ε f(a)*f(x)<0
1 1 22 2993,1 -5329,2 11,5 656,5875 FAŁSZ FAŁSZ
2 11,5 22 656,5875 -5329,2 16,75 -1923,56 FAŁSZ PRAWDA
3 11,5 16,75 656,5875 -1923,56 14,125 -524,872 FAŁSZ PRAWDA
4 11,5 14,125 656,5875 -524,872 12,8125 93,68958 FAŁSZ FAŁSZ
5 12,8125 14,125 93,68958 -524,872 13,46875 -208,718 FAŁSZ PRAWDA
6 12,8125 13,46875 93,68958 -208,718 13,14063 -55,7853 FAŁSZ PRAWDA
7 12,8125 13,14063 93,68958 -55,7853 12,97656 19,38569 FAŁSZ FAŁSZ
8 12,97656 13,14063 19,38569 -55,7853 13,05859 -18,0916 FAŁSZ PRAWDA
9 12,97656 13,05859 19,38569 -18,0916 13,01758 0,674127 FAŁSZ FAŁSZ
10 13,01758 13,05859 0,674127 -18,0916 13,03809 -8,70196 FAŁSZ PRAWDA
11 13,01758 13,03809 0,674127 -8,70196 13,02783 -4,01223 FAŁSZ PRAWDA
12 13,01758 13,02783 0,674127 -4,01223 13,02271 -1,66863 FAŁSZ PRAWDA
13 13,01758 13,02271 0,674127 -1,66863 13,02014 -0,49714 FAŁSZ PRAWDA
14 13,01758 13,02014 0,674127 -0,49714 13,01886 0,088518 FAŁSZ FAŁSZ
15 13,01886 13,02014 0,088518 -0,49714 13,0195 -0,20431 FAŁSZ PRAWDA
16 13,01886 13,0195 0,088518 -0,20431 13,01918 -0,05789 FAŁSZ PRAWDA
17 13,01886 13,01918 0,088518 -0,05789 13,01902 0,015314 FAŁSZ FAŁSZ
18 13,01902 13,01918 0,015314 -0,05789 13,0191 -0,02129 FAŁSZ PRAWDA
19 13,01902 13,0191 0,015314 -0,02129 13,01906 -0,00299 FAŁSZ PRAWDA
20 13,01902 13,01906 0,015314 -0,00299 13,01904 0,006163 FAŁSZ FAŁSZ
21 13,01904 13,01906 0,006163 -0,00299 13,01905 0,001588 FAŁSZ FAŁSZ
22 13,01905 13,01906 0,001588 -0,00299 13,01906 -0,0007 PRAWDA
115
Na Rys. 78 pokazano ilustrację trzech pierwszych kroków oszacowania miejsca zerowego.
Rys. 78. Ilustracja rozwiązania przykładu 1
7.2 Metoda "regula falsi" Reguła falsi znaczy z łac. fałszywa prosta. Jest to nazwa metody poszukiwania miejsc zerowych funkcji
, która:
jest funkcją ciągłą w przedziale ;
jest w tym przedziale różnowartościowa ;
w przedziale jest monotoniczna - pochodna pierwsza i druga istnieją i nie zmieniają znaku.
Algorytm wyznaczania miejsc zerowych odbywa się w kolejnych krokach:
a) Przez punkt i prowadzi się cięciwę.
b) Wyznaczamy punkt przecięcia tej cięciwy z osią odciętych .
c) Sprawdzamy, czy (dokładność obliczeń):
jeśli TAK - jest miejscem zerowym.
jeśli NIE - to d).
d) Sprawdzamy, czy :
e) jeśli TAK, to i wracamy do a).
f) jeśli NIE, to i wracamy do a).
Wybierając przedział izolacji pierwiastka staramy się tak go wybrać, by funkcja w analizowanym
przedziale <a,b> była ściśle monotoniczna. Mamy wtedy gwarancję, że algorytm nam się nie rozbiega. Na Rys.
79 pokazano przebieg kolejnego kroku algorytmu, w zależności od wartości pierwszej i drugiej pochodnej w
pierwszym przybliżeniu miejsca zerowego (x1). Schemat algorytmu zawiera Rys. 80
-6000
-5000
-4000
-3000
-2000
-1000
0
1000
2000
3000
4000
0 5 10 15 20 25
f(x) a b x1 x2 x3 x4 miejsce zerowe
a
b
x xxx
116
Rys. 79. Wybór krańców w "regula falsi"
Start
Dane:a,b,ε
ya=f(a)yb=f(b)
x=a-ya*(b-a)/[yb-ya]
y=f(x)
Y<=ε x1=x Koniec
a=x
TAK
NIE
Jeżeli f’(x)*f(x)>0 to a=xJeżeli f’(x)*f(x)<0 to b=x
Rys. 80. Metoda "regula falsi" – algorytm dla f’(x)*f(x)>0
x
y
a b
x1 x2
f(x1) f(x)
f'(x1)<0 a=xi f"(x1)<0 b=b
x
y
a b x1 x2
f(x1)
f(x)
f'(x1)<0 a=a f"(x1)>0 b= xi
x
y
a b x1 x2
f(x1)
f(x)
f'(x1)>0 a=a f"(x1)<0 b= xi
x
y
a b x1 x2
f(x1)
f(x)
f'(x1)>0 a=a f"(x1)>0 b= xi
oszacowanie pierwiastka z niedomiarem oszacowanie pierwiastka z nadmiarem
oszacowanie pierwiastka z niedomiarem oszacowanie pierwiastka z nadmiarem
117
Z Rys. 79 wynika, że:
Zatem wartości w kolejnym kroku:
Przykład 21. Metoda "regula falsi"
Mamy równanie:
Znaleźć miejsce zerowe w przedziale <1,22> z dokładnością ε=0,001. W zadanym przedziale funkcja
jest ściśle monotoniczna.
Wartość x1 wyznaczamy ze wzoru:
Dla pierwszego przybliżenia wartości pierwszej i drugiej pochodnej wynoszą:
118
Obie pochodne są ujemne, tzn. że dolny kraniec przedziału przyjmuje wartości xi, a prawy pozostaje
niezmienny.
Kolejne kroki obliczeń zawarto w Tabela 21. Z rachunków uzyskano wynik x=13,01905 w 12 iteracji.
Poprzednio - w metodzie bisekcji potrzebowaliśmy aż 22 iteracje i wyznaczone w tej metodzie miejsce
zerowe z taką samą dokładnością jak i teraz występowało dla x=13,01906.
Tabela 21. Kolejne kroki iteracji - metoda "regula falsi"
Nr iteracji
a b f(a) f(b) x f(x) |f(x)|<=ε
1 1 22 2993,1 -5329,2 8,552612 1710,801 FAŁSZ
2 8,552612 22 1710,801 -5329,2 11,82048 524,3512 FAŁSZ
3 11,82048 22 524,3512 -5329,2 12,73234 129,6758 FAŁSZ
4 12,73234 22 129,6758 -5329,2 12,9525 30,33873 FAŁSZ
5 12,9525 22 30,33873 -5329,2 13,00371 7,005362 FAŁSZ
6 13,00371 22 7,005362 -5329,2 13,01552 1,61266 FAŁSZ
7 13,01552 22 1,61266 -5329,2 13,01824 0,37098 FAŁSZ
8 13,01824 22 0,37098 -5329,2 13,01887 0,085327 FAŁSZ
9 13,01887 22 0,085327 -5329,2 13,01901 0,019625 FAŁSZ
10 13,01901 22 0,019625 -5329,2 13,01904 0,004514 FAŁSZ
11 13,01904 22 0,004514 -5329,2 13,01905 0,001038 FAŁSZ
12 13,01905 22 0,001038 -5329,2 13,01905 0,000239 PRAWDA
7.3 Metoda siecznych Metoda siecznych jest modyfikacją metody "regula falsi". Końce przedziału <a;b> zastępujemy
przedziałem <xn-1;xn>, czyli poprzednio wyliczonymi oszacowaniami pierwiastka równania.
Warunki, które musi spełnić funkcja w przedziale izolacji pierwiastka są następujące:
funkcja jest w przedziale ciągła i określona;
funkcja na krańcach przedziału jest różnowartościowa ;
funkcja jest w przedziale ściśle monotoniczna - nie ma w przedziale lokalnych ekstremów.
Kolejne przybliżenia pierwiastka wyznaczamy ze wzoru ( 141):
( 141)
Algorytm przebiega następująco:
a) Podstawiamy x1=a; x2=b
b) Przez końce przedziału <x1;x2 > prowadzimy sieczną i wyznaczamy x3 ze wzoru ( 141)
oraz wartość f(x3)
c) Sprawdzamy, czy x3 spełnia warunek miejsca zerowego , jeśli tak,
kończymy algorytm, jeśli nie, to dalej d).
d) Podstawiamy x1=x2 oraz x2=x3 i wracamy do b),
e) Metoda siecznych i jest dość szybko zbieżna.
119
Na Rys. 81 pokazano schemat graficzny metody i jej schemat blokowy.
Rys. 81. Schemat graficzny metody siecznych
W metodzie siecznych nie obowiązuje już założenie, że funkcja na końcach przedziału ma mieć różne
znaki, jednak należy śledzić wyniki algorytmu, ponieważ metoda może dać ciąg rozbieżny.
Przykład 22. Metoda siecznych
W tym przykładzie rozwiążemy zadanie rozwiązywane obiema poprzednimi metodami.
Mamy więc równanie:
Znaleźć miejsce zerowe w przedziale <1,22> z dokładnością ε=0,001. W zadanym przedziale funkcja
jest ściśle monotoniczna.
Kolejne kroki algorytmu zawarto Tabela 22. Już w 6 iteracji znaleźliśmy miejsce zerowe z zadaną
dokładnością. W przypadku metody bisekcji kroków było 22, "regula falsi" 12, a w tej metodzie już po 6
iteracjach znaleźliśmy wynik.
Tabela 22. Wyniki obliczeń metodą siecznych
Nr iteracji
x1 x2 f(x1) f(x2) x3 f(x3) f(x3)<=ε
1 1 22 2993,1 -5329,2 8,552612 1710,801 FAŁSZ
2 22 8,552612 -5329,2 1710,801 11,82048 524,3512 FAŁSZ
3 8,552612 11,82048 1710,801 524,3512 13,26472 -113,216 FAŁSZ
4 11,82048 13,26472 524,3512 -113,216 13,00826 4,931937 FAŁSZ
Start
Dane:a,b,ε
ya=f(a)yb=f(b)
x=a-ya*(b-a)/[yb-ya]
y=f(x)
Y<=ε x1=x Koniec
a=x
TAK
NIE
Jeżeli f’(x)*f(x)>0 to a=xJeżeli f’(x)*f(x)<0 to b=x
x1=a
x2=b
x3 x4
x5
x6
y
x
120
5 13,26472 13,00826 -113,216 4,931937 13,01896 0,042281 FAŁSZ
6 13,00826 13,01896 4,931937 0,042281 13,01905 -1,6E-05 PRAWDA
7.4 Metoda stycznych
W metodzie Newtona funkcja musi spełniać następujące warunki:
Funkcja w przedziale jest ciągła i określona.
Na krańcach przedziału ma różne znaki:
Funkcja w przedziale jest ściśle monotoniczna - ma pierwszą pochodną o stałym znaku.
Metoda stycznych jest modyfikacją metody siecznych, w której wyznaczaliśmy kolejne punkty
przecięcia siecznych z osią wg wzoru ( 142):
( 142)
Jeśli będzie zbliżać się do , to w granicy ułamek ze wzoru ( 142) stanie się odwrotnością
pochodnej funkcji w punkcie ( 143):
( 143)
121
Start
Dane:a, b, x,ε
y=f(x)
y’=f’(x)
x1=x-f(x)/f’(x)
y1<=ε STOPx1=x
TAK
NIE
y1=f(x1)
y1<=ε x1=x STOP
TAK
NIE
y=y1x=x1
Rys. 82. Ilustracja graficzna i algorytm metody stycznych
Z Rys. 82 wynika, że:
a
Ostatecznie:
Startujemy z punktu , leżącego dostatecznie blisko miejsca zerowego. Pożądanym jest, by znaki
drugiej pochodnej i funkcji w punkcie były zgodne. Jeśli tak nie będzie, algorytm będzie rozbieżny i nie
wyznaczymy pierwiastka. W punkcie wyznaczamy wartości funkcji i jej pochodną pierwszego rzędu i ze
wzoru (3) wyznaczamy . Jeśli (przyjęta dokładność oszacowania pierwiastka), to kończymy
obliczenia przyjmując, że . Jeśli nie, to dla wyznaczamy i oraz nowy punkt .
Sprawdzamy, czy punkt spełnia założone warunki odwzorowania zera . Jeśli tak, kończymy
algorytm. Jeśli nie, kontynuujemy dla kolejnego punktu.
Algorytm (Rys. 82) przebiega więc w następującej kolejności działań:
a) Obieramy punkt startowy x możliwie blisko miejsca zerowego
b) Dla x wyznaczamy wartość funkcji f(x) i wartość jej pierwszej pochodnej f'(x).
c) Jeżeli:
x
y
x1 x
f(x)
f(x1)
α
tgα=f'(x)
122
Algorytm się kończy i miejscem zerowym jest x. Jeśli nie, wyznaczamy x1
d) Wyznaczamy x1:
e) Podstawiamy x=x1 i wracamy do b)
W metodzie stycznych odwrotnie niż w metodzie "regula falsi" (Rys. 79) pierwiastek jest
niedoszacowany lub przeszacowany.
Przykład 23. Metoda stycznych
Tak jak w poprzednich przykładach mamy rozwiązać równanie:
Mamy znaleźć miejsce zerowe w przedziale <1,22> z dokładnością ε=0,001. W zadanym przedziale
funkcja jest ściśle monotoniczna. Jako punkt startowy obrano x=4.
W przedstawiono przebieg obliczeń. Tym razem z zadaną dokładnością ε=0,001 znaleziono miejsce
zerowe w 10 iteracji - wartość odciętej, odpowiadającej |f(x)|<= ε wynosi x= 13,01905 . Metoda jest szybko
zbieżna.
Tabela 23. Wyniki obliczeń metodą stycznych.
Nr iteracji
x f(x) f'(x) |f(x)|<=ε x1=x-f(x)/f'(x)
1 4 2738,4 -145,8 FAŁSZ 22,781893
2 22,78189 -5901,71 -891,441 FAŁSZ 16,1614731
3 16,16147 -1591,64 -628,61 FAŁSZ 13,62947842
4 13,62948 -284,886 -528,09 FAŁSZ 13,09001466
5 13,09001 -32,5041 -506,674 FAŁSZ 13,02586277
6 13,02586 -3,11195 -504,127 FAŁSZ 13,01968982
7 13,01969 -0,29071 -503,882 FAŁSZ 13,01911289
8 13,01911 -0,02709 -503,859 FAŁSZ 13,01905912
9 13,01906 -0,00252 -503,857 FAŁSZ 13,01905411
10 13,01905 -0,00024 -503,856 PRAWDA
7.5 Metoda kolejnych przybliżeń Metoda kolejnych przybliżeń nazywana jest metodą sukcesywnej aproksymacji. Niestety nie
wszystkie typy równań można rozwiązać tą metodą. Tylko równania postaci x=φ(x), spełniające warunek
|φ'(x)|<1 można rozwiązać w ten sposób. Algorytm jest następujący:
obieramy punkt startowy,
123
wyznaczamy wartość φ(x)
przyjmujemy x= φ(x)
sprawdzamy, czy |φ(x)-x|<=ε (gdzie ε jest założoną dokładnością), jeśli tak, to koniec algorytmu i x jest
pierwiastkiem równania; jeśli nie, to b)
Jak wspomniano metoda ta może dawać szereg rozbieżny. Przykłady zbieżnego algorytmu
pokazano na Rys. 83, a algorytmu rozbieżnego na Rys. 84.
Rys. 83 . Metoda kolejnych przybliżeń - algorytm zbieżny
Rys. 84. Metoda kolejnych przybliżeń - algorytm rozbieżny
Schemat blokowy algorytmu zawiera Rys. 85.
y
x0 x1 x2 x
y=f(x)
y=φ(x)
xz x0 x1 x2
x
y=f(x)
y=φ(x)
xz x3
y φ'(x)>0 |φ'(x)|>1
φ'(x)<0 |φ'(x)|>1
y
y=φ(x)
x
y=x
x0 x1 x2
φ'(x)>0 |φ'(x)|<1
y
x
y=x
x0 x1 x2 x3
φ'(x)<0 |φ'(x)|<1
xz x
z
124
Start
a;b
x1=a;x2=b
y1=fx1);y2=f(x2)
x3=x2-y2*(x2-x1)/(y2-y1)
y3=f(x3)
|y3|<=ε x =x3 STOP
x1=x2 x2=x3 y1=y2 y2=y3
TAK
NIE
Rys. 85. Metoda kolejnych przybliżeń
Przykład 24. Metoda kolejnych przybliżeń
Tak jak w poprzednich przykładach mamy rozwiązać równanie z dokladnością ε=0,001:
,
czyli równanie postaci:
Równanie musimy przekształcić do postaci .
Możemy zrobić to na wiele sposobów, np:
125
przy czym nie wszystkie dadzą szereg zbieżny.
Na Rys. 86 pokazano trzy pierwsze postaci i wybrano do obliczeń postać:
ponieważ φ'(x)<0 oraz |φ'(x)|<1.
Rys. 86. Wybór postaci przkształcenia
W Tabela 24 pokazano kolejne kroki iteracji.
Tabela 24. Kolejne kroki iteracji (metoda kolejnych przybliżeń)
Nr iteracji x y2=f(x) |x-y2]<ε Nr iteracji x y2=f(x) |x-y2]<ε
1 12 13,87 FAŁSZ 15 12,99818 13,03484 FAŁSZ
2 13,87 12,42659 FAŁSZ 16 13,03484 13,00716 FAŁSZ
3 12,42659 13,49299 FAŁSZ 17 13,00716 13,02804 FAŁSZ
4 13,49299 12,67719 FAŁSZ 18 13,02804 13,01227 FAŁSZ
5 12,67719 13,28583 FAŁSZ 19 13,01227 13,02417 FAŁSZ
6 13,28583 12,82279 FAŁSZ 20 13,02417 13,01519 FAŁSZ
7 12,82279 13,17004 FAŁSZ 21 13,01519 13,02197 FAŁSZ
8 13,17004 12,90673 FAŁSZ 22 13,02197 13,01685 FAŁSZ
9 12,90673 13,10476 FAŁSZ 23 13,01685 13,02072 FAŁSZ
10 13,10476 12,9549 FAŁSZ 24 13,02072 13,0178 FAŁSZ
11 12,9549 13,06778 FAŁSZ 25 13,0178 13,02 FAŁSZ
12 13,06778 12,98245 FAŁSZ 26 13,02 13,01834 FAŁSZ
13 12,98245 13,04678 FAŁSZ 27 13,01834 13,01959 FAŁSZ
14 13,04678 12,99818 FAŁSZ 28 13,01959 13,01865 PRAWDA
-30
-20
-10
0
10
20
30
0 2 4 6 8 10 12 14
y=x
φ1
φ2
φ3