cd. Uwagi o różniczkowaniu numerycznym Izolda Gorgol wyciąg z
Transkrypt
cd. Uwagi o różniczkowaniu numerycznym Izolda Gorgol wyciąg z
Całkowanie numeryczne – cd. Uwagi o różniczkowaniu numerycznym Izolda Gorgol wyciąg z prezentacji Ekstrapolacja Richardsona Służy do przyspieszania zbieżności niektórych procedur numerycznych. L – wartość obliczana; φ(h) – przybliżenie wartości L; Jeśli spełniona jest tożsamość L = φ(h) + a2 h2 + a4 h4 + a6 h6 + . . . , to, stosując odpowiednie przekształcenia arytmetyczne, możemy otrzymać L = ψ(h) + b4 h4 + b6 h6 + . . . , gdzie ψ(h) zależy liniowo od φ(h) oraz φ( h2 ). Ekstrapolacja Richardsona – ujęcie rekurencyjne M początkowych kroków: 1. D(n, 0) = φ( 2hn ), n = 0, 1, 2, . . . , M D(n, k − 1) − D(n − 1, k − 1) 2. D(n, k) = D(n, k − 1) + , 4k − 1 k = 1, 2, . . . , M , n = k, k + 1, . . . , M UWAGA Najczęściej M nie jest zbyt duże, gdyż z jednej strony należy obliczyć wartość w 2M + 1 punktach, a z drugiej uzyskujemy szybki wzrost rzędu zbieżności. Ekstrapolacja Richardsona – trójkątna tablica Wyniki obliczeń można umieścić w następującej trójkątnej tablicy: D(0, 0) D(1, 0) D(1, 1) D(2, 0) D(2, 1) D(2, 2) D(3, 0) D(3, 1) D(3, 2) D(3, 3) .. .. .. .. .. . . . . . D(M, 0) D(M, 1) D(M, 2) D(M, 3) · · · D(M, M ) Złożona kwadratura trapezów a ekstrapolacja Richardsona TWIERDZENIE Formuła Eulera-Maclaurina Dla funkcji f ∈ C (2m+2) ([a, b]), błąd złożonej kwadratury trapezów T̄k wyraża się wzorem m X I(f ) − T̄k (f ) = ci h2i f (2i−1) (b) − f (2i−1) (a) + cm+1 h2m+2 (b − a)f (2m+2) (ξm,k ), i=1 gdzie h = (b − a)/k, ξm,k ∈ [a, b], a ci są pewnymi stałymi liczbowymi. Mamy c1 = −1/12, c2 = −1/720 i, ogólnie, ci = Bi /(2i)!, gdzie Bi są tzw. liczbami Bernoulliego. A zatem do złożonej kwadratury trapezów można zastosować ekstrapolację Richardsona. Kwadratury Romberga Są to kwadratury oparte na kwadraturach trapezów, do których zastosowano ekstrapolację Richardsona. b−a 2n b−a R(0, 0) = (f (a) + f (b)) R(n, 0) = T̄2n (f ), 2 hn = 1 4 R(n, 0) − R(n − 1, 0) , 3 R(n, m − 1) − R(n − 1, m − 1) R(n, m) = R(n, m − 1) + . 4m − 1 R(n, 1) = Kwadratury Romberga - konstrukcja Dla danej funkcji f można je łatwo konstruować za pomocą następującej tablicy trójkątnej: R(0, 0) R(1, 0) R(1, 1) R(2, 0) R(2, 1) R(2, 2) R(3, 0) R(3, 1) R(3, 2) R(3, 3) .. .. .. .. .. . . . . . R(M, 0) R(M, 1) R(M, 2) R(M, 3) · · · R(M, M ) Pierwszą kolumnę w tablicy można uzupełnić korzystając z następującego wzoru rekurencyjnego: n−1 2X 1 R(n, 0) = R(n − 1, 0) + hn f (a + (2i − 1)hn ). 2 i=1 Różniczkowanie – uwarunkowanie zadania f, f˜ różniczkowalne na (a, b) ||f˜ − f ||C(a,b) 6 6⇒ ||f˜0 − f 0 ||C(a,b) 6 C Zadanie różniczkowania jest bardzo źle uwarunkowane (źle postawione). Przybliżanie pochodnej w punkcie f (x + h) − f (x) , różnica progresywna h f (x) − f (x − h) — f 0 (x) ≈ , różnica wsteczna h f (x + h) − f (x − h) — f 0 (x) ≈ . różnica centralna 2h Różnice progresywna i wsteczna są rzędu h, zaś centralna jest rzędu h2 . — f 0 (x) ≈ I znów ta arytmetyka zmiennopozycyjna Teoretycznie im h mniejsze tym lepiej. W praktyce numerycznej – nie, gdyż może dojść do utraty cyfr znaczących. Może się zdarzyć, że f lν (x + h) = f lν (x), co będzie oznaczało (niezgodnie z prawdą), że f 0 (x) ≈ 0. Różnica centralna a ekstrapolacja Richardsona UWAGA Postać błędu przy obliczaniu pochodnej funkcji w punkcie przy użyciu różnicy centralnej pozwala zastosować w tym przypadku ekstrapolację Richardsona. Różniczkowanie za pomocą wielomianów interpolacyjnych I krok – przybliżamy funkcję wielomianem interpolacyjnym. II krok – obliczamy pochodną wielomianu w punkcie i przyjmujemy ją za pochodną funkcji. różnica progresywna – pochodna wielomianu interpolacyjnego opartego na węzłach x, x + h; różnica wsteczna – pochodna wielomianu interpolacyjnego opartego na węzłach x − h, x; różnica centralna – pochodna wielomianu interpolacyjnego opartego na węzłach x − h, x, x + h. 2