Matematyka stosowana i metody numeryczne

Transkrypt

Matematyka stosowana i metody numeryczne
Ewa Pabisek
Adam Wosatko
Piotr Pluciński
Matematyka stosowana i metody numeryczne
Konspekt z wykładu
10
Całkowanie numeryczne
Wzory całkowania numerycznego pozwalają na obliczenie przybliżonej wartości całki:
Zb
f (x) dx = F (b) − F (a)
I(f ) =
a
Podstawiając w miejsce funkcji podcałkowej f (x) wielomian algebraiczny
ϕ(x) = f0 N0 (x) + f1 N1 (x) + · · · + fn Nn (x) =
n
X
fi Ni (x)
i=0
otrzymamy tzw. wzór kwadraturowy.
10.1
Kwadratura całkowania
Wzorem kwadraturowym (kwadraturą) nazywamy:
Zb
Zb
f (x) dx ≈
I(f ) =
a
ϕ(x) dx =
n
X
i=0
a
Zb
fi
Ni (x) dx =
a
n
X
wi fi = S(f )
i=0
w którym
Zb
wi =
Ni (x) dx,
i = 0, 1, 2, . . . , n
a
są tzw. współczynnikami wagowymi (wagami). Wartość wi określa wielkość udziału rzędnej fi ≡
f (xi ) w wartości całej sumy S(f ) .
W zależności od sposobu postępowania przy wyborze położeń węzłów interpolacji w przedziale
całkowania kwadratury dzielimy na dwie grupy:
1. kwadratury Newtona - Cotesa, węzły są rozmieszczone równomiernie w całym przedziale całkowania (zamknięte końce)
2. kwadratury Gaussa, węzły są rozmieszczone nierównomiernie, tak aby zminimalizować błąd
kwadratury (otwarte końce)
1
10.2
Kwadratury Newtona - Cotessa
10.2.1
Wzór prostokątów
Po zastosowaniu interpolacji funkcji podcałkowej f (x) za pomocą wielomianu
ϕ(x) = f (x0 ) = const.
otrzymujemy
Zb
Zb
f (x) dx ≈
I(f ) =
a
f (x0 ) dx → S(f ) = (b − a) f (x0 )
(1)
a
W zależności od wyboru położenia węzła x0 otrzymujemy wzory:
a) lewych prostokątów, gdy x0 = a
b) środkowych prostokątów, gdy x0 = (a + b)/2
c) prawych prostokątów, gdy x0 = b
10.2.2
Wzór trapezów
Jeśli do interpolacji funkcji f (x) zastosujemy interpolację za pomocą wielomianu liniowego Lagrange’a, to otrzymamy wzór kwadraturowy, nazywany wzorem trapezów.
Zb
f (x) dx ≈
I(f ) =
a
Zb
h
Zb h
i
f0 L0 + f1 L1 dx =
a
f (a)
(2)
x−b
+ f (b)
a−b
b−a
x−ai
→ S(f ) =
b−ah
2
f (a) + f (b)
i
a
10.2.3
Wzór Simpsona
Zastosowanie kwadratowej interpolacji Lagrange’a prowadzi do wzoru:
Zb
f (x) dx ≈
a
Zb h
Zb h
i
f0 L0 + f1 L1 + f2 L2 dx =
a
f0
(x − c)(x − b)
(x − a)(x − b)
(x − a)(x − c) i
dx
+ f1
+ f2
(a − c)(a − b)
(c − a)(c − b)
(b − a)(b − c)
a
Ostatecznie kwadratura (wzór) Simpsona przyjmuje postać:
Zb
f (x) dx ≈
1
h f0 + 4 f1 + f2 = S(f ),
3
h=
b−a
2
(3)
a
Wzór Simpsona jest rzędu czwartego, co oznacza, że jest dokładny nie tylko dla wielomianów stopnia
drugiego, lecz także dla wielomianów stopnia trzeciego tzn. I(W3 ) = S(W3 ) oraz I(W4 ) 6= S(W4 )
2
10.3
Kwadratury Gaussa
Dokładność kwadratury można zwiększyć rezygnując z warunku równomiernego rozmieszczenia węzłów interpolacji. Wartości wag oraz położenia węzłów całkowania ustala się tak aby kwadratura
całkowania przybliżona była wzorem dokładnym dla jednomianu możliwie wysokiego stopnia.
n
X
wi xki =
i=0
Zb
xk dx,
k = 0, 1, 2, . . . , 2n + 1
a
W praktyce wagi i punkty Gaussa nie wyznacza się z powyższego warunku. Są one stablicowane dla
rodziny pewnych wielomianów ortogonalnych (z wagą) w przedziale < −1, 1 >.
l.p.
1
2
ξi , i = 0, . . . , n
ξ0 = 0 √
ξ0 = +1/√3
ξ1 = −1/
√ 3
ξ0 = + 0.6
ξ1 = 0 √
ξ2 = − 0.6
ξ0 = +0.86113631
ξ1 = +0.33998104
ξ2 = −0.33998104
ξ3 = −0.86113631
3
4
wi , i = 0, . . . , n
w0 = 2
w0 = 1
w1 = 1
w0 = 5/9
w1 = 8/9
w2 = 5/9
w0 = 0.34785485
w1 = 0.65214515
w2 = 0.65214515
w3 = 0.34785485
W ogólnym przypadku gdy liczymy całkę z dowolnego przedziału (a, b), konieczna jest transformacja
liniowa między danym przedziałem a przedziałem < −1, 1 >, tak aby można było zastosować dane
z tabeli. Wzory na transformację (a, b) → < −1, 1 >
ξ=
2x − a − b
b−a
dξ =
⇔
2
dx
b−a
x=
⇔
a+b b−a
+
ξ
2
2
dx =
b−a
dξ
2
co daje:
Zb
b−a
f (x) dx =
2
Z1 a+b b−a f
+
ξ dξ
2
2
−1
a
oraz wzór kwadraturowy Gaussa:
Zb
a
n
a + b b − a b−aX
wi f
f (x) dx ≈
+
ξi .
2 i=0
2
2
(4)
Przykład:
Obliczyć S(f ) =
Rb
f (x) gdy f (x) = 4 · x3 + 5 · x2 + 1 dla a = −1.0, b = 1.0, co oznacza, że
a
h = b − a = 2, .
Zastosować dwupunktową metodę Gaussa (n = 1):
3
Rozwiązanie:
w0 = w1 = 1,
Zb
√
√
ξ0 = 1/ 3, ξ1 = −1/ 3
b−a
f (x)dx =
2
Z1
−1
a
1
b−aX
f (ξ) dξ ≈
wi f (ξi ) =
2 i=0
a + b b − a 1 i
b − ah a + b b − a 1 √ +f
√
f
+
−
= 5.33333
2
2
2
2
2
3
3
Wyniki dla przedstawianych wzorów:
Wartość dokładna I(f )
10.4
= 5.3333
Wzór
prostokątów:
lewych
środkowych
prawych
Postać kwadratury
trapezów
S(f ) =
h
2
Simpsona
S(f ) =
1h
32
Gaussa dla n = 1
S(f ) =
b−a
2
Wartość
S(f ) = h f (a)
S(f ) = h f ( a+b
)
2
S(f ) = h f (b)
= 4
= 2
= 20
[f (a) + f (b)]
= 12
[f (a) + 4 f ( a+b
) + f (b)] = 5.3333
2
1
P
wi f (ξi )
= 5.3333
i=0
Wzory złożone (sumacyjne)
Bardzo skutecznym sposobem podwyższania dokładności całkowania numerycznego jest dokonanie
podziału przedziału [a, b] na podprzedziały [aj , bj ], j = 1, 2, . . . , N przy zachowaniu związków:
a1 = a, bN = b, bi = ai+1 , i = 1, 2, . . . , N − 1.
Teraz można zapisać:
bj
Zb
I(f ) =
f (x) dx =
a
N Z
X
f (x) dx = I1 (f ) + I2 (f ) + · · · + IN (f )
j=1 a
j
Do obliczania każdego składnika Ii (f ) sumy można wykorzystać dowolny wzór kwadraturowy.
10.4.1
Metoda lewych, środkowych i prawych prostokątów
Zb
f (x)dx ≈ H
(a)
Zb
f (x)dx ≈ H
a
f (xj−1 ) = H f0 + f1 + f2 + · · · + fN −1
j=1
a
(b)
N
X
N
X
j=1
f(
xj − xj−1
) = H f01 + f12 + f23 + · · · + fN −1 N
2
4
(5)
xj−1 +xj ,
2
fj−1 j = f
gdzie
Zb
f (x)dx ≈ H
(c)
N
X
j = 1, 2, . . . , N
f xj ) = H (f1 + f2 + · · · + fN
j=1
a
10.4.2
Metoda trapezów
Zb
a
N
i
1
1 Xh
f (x)dx ≈ H
f0 + f1 + f2 + · · · + 12fN
f (xj−1 + f (xj ) = H
2 j=1
2
lub
Zb
a
10.4.3
N −1
X
1
1
fj + fN
f (x)dx ≈ H f0 +
2
2
j=1
Metoda Simpsona
Zb
f (x)dx ≈
1 H ( f0 + fN ) + 4 ( f1 + f3 + · · · + fN −1 ) + 2 (f2 + f4 + · · · + fN −2 ) ,
3
a
przy czym H = (xN − x0 )/N, (N musi być liczbą parzystą).
10.4.4
Metoda Gaussa
Zb
a
N lpc=2
1 b−a X X
f (x)dx ≈
wi f (Xi ),
2 N j=1 i=0
gdzie
Xi =
11
xj + xj+1 xj+1 − xj
+
ξi .
2
2
Różniczkowanie numeryczne
Zadanie różniczkowania numerycznego polega na obliczeniu wartości pochodnych k– tego rzędu funkcji y = f (x), za pomocą wzorów przybliżonych tzw. wzorów różnicowych. Są to wzory służące do
obliczenia pochodnej w węźle i za pomocą znanych wartości funkcji w innych węzłach, np.: mamy
dane wartości funkcji f (x0 ), f (x1 ), f (x2 ) w równo oddalonych węzłach x0 , x1 , x2 , należy zbudować
wzory różnicowe do obliczenia pierwszej i drugiej pochodnej w węzłach xi , i = 0, 1, 2.
11.1
Rozwinięcie funkcji w szereg Taylora
1
1
1
f (x + h) = f (x) + hf 0 (x) + h2 f 00 (x) + h3 f 000 (x) + h4 f IV (x) + . . .
2
6
24
11.1.1
Centralne wzory różnicowe
f10 =
1
(−f0 + f2 ),
2h
f100 =
5
1
(f0 − 2 f1 + f2 )
h2
11.1.2
Iloraz wprzód
f00 =
11.1.3
1
(−3 f0 + 4 f1 − f2 ),
2h
f000 =
1
(f0 − 2 f1 + f2 )
h2
Iloraz wstecz
f20 =
1
(f0 − 4 f1 + 3 f2 ),
2h
6
f200 =
1
(f0 − 2 f1 + f2 )
h2

Podobne dokumenty