• Nie Znaleziono Wyników

Przyspieszanie zbieżności kwadratur

W praktyce często stosuje się obliczanie kwadratur poprzez zagęszcza-nie podziału przedziału [a, b]. Na przykład, dla złożonej kwadratury trapezów zachodzi następujący wygodny wzór rekurencyjny:

T¯2k = 1

Pozwala on obliczyć ¯T2k(f) na podstawie ¯Tk(f) poprzez “doliczenie”

wartości funkcji w punktach “gęstszej” siatki. W ten sposób możemy obserwować zachowanie się kolejnych przybliżeń ¯T2s(f) (s ≥ 0) całki S(f). Jest to szczególnie istotne wtedy, gdy nie mamy żadnej informa-cji a priori o kf′′kC([a,b]), a przez to nie potrafimy oszacować liczby n węzłów, dla której osiągniemy pożądaną dokładność, zob. U. 9.2.

Jeśli funkcja jest więcej niż dwa razy różniczkowalna to użycie złożo-nych kwadratur trapezów zdaje się tracić sens. Wtedy istnieją przecież kwadratury, których błąd maleje do zera szybciej niż n−2. Okazuje się

9.4. PRZYSPIESZANIE ZBIEŻNOŚCI KWADRATUR 111 jednak, że kwadratury ¯Tk mogą być podstawą dla prostej rekurencyjnej konstrukcji innych kwadratur posiadających już optymalną zbieżność.

Konstrukcja ta bazuje na następującym ważnym lemacie.

Lemat 9.1 (Formuła Eulera-Maclaurina)

Formułę Eulera-Maclaurina można przepisać w postaci S(f) − ¯Tk(f) = Xm

112 ROZDZIAŁ 9. CAŁKOWANIE NUMERYCZNE gdzie c(1)2,k(f) = (1/12)c(0)2,2k(f) − (1/3)c(0)2,k(f) i jest wspólnie ograniczone dla f ∈ FM3 ([a, b]). Kwadratura Tk1 ma więc optymalny w FM3 ([a, b]) rząd zbieżności k−4. Proces ten można kontynuować dalej tworząc kolejne kwadratury o coraz to wyższym rzędzie zbieżności. Dokładniej, połóżmy T¯k0(f) = ¯Tk(f) oraz, dla s ≥ 1,

T¯ks(f) = 4sT¯2ks−1(f) − ¯Tks−1(f)

4s− 1 . (9.4)

Wtedy, dla f ∈ FM2m+1([a, b]), rząd zbieżności kwadratury ¯Tkm wynosi k−(2m+2). Rzeczywiście, sprawdziliśmy, że jest to prawdą dla m = 0, 1.

Niech m ≥ 2. Postępując indukcyjnie ze względu na s = 1, 2, . . . , m mamy

S(f) − ¯Tks(f) = 4s(S(f) − ¯T2ks−1(f)) − (S(f) − ¯Tks−1(f)) 4s − 1

= 4s Xm

i=s

c(s−1)i (f)(2k)−2i+ c(s−1)m+1,2k(f)(2k)−(2m+2)

!

Xm i=s

c(s−1)i (f)k−2i+ c(s−1)m+1,k(f)k−(2m+2)

!! 1 4s − 1

= Xm

i=s+1

c(s)i (f)k−2i + c(s)m+1,k(f)k−(2m+2),

ponieważ współczynniki przy k−2s redukują się. c(s)i (f) są tutaj pew-nymi nowymi stałymi, a c(s)m+1,k(f) może być w klasie FM2m+1([a, b]) ogra-niczona przez stałą niezależną od f. Ostatecznie, dla s = m mamy więc

S(f) − ¯Tkm(f) = c(m)m+1,k(f)k−(2m+2) i w klasie FM2m+1([a, b])

|S(f) − ¯Tkm(f)| ≤ cmk−(2m+2) dla pewnej stałej cm niezależnej od f.

Zauważmy jeszcze, że ¯Tkm wykorzystuje n = k2m + 1 wartości f w punktach równoodległych na [a, b] co oznacza, że w terminach n rząd zbieżności wynosi też n−(2m+2), a więc jest optymalny w klasie FM2m+1([a, b]).

9.4. PRZYSPIESZANIE ZBIEŻNOŚCI KWADRATUR 113 Kwadratury ¯Tks nazywane są kwadraturami Romberga. Dla danej funkcji f, można je łatwo konstruować budując następującą tablicę trój-kątną:

T¯10(f)

T¯20(f) T¯11(f)

T¯40(f) T¯21(f) T¯12(f)

T¯80(f) T¯41(f) T¯22(f) T¯13(f)

... ... ... ... ...

T¯20s(f) ¯T21s−1(f) ¯T22s−2(f) ¯T23s−3(f) · · · ¯T1s(f),

(9.5)

w której pierwsza kolumna jest tworzona indukcyjnie zgodnie ze wzorem (9.3), a kolejne zgodnie z (9.4).

Uwagi i uzupełnienia

U. 9.1 Pokażemy, że jeśli dowolny algorytm A daje przybliżoną wartość całki S(f) =Rabf (x)dx na podstawie jedynie wartości lub pochodnych funk-cji f w n różnych punktach, tzn.

A(f ) = φ(f (x1), . . . , f(r+1)(x1), . . . , f(xn), . . . , f(r+1)(xn)) dla pewnych xi ∈ [a, b], to błąd takiego przybliżenia w klasie FMr ([a, b]),

sup

f ∈FMr([a,b])|S(f) − A(f)| ≥ C1M n−(r+1), (9.6) gdzie C1 jest pewną stałą dodatnią niezależną od A i n.

W tym celu, podobnie jak w U. 7.2, wybierzmy dowolną nieujemną funk-cję ψ : R → R spełniającą warunki:

1. ψ ∈ F1r(R),

2. ψ(x) = 0 dla x 6∈ [0, 1].

Oznaczmy x0 = a, xn+1 = b, hi = xi+1− xi, 0 ≤ i ≤ n, oraz zdefiniujmy funkcje

ψi(x) = Mhr+1i ψx− xi

hi

.

114 ROZDZIAŁ 9. CAŁKOWANIE NUMERYCZNE

) jest aproksymacją dla całek obu funkcji ψl i

max{|S(g1) − φ0|, |S(g2) − φ0|} ≥ |S(g1) − S(g2)|/2 = S(g1)

gdy k → ∞. Ostatnia przybliżona równość może sugerować kryterium koń-czenia obliczeń, gdy chcemy otrzymać przybliżenie całki S(f) z zadaną do-kładnością ε > 0. Mianowicie, obliczając kolejne kwadratury ¯T2s(f) dla s = 0, 1, . . ., sprawdzamy jednocześnie, czy

| ¯T2s−1(f) − ¯T2s(f)| ≤ 3 ε.

Jeśli ten warunek jest spełniony dla kilku kolejnych s to z dużym prawdo-podobieństwem możemy stwierdzić, że |S(f) − ¯T2s(f)| ≤ ε.

Oczywiście, podobne kryteria kończenia obliczeń mogą być konstruowane dla innych ciągów kwadratur, jeśli tylko znamy teoretyczne zachowanie się błędu.

9.4. PRZYSPIESZANIE ZBIEŻNOŚCI KWADRATUR 115

Ćwiczenia

Ćw. 9.1 Pokazać, że w kwadraturze Newtona-Cotesa opartej na n + 1 rów-noodległych węzłach xi= a + (b − a)i/n, współczynniki ai dane są wzorami

Błąd w klasie FM1 ([a, b]) jest więc dla kwadratury prostokątów dwa razy mniejszy niż dla kwadratury trapezów. Wywnioskować stąd, że złożona kwa-dratura prostokątów,

ma optymalny rząd zbieżności nie tylko w klasie FM0 ([a, b]), ale też w klasie FM1 ([a, b]).

Ćw. 9.3 Rozpatrzmy kwadratury interpolacyjne oparte na dwóch węzłach x0, x1 ∈ [a, b]. Pokazać, że wśród tych kwadratur najmniejszy błąd w klasie FM1 ([a, b]) jest osiągany przez kwadraturę

QI(f) = b− a

116 ROZDZIAŁ 9. CAŁKOWANIE NUMERYCZNE Ćw. 9.4 Uzasadnić, że jeśli kwadratura interpolacyjna QI oparta jest na węzłach Czebyszewa

xi = a + b

2 +b− a

2 cos2i + 1

2r + 2π, 0 ≤ i ≤ r, to dla f ∈ FMr ([a, b]) błąd

|S(f) − QI(f)| ≤ M (b− a)r+2 22r+1(r + 1)!,

a dla odpowiadającej węzłom Czebyszewa kwadratury złożonej

|S(f) − ¯QI(f)| ≤ M (b− a)r+2 22r+1(r + 1)!

1 k

r+1

.

Ćw. 9.5 Rozpatrzmy kwadraturę

Q¯k(f) = ¯Tk(f) − (b − a)2

12k2 (f(b) − f(a)).

Pokazać, nie korzytając z formuły Eulera-Maclaurina, że jeśli f ∈ FM2 ([a, b]) to błąd |S(f) − ¯Qk(f)| zbiega do zera co najmniej tak szybko jak k−4, gdy k→ ∞. W szczególności, dla funkcji spełniających f(a) = f(b) rząd zbież-ności złożonej kwadratury trapezów wynosi k−4.

Ćw. 9.6 Opracować ekonomiczny algorytm obliczania ciągu kolejnych zło-żonych kwadratur parabol ¯P2s(f) dla s = 0, 1, 2, . . ..

Ćw. 9.7 Opracować kryterium kończenia obliczeń analogiczne do tego z U.

9.2, dla ciągu złożonych kwadratur parabol ¯P2s(f), s = 0, 1, . . ..

Ćw. 9.8 Pokazać, że drugą kolumnę tabeli (9.5) kwadratur Romberga two-rzą złożone kwadratury parabol, tzn.

P¯k(f) = 4 ¯T2k(f) − ¯Tk(f)

3 .

Ćw. 9.9 Opracować program obliczający wartość ¯T1s(f) kwadratury Rom-berga, korzystając ze wzorów (9.3) i budując tabelę (9.4).

æ

Rozdział 10

Całkowanie a aproksymacja

W poprzednim rozdziale badaliśmy kwadratury ze względu na kryte-rium błędu w pewnych klasach funkcji. W tym rozdziale zajmiemy się badaniem kwadratur ze względu na inne, bardziej klasyczne kryterium, którym jest rząd kwadratury. Będziemy przy tym rozpatrywać nieco ogólniejsze zadanie całkowania, tzw. całkowanie z wagą,

S(f) = Sρ(f) = Z b

a f(x)ρ(x) dx,

gdzie waga ρ jest prawie wszędzie dodatnia i jest całkowalna,

Z b

a |ρ(x)| dx < +∞.

Dopuścimy również możliwość nieskończonych przedziałów całkowania, a więc −∞ ≤ a < b ≤ +∞.

10.1 Rząd kwadratury

Zaczniemy od definicji.

Definicja 10.1 Rzędem kwadratury Q nazywamy taką liczbę r, że (i) kwadratura Q daje dokładną wartość całki dla wszystkich

wielomia-nów stopnia mniejszego niż r,

Q(w) = Sρ(w), ∀w ∈ Πr−1, 117

118 ROZDZIAŁ 10. CAŁKOWANIE A APROKSYMACJA (i) istnieje wielomian stopnia r dla którego kwadratura nie jest równa

całce,

∃w ∈ Πr, Q(w) 6= Sρ(w).

Rząd kwadratury Q oznaczymy przez rz(Q). Dla przykładu, za-łóżmy, że ρ ≡ 1 i przedział [a, b] jest skończony. Wtedy rząd kwa-dratury prostokątów wynosi 2, tak jak rząd kwakwa-dratury trapezów T , natomiast rząd kwadratury parabol P wynosi 4. Rzeczywiście, to wy-nika bezpośrednio ze wzorów na błędy tych kwadratur danych w Ćw.

9.2 i Twierdzeniu 9.2. Ogólniej, mamy następujące twierdzenie, które przytaczamy bez dowodu.

Twierdzenie 10.1 Niech waga ρ ≡ 1 i niech przedział [a, b] będzie skończony. Rząd kwadratury Newtona-Cotesa QN Cn , tzn. opartej na jed-nokrotnych węzłach równoodległych xi = a + (b − a)i/n, 0 ≤ i ≤ n, wynosi

rz(QN C) =

( n+ 1 dla n nieparzystych, n+ 2 dla n parzystych.

2

Jasne jest, że interesują nas kwadratury o jak najwyższym rzędzie.

Chcielibyśmy wiedzieć, jaki jest maksymalny rząd kwadratury korzy-stającej z ustalonej liczby węzłów i jak konstruować kwadratury o mak-symalnym rzędzie. Jak przekonamy się później, nie jest to tylko aka-demickie pytanie, bowiem kwadratury o maksymalnym rzędzie mają również dobre własności ze względu na błąd.

Częściową odpowiedź na pytanie o maksymalny rząd kwadratur daje następujący lemat.

Lemat 10.1 Niech Q będzie kwadraturą opartą na węzłach o łącznej krotności n + 1.

(i) Jeśli rz(Q)≥ n + 1 to Q jest kwadraturą interpolacyjną.

(ii) Jeśli Q jest kwadraturą interpolacyjną to n+ 1 ≤ rz(Q) ≤ 2(n + 1).

10.2. CIĄGI WIELOMIANÓW ORTOGONALNYCH 119