x -

Transkrypt

x -
Calkowanie_num-1
Całkowanie numeryczne
Zadanie: obliczyć przybliżenie całki
b
 f ( x)dx
(1)
a
używając wartości funkcji f(x) w punktach równoodległych. Przyjmujemy
x0  a
xi  x0  ih ,
(2)
gdzie i  1, 2, , n  1
xn  b
(3)
(4)
Stąd
n  b  a  / h
(5)
Metoda prostokątów
b
n
a
i 1
 f x dx  S1  S2   Sn  h yi 1 / 2
(6)
gdzie
x x 
yi 1 / 2  f  i 1 i 
 2 
x x 
y1 / 2  f  0 1 
 2 
 x  x2 
y1 1  f  1

2
 2 
(7)
2014-10-03 10:49:00
1/6
Calkowanie_num-1
itd.
S1  h  y 1
2
S2  h  y1 1
2
itd.
Błąd metody prostokątów
Zakładamy, że f(x) ma drugą pochodną ciągłą w przedziale <a, b>. Największą
wartość funkcji f x  w przedziale <a, b> oznaczymy przez M. Można wykazać, że błąd przybliżenia wartości całki wartością prawej strony równania (6),
zdefiniowany jako
n
b
i 1
a
R h   h yi 1 / 2   f x dx
(8)
jest określony nierównością
R h  
M b  a  2
h
24
(9)
Metoda trapezów
2014-10-03 10:49:00
2/6
Calkowanie_num-1
 f x dx  S1  S2   Sn  h12 y0  y1    yn 1  12 yn 
b
(10)
a
gdzie
S1 
y0  y1
h
2
S2 
y1  y2
h
2
itd.
Błąd metody trapezów
Zakładamy, że f(x) ma drugą pochodną ciągłą w przedziale <a, b>. Największą
wartość funkcji f x  w przedziale <a, b> oznaczymy przez M. Można wykazać, że błąd przybliżenia wartości całki wartością prawej strony równania (10),
zdefiniowany jako
R h   h 12 y0  y1    yn 1  12 yn    f x dx
b
(11)
a
2014-10-03 10:49:00
3/6
Calkowanie_num-1
jest określony nierównością
R h  
M b  a  2
h
12
(12)
Metoda Simpsona (metoda parabol)
Krzywą f(x) zastępujemy łukami parabol drugiego stopnia. Założymy ponadto,
że n jest liczbą parzystą. Zaznaczamy to zastępując n przez 2n. Punktów xi (i =
0, 1, ..., 2n - 1, 2n) jest zatem 2n + 1.
xi 1
xi 1
xi 1
xi 1
 f x dx   gx dx
(13)
gdzie
g( x)  Ax2  Bx  C
(14)
Niech parabola g(x) przechodzi przez punkty M(xi-1, yi-1), N(xi, yi), P(xi+1, yi+1).
Wówczas prawa strona równania (13) wynosi
2014-10-03 10:49:00
4/6
Calkowanie_num-1
2
3
3
2
2
 ( Ax  Bx  C )dx  A3 xi 1  xi 1   B2 xi 1  xi 1   C xi 1  xi 1 
xi 1
xi 1

xi 1  xi 1
2 Axi21  xi 1 xi 1  xi21   3B xi 1  xi 1   6C
6
 Axi21  xi21   B xi 1  xi 1   2C



 26h    xi 1  xi 1 2


x x 
  B i 1 i 1   C  
 4 A
2
2



 
  




(15)
czyli
xi 1
 gx dx  3  yi 1  yi 1  4 yi   Si
h
(16)
xi 1
b
Przybliżona wartość całki  f ( x)dx jest równa polu
a
S  S1  S3  S5   S2n 1
gdzie
S1 
h
3
 y0  4 y1  y2 
S3 
h
3
 y2  4 y3  y4 
itd.
Dodając prawe strony równań (16) dla i = 1, 3, ..., 2n - 1 otrzymujemy wzór
Simpsona
b
 f ( x)dx  h3  y0  4 y1  2 y2  4 y3  2 y4    2 y2n  2  4 y2n 1  y2n 
(17)
a
Błąd metody Simpsona
Zakładając ciągłość czwartej pochodnej funkcji f(x) w przedziale <a, b> oraz
oznaczając przez M największą wartość funkcji f (4) x  w tym przedziale można
określić górną granicę błędu obliczania całki metodą Simpsona
R h  
b
h
3
 y0  4 y1  2 y2  4 y3  2 y4    2 y2n  2  4 y2n 1  y2n    f x dx
a
(18)
2014-10-03 10:49:00
5/6
Calkowanie_num-1
za pomocą zależności
R h  
M b  a  4
h
180
(19)
gdzie
h
ba
2n
(20)
2014-10-03 10:49:00
6/6
richardsona_ekstrapol
Ekstrapolacja Richardsona
Ekstrapolacja Richardsona polega na obliczaniu dokładniejszej wartości całki na
podstawie dwóch wartości wyznaczonych numerycznie dla różnych wielkości
podprzedziałów, na jakie podzielony jest przedział całkowania. Metodę można użyć
wtedy, gdy dysponujemy wzorem na błąd metody całkowania.
Zastosowanie ekstrapolacji Richardsona do metody trapezów przybliżonego
całkowania
Błąd metody trapezów wyraża wzór
R (h ) ≅ −
(b − a ) f ′′ h 2
(1)
12
Niech I1 (h1 ) będzie przybliżoną wartością całki wyznaczoną metodą trapezów, a
R1 (h1 ) błędem obliczenia całki przy wielkości podprzedziału h1 . Wówczas dokładną
wartość całki można wyznaczyć z równania
I ≅ I1 (h1 ) + R1 (h1 ) ≅ I1 (h1 ) + ch12
(2)
(b − a ) f ′′
jest stałą ( przy założeniu, że f ′′ jest niezależne od wielkości
12
podprzedziału h). Analogicznie, gdy I 2 (h2 ) jest przybliżoną wartością całki
wyznaczoną metodą trapezów, a R2 (h2 ) błędem obliczenia całki przy wielkości
podprzedziału h2 , można napisać
gdzie c = −
I ≅ I 2 (h2 ) + R2 (h2 ) ≅ I 2 (h2 ) + ch22
(3)
Po przyrównaniu prawych stron równań (2) oraz (3) otrzymujemy
I1 (h1 ) + ch12 ≅ I 2 (h2 ) + ch22
(4)
Z równania (4) wyznaczamy c
c≅
I 2 (h2 ) − I1 (h1 )
h12 − h22
(5)
Po podstawieniu prawej strony równania (5) do równania (3) dostajemy
I ≅ I 2 (h2 ) +
I 2 (h2 ) − I1 (h1 )
 h  2 
 1  − 1
h
 2 

(6)
Błąd zależności (6) jest rzędu o (h 4 ), podczas gdy błąd metody trapezów jest rzędu
o (h 2 ).
2008-11-18 15:31
1/2
richardsona_ekstrapol
Metoda całkowania przybliżonego Romberga łączy metody trapezów i ekstrapolacji
Richardsona. Poniższa tabela przedstawia kolejność obliczeń w metodzie Romberga
I0,0
I0,1
I0,2
I0,3
I1,0
I1,1
I1,2
I1,3
I2,0
I2,1
I2,2
I3,0
I3,1
I0,4
I4,0
o(h2)
o(h4)
o(h6)
o(h8)
o(h10)
Procedura:
1) obliczamy I0,0 oraz I1,0
2) wykonujemy ekstrapolację Richardsona dla I0,0 oraz I1,0 i otrzymujemy I0,1
3) obliczamy I2,0
4) wykonujemy ekstrapolację Richardsona dla I1,0 oraz I2,0 i otrzymujemy I1,1
5) wykonujemy ekstrapolację Richardsona dla I0,1 oraz I1,1 i otrzymujemy I0,2
6) obliczamy I3,0
7) wykonujemy ekstrapolację Richardsona dla I2,0 oraz I3,0 i otrzymujemy I2,1
8) wykonujemy ekstrapolację Richardsona dla I1,1 oraz I2,1 i otrzymujemy I1,2
9) wykonujemy ekstrapolację Richardsona dla I0,2 oraz I1,2 i otrzymujemy I0,3
itd.
2008-11-18 15:31
2/2