Metody Newtona-Cotesa

Metody Newtona-Cotesa – zbiór metod numerycznych całkowania, zwanego również kwadraturą. Nazwa pochodzi od Isaaca Newtona i Rogera Cotesa.

Przyjmujemy, że wartości funkcji f ( x ) {\displaystyle f(x)} są znane w równo oddalonych punktach (węzłach) x i , {\displaystyle x_{i},} dla i = 0 , , n . {\displaystyle i=0,\dots ,n.} Dla węzłów nierówno oddalonych od siebie maja zastosowanie inne wzory np. kwadratura gaussowska.

Jeżeli a = x 0 < x 1 < x 2 , < x n 1 < x n = b {\displaystyle a=x_{0}<x_{1}<x_{2},\ldots <x_{n-1}<x_{n}=b} równoodległymi węzłami interpolacji funkcji f ( x ) {\displaystyle f(x)} (tj. x i {\displaystyle x_{i}} są elementami dziedziny f , {\displaystyle f,} dla których znana jest wartość f ( x i ) = y i {\displaystyle f(x_{i})=y_{i}} ), to całkę:

a b f ( x ) d x {\displaystyle \int \limits _{a}^{b}f(x)dx}

można aproksymować całką:

a b L n ( x ) d x {\displaystyle \int \limits _{a}^{b}L_{n}(x)dx}

gdzie L n ( x ) d x {\displaystyle L_{n}(x)dx} jest wielomianem interpolacyjnym Lagrange’a stopnia co najwyżej n , {\displaystyle n,} przybliżającym funkcję f ( x ) {\displaystyle f(x)} w węzłach interpolacji, tj.:

L n ( x 0 ) = y ( x 0 ) , L n ( x 1 ) = y ( x 1 ) , , L n ( x n ) = y ( x n ) {\displaystyle L_{n}(x_{0})=y(x_{0}),L_{n}(x_{1})=y(x_{1}),\dots ,L_{n}(x_{n})=y(x_{n})}

Niech h n = b a n {\displaystyle h_{n}={\frac {b-a}{n}}} oznacza długość kroku dzielącą dwa węzły interpolacji.

Wprowadzając zmienną t , {\displaystyle t,} taką że x = a + t h {\displaystyle x=a+th} można zapisać:

λ i ( x ) = λ i ( a + t h ) = j = 0 j i n t j i j = g ( t ) . {\displaystyle \lambda _{i}(x)=\lambda _{i}(a+th)=\prod _{j=0\land j\neq i}^{n}{\frac {t-j}{i-j}}=g(t).}

Wtedy:

a b L n ( x ) d x = a b i = 0 n f ( x i ) λ i ( x ) d x = i = 0 n f ( x i ) a b λ i ( x ) d x {\displaystyle \int \limits _{a}^{b}L_{n}(x)dx=\int \limits _{a}^{b}\sum _{i=0}^{n}f(x_{i})\cdot \lambda _{i}(x)dx=\sum _{i=0}^{n}f(x_{i})\cdot \int \limits _{a}^{b}\lambda _{i}(x)dx}
x = a + t h , {\displaystyle x=a+t\cdot h,}
f ( x i ) = f ( a + i h ) {\displaystyle f(x_{i})=f(a+i\cdot h)}
x i = a + i h {\displaystyle x_{i}=a+i\cdot h}
dla a = x 0 t = 0 {\displaystyle a=x_{0}\quad t=0}
dla x 1 t = 1 {\displaystyle x_{1}\quad t=1}
{\displaystyle \ldots }
dla b = x n t = n {\displaystyle b=x_{n}\quad t=n}
d x = ( x ) = 1 {\displaystyle dx=(x)'=1}
d t = ( a + t h ) d t = ( a + t h ) = h = d t {\displaystyle dt=(a+t\cdot h)dt=(a+t\cdot h)'=h=dt}

Zmieniając zmienną oraz granice całkowania, otrzymuje się:

a b L i ( x ) d x = h 0 n g ( t ) d t . {\displaystyle \int \limits _{a}^{b}L_{i}(x)dx=h\cdot \int \limits _{0}^{n}g(t)dt.}

Ostatecznie, wzór Newtona-Cotesa dla n + 1 {\displaystyle n+1} równo odległych węzłów przyjmuje postać:

a b f ( x ) d x = a b L n ( x ) d x = i = 0 n f ( x i ) a b λ i ( x = a + t h ) d x = i = 0 n f ( x i ) h 0 n j = 0 j i n t j i j d t . {\displaystyle \int \limits _{a}^{b}f(x)dx=\int \limits _{a}^{b}L_{n}(x)dx=\sum _{i=0}^{n}f(x_{i})\cdot \int \limits _{a}^{b}\lambda _{i}(x=a+t\cdot h)dx=\sum _{i=0}^{n}f(x_{i})\cdot h\cdot \int \limits _{0}^{n}\prod _{j=0\land j\neq i}^{n}{\frac {t-j}{i-j}}dt.}

Przyjmując za A i = h 0 n j = 0 j i n t j i j d t {\displaystyle A_{i}=h\cdot \int \limits _{0}^{n}\prod _{j=0\land j\neq i}^{n}{\frac {t-j}{i-j}}dt} (nazywane współczynnikami kwadratury Newtona-Cotesa), otrzymuje się:

a b f ( x ) i = 0 n f ( x i ) A i . {\displaystyle \int \limits _{a}^{b}f(x)\approx \sum _{i=0}^{n}f(x_{i})\cdot A_{i}.}
  • A i = A n i {\displaystyle A_{i}=A_{n-i}}
Dowód:
A i = h 0 n j = 0 j i n t j i j d t {\displaystyle A_{i}=h\cdot \int \limits _{0}^{n}\prod _{j=0\land j\neq i}^{n}{\frac {t-j}{i-j}}dt}
Niech v = n t . {\displaystyle v=n-t.}
Wtedy:
d t = d v {\displaystyle dt=-dv}
A i = h n 0 j = 0 j i n n v j i j d v = {\displaystyle A_{i}=-h\cdot \int \limits _{n}^{0}\prod _{j=0\land j\neq i}^{n}{\frac {n-v-j}{i-j}}dv=}
Odwrócenie granic całkowania:
= h 0 n j = 0 j i n n j v ( n j ) ( n i ) d v = {\displaystyle =h\cdot \int \limits _{0}^{n}\prod _{j=0\land j\neq i}^{n}{\frac {n-j-v}{(n-j)-(n-i)}}dv=}
Niech ( n j ) = j . {\displaystyle (n-j)=j'.}
= h 0 n j = 0 j ( n i ) n j v j ( n i ) d v = {\displaystyle =h\cdot \int \limits _{0}^{n}\prod _{j'=0\land j'\neq (n-i)}^{n}{\frac {j'-v}{j'-(n-i)}}dv=}
Po wyciągnięciu (–1) przed licznik i mianownik:
= h 0 n v = 0 v ( n i ) n v v ( n i ) v d v = A n i {\displaystyle =h\cdot \int \limits _{0}^{n}\prod _{v'=0\land v'\neq (n-i)}^{n}{\frac {v-v'}{(n-i)-v'}}dv=A_{n-i}}

Definiuje się dwa typy wzorów Newtona-Cotesa:

  • otwarte, które nie wykorzystują wartości funkcji w skrajnych punktach, oraz
  • zamknięte, wykorzystujące wszystkie wartości funkcji.

Zamknięty wzór Newtona-Cotesa rzędu n : {\displaystyle n{:}}

a b f ( x ) d x i = 0 n w i f ( x i ) , {\displaystyle \int \limits _{a}^{b}f(x)\,dx\approx \sum _{i=0}^{n}w_{i}\,f(x_{i}),}

gdzie x i = h i + x 0 , {\displaystyle x_{i}=hi+x_{0},} z h {\displaystyle h} (nazywanym rozmiarem kroku) równym ( x n x 0 ) / n {\displaystyle (x_{n}-x_{0})/n} oraz w i {\displaystyle w_{i}} wagami. Wagi można wyprowadzić z wielomianów bazowych Lagrange’a. To oznacza, że zależą tylko od x i , {\displaystyle x_{i},} a nie od funkcji f . {\displaystyle f.} L ( x ) {\displaystyle L(x)} wielomianem interpolacji w postaci Lagrange’a dla punktów ( x 0 , f ( x 0 ) ) , ( x n , f ( x n ) ) {\displaystyle (x_{0},f(x_{0})),\dots (x_{n},f(x_{n}))}

a b f ( x ) d x a b L ( x ) d x = a b i = 0 n f ( x i ) l i ( x ) d x = i = 0 n x i 1 x i f ( x i ) l i ( x ) d x = i = 0 n f ( x i ) x i 1 x i l i ( x ) d x w i . {\displaystyle {\begin{aligned}&\int \limits _{a}^{b}f(x)\,dx\\\approx {}&\int \limits _{a}^{b}L(x)\,dx\\={}&\int \limits _{a}^{b}\sum _{i=0}^{n}f(x_{i})\,l_{i}(x)\,dx\\={}&\sum _{i=0}^{n}\int \limits _{x_{i-1}}^{x_{i}}f(x_{i})\,l_{i}(x)\,dx\\={}&\sum _{i=0}^{n}f(x_{i})\underbrace {\int \limits _{x_{i-1}}^{x_{i}}l_{i}(x)\,dx} _{w_{i}}.\end{aligned}}}

Otwarty wzór Newtona-Cotesa rzędu n : {\displaystyle n{:}}

a b f ( x ) d x i = 1 n 1 w i f ( x i ) {\displaystyle \int \limits _{a}^{b}f(x)\,dx\approx \sum _{i=1}^{n-1}w_{i}\,f(x_{i})}

wagi znajdujemy w sposób analogiczny do powyższego.

  • Możemy skonstruować wzór Newtona-Cotesa dowolnego rzędu.
  • Niektóre wzory niskich rzędów mają swoje tradycyjne nazwy.
  • W poniższej tabeli znajdują się wzory Newtona-Cotesa typu zamkniętego.
  • Notacja f i {\displaystyle f_{i}} oznacza f ( x i ) . {\displaystyle f(x_{i}).}
Rząd Tradycyjna nazwa Wzór Błąd
1 wzór trapezów h 2 ( f 0 + f 1 ) {\displaystyle {\frac {h}{2}}(f_{0}+f_{1})} h 3 12 f ( 2 ) ( ξ ) {\displaystyle -{\frac {h^{3}}{12}}\,f^{(2)}(\xi )}
2 wzór Simpsona h 3 ( f 0 + 4 f 1 + f 2 ) {\displaystyle {\frac {h}{3}}(f_{0}+4f_{1}+f_{2})} h 5 90 f ( 4 ) ( ξ ) {\displaystyle -{\frac {h^{5}}{90}}\,f^{(4)}(\xi )}
3 reguła 3/8 3 h 8 ( f 0 + 3 f 1 + 3 f 2 + f 3 ) {\displaystyle {\frac {3h}{8}}(f_{0}+3f_{1}+3f_{2}+f_{3})} 3 h 5 80 f ( 4 ) ( ξ ) {\displaystyle -{\frac {3\,h^{5}}{80}}\,f^{(4)}(\xi )}
4 wzór Boole’a czasem błędnie[1] nazywany wzorem Bode’a 2 h 45 ( 7 f 0 + 32 f 1 + 12 f 2 + 32 f 3 + 7 f 4 ) {\displaystyle {\frac {2\,h}{45}}(7f_{0}+32f_{1}+12f_{2}+32f_{3}+7f_{4})} 8 h 7 945 f ( 6 ) ( ξ ) {\displaystyle -{\frac {8\,h^{7}}{945}}\,f^{(6)}(\xi )}

Wykładnik o kroku h {\displaystyle h} w wyrazie błędu pokazuje szybkość zmniejszania się błędu przybliżenia. Pochodna f {\displaystyle f} w wyrazie błędu pokazuje który wielomian może być scałkowany dokładnie (tzn. z błędem równym 0). Można zauważyć, że stopień pochodnej f {\displaystyle f} w oszacowaniu błędu wzrasta o 2 dla co drugiego wzoru. Liczba ξ {\displaystyle \xi } leży pomiędzy a {\displaystyle a} i b . {\displaystyle b.}

W poniższej tabeli znajdują się wzory Newtona-Cotesa typu otwartego.

Rząd Tradycyjna nazwa Wzór Błąd
0 wzór prostokątów 2 h f 1 {\displaystyle 2hf_{1}} h 3 24 f ( 2 ) ( ξ ) {\displaystyle {\frac {h^{3}}{24}}\,f^{(2)}(\xi )}
1 3 h 2 ( f 1 + f 2 ) {\displaystyle {\frac {3\,h}{2}}(f_{1}+f_{2})} h 3 4 f ( 2 ) ( ξ ) {\displaystyle {\frac {h^{3}}{4}}\,f^{(2)}(\xi )}
2 4 h 3 ( 2 f 1 f 2 + 2 f 3 ) {\displaystyle {\frac {4\,h}{3}}(2f_{1}-f_{2}+2f_{3})} 28 h 5 90 f ( 4 ) ( ξ ) {\displaystyle {\frac {28\,h^{5}}{90}}\,f^{(4)}(\xi )}
3 5 h 24 ( 11 f 1 + f 2 + f 3 + 11 f 4 ) {\displaystyle {\frac {5\,h}{24}}(11f_{1}+f_{2}+f_{3}+11f_{4})} 95 h 5 144 f ( 4 ) ( ξ ) {\displaystyle {\frac {95\,h^{5}}{144}}\,f^{(4)}(\xi )}

Warto zwrócić uwagę, że aby wzór dawał dobre przybliżenie, krok h {\displaystyle h} musi być mały, co oznacza, że przedział całkowania [ a , b ] {\displaystyle [a,b]} również musi być mały, co zazwyczaj nie jest spełnione. Z tego powodu dzielimy przedział na mniejsze podprzedziały i stosujemy metodę Newtona-Cotesa na każdym z tych podprzedziałów, a następnie dodając wyniki. Jest to metoda złożona.

Zobacz też

  • analiza numeryczna
  • metoda numeryczna

Przypisy

  1. Eric W.E.W. Weisstein Eric W.E.W., Boole’s Rule, [w:] MathWorld, Wolfram Research [dostęp 2017-11-25]  (ang.).

Bibliografia

  • J. i M. Jankowscy, Przegląd metod i algorytmów numerycznych. Warszawa, 1981. (See Section 4.5)
  • M. Abramowitz, I.A. Stegun, eds. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. New York: Dover, 1972. (See Section 25.4.)
  • George E. Forsythe, Michael A. Malcolm, and Cleve B. Moler. Computer Methods for Mathematical Computations. Englewood Cliffs, NJ: Prentice-Hall, 1977. (See Section 5.1.)
  • William H. Press, Brian P. Flannery, Saul A. Teukolsky, William T. Vetterling. Numerical Recipes in C. Cambridge, UK: Cambridge University Press, 1988. (See Section 4.1.)
  • Josef Stoer and Roland Bulirsch. Introduction to Numerical Analysis. New York: Springer-Verlag, 1980. (See Section 3.1.)

Linki zewnętrzne

  • Eric W.E.W. Weisstein Eric W.E.W., Newton-Cotes Formulas, [w:] MathWorld, Wolfram Research [dostęp 2020-12-12]  (ang.).