Wikipedista:Kolarp/Gaussova kvadratura

Porovnání dvoubodové Gaussovy kvadratury s lichoběžníkovou metodou.
Porovnání dvoubodové Gaussovy kvadratury s lichoběžníkovou metodou. Modrá křivka je graf funkce jejíž určitý integrál na intervalu se má vypočítat.
Lichoběžníková metoda aproximuje funkci oranžovou čárkovanou úsečkou, která spojuje funkční hodnoty na okrajích intervalu. Z obrázku je patrné, že tato aproximace není dobrá, takže chyba spočítané hodnoty integrálu je velká (lichoběžníková metoda dává hodnotu y(–1) + y(1) = –10, zatímco správná hodnota je 2/3). Aby se lichoběžníkovou metodou dosáhlo přesnějšího výsledku, bylo by nutné rozdělit interval na mnoho podintervalů, funkci nahradit v každém podintervalu lineární funkcí a počítat mnoho funkčních hodnot funkce
Naproti tomu Gaussova metoda vybírá vhodnější body integrace, takže jediná lineární funkce (znázorněná černou čárkovanou úsečkou) aproximuje funkci mnohem lépe. Výsledek integrace dvoubodovou Gaussovou metodou je Tato hodnota je dokonce přesný výsledek, protože zelená oblast má stejnou plochu jako součet ploch červených oblastí. Důvodem je, že integrovaná funkce je ve skutečnosti polynom stupně 3.

Numerické metody integrace jsou v numerické matematice metody výpočtu přibližných hodnot určitých integrálů funkcí. Při numerickém výpočtu určitého integrálu nějaké funkce se obvykle používá vážený součet hodnot této funkce v určitých bodech integračního intervalu. Další informace o numerických metodách integrace jsou ve článcích Numerická integrace a Kvadratura (matematika).

Gaussova kvadratura, přesněji n-bodová Gaussova metoda numerické integrace, pojmenovaná po Carlu Friedrichu Gaussovi[1] je metoda numerické integrace, která díky vhodné volbě uzlů xi a vah wi pro i = 1, ..., n pro polynomy do stupně 2n − 1 dává přesné výsledky. Moderní formulaci pomocí ortogonálních polynomů vyvinul Carl Gustav Jacob Jacobi v roce 1826.[2] Nejobvyklejším integračním intervalem pro toto pravidlo je , kdy pravidlo má tvar

a poskytuje přesné výsledky pro polynomy do stupně 2n − 1. Toto přesné pravidlo je známé jako Gaussova-Legendreova metoda numerické integrace. Metoda numerické integrace bude přesnou aproximací integrálu uvedeného výše pouze v případě, když funkci f(x) lze na intervalu dobře aproximovat polynomem stupně nejvýše 2n − 1.

Gaussova-Legendreova metoda numerické integrace se zpravidla nepoužívá pro integraci funkcí se singularitami v koncových bodech. V takovém případě se snažíme integrand zapsat jako

kde g(x) je funkce, kterou lze dobře aproximovat polynomem nízkého stupně. Pak použití alternativních uzlů a vah obvykle dává přesnější metody numerické integrace, které jsou známy jako Gaussova-Jacobiho kvadraturní pravidla:

Jako váhy se často používají hodnoty (Čebyševova–Gaussova) a . Můžeme také chtít integrovat na intervalech neomezených z jedné (Gaussova-Laguerrova kvadratura) nebo obou stran (Gaussova–Hermitova kvadratura).

Lze ukázat (viz Press, et al. nebo Stoer a Bulirsch), že kvadraturní uzly xi jsou kořeny polynomu patřícího do třídy ortogonálních polynomů (třída ortogonální vůči váženému vnitřnímu součinu). To je klíčové pozorování pro výpočet uzlů a vah pro Gaussovu kvadraturu.

Gaussova–Legendreova kvadratura

editovat
 
Grafy Legendrových polynomů (do stupně n = 5)

Pro nejjednodušší případ numerické integrace uvedený výše, kdy je funkce f(x) dobře aproximovaná polynomy na intervalu   související/příslušnými ortogonální polynomy jsou Legendreovy polynomy, označované Pn(x). Je-li n-tý polynom normalizovaný, aby dával Pn(1) = 1, i-tý Gaussův uzel, xi, je i-tý kořen polynomu Pn a váhy jsou dané vzorcem[3]

 

Integrační body a váhy pro Gaussovu–Legendreovu kvadraturu nižších řádů na intervalu   jsou uvedeny v následující tabulce; v další části jsou vzorce pro integraci na jiných intervalech. Nějaké nejméně významný metody numerické integrace jsou tabelovaný níže (přes

Počet bodů, n Body, xi Váhy, wi
1 0 2
2   ±0.57735... 1
3 0   0.888889...
  ±0.774597...   0.555556...
4   ±0.339981...   0.652145...
  ±0.861136...   0.347855...
5 0   0.568889...
  ±0.538469...   0.478629...
  ±0.90618...   0.236927...

Změna intervalu

editovat

Pro výpočet integrálu na obecném intervalu   je třeba před použitím Gaussovy metody numerické integrace úlohu převést na integrál na intervalu  . Tuto změnu intervalu lze provést následujícím způsobem:

 

kde  

Následné použití  -bodového Gaussova kvadraturního   pravidla pak dává následující aproximaci:

 

Příklad dvoubodového Gaussova kvadraturního pravidla

editovat

Použijeme dvoubodovou Gaussovu metodu numerické integrace pro výpočet přibližné vzdálenosti v metrech uražené raketou v čase    je-li dáno  

Změníme meze integračního intervalu, abychom mohli použít váhy a x-ové souřadnice uvedené v Tabulce 1. Také najdeme absolutní hodnotu relativní skutečné chyby. Přesný výsledek je 11061,34m

Řešení:

Změna mezí integračního intervalu z   na   dává

 

Nyní použijeme váhy a hodnoty argumentu z Tabulky 1 pro dvoubodové pravidlo:

  •  
  •  
  •  
  •  

Nyní můžeme použít Gaussův vzorec pro numerickou integraci

 

protože

   

Pokud přesný výsledek je 11061,34m, absolutní hodnota relativní skutečné chyby,   je  

Zobecnění

editovat

Problém integrace lze vyjádřit poněkud obecnějším způsobem tak, že do integrandu vneseme kladnou váhovou funkci ω a povolíme jiné integrační intervaly než  . Obecně tedy počítáme

 

pro určité a, b, a ω. Pro a = −1, b = 1, a ω(x) = 1 jde o stejný problém, jaký je popsán výše. Jiné volby vedou k jiným integračním pravidlům. Některé z nich jsou tabelovány níže. Čísla rovnic ve sloupci „A & S“ jsou podle Abramowitz a Stegun

Interval ω(x) Ortogonální polynomy A & S Pro více informací, viz ...
  1 Legendreovy polynomy 25.4.29 Gaussova–Legendreova kvadratura
(−1, 1)   Jacobiho polynomy 25.4.33 (β = 0) Gaussova–Jacobiho kvadratura
(−1, 1)   Čebyševovy polynomy (prvního druhu) 25.4.38 Čebyševova–Gaussova kvadratura
    Čebyševovy polynomy (druhého druhu) 25.4.40 Čebyševova–Gaussova kvadratura
    Laguerrovy polynomy 25.4.45 Gaussova–Laguerre kvadratura
    Zobecněné Laguerrovy polynomy Gaussova–Laguerre kvadratura
    Hermitovy polynomy 25.4.46 Gaussova–Hermitova kvadratura

Základní věta

editovat

Nechť pn je netriviální polynom stupně n, takový, že

 

Všimněte si, že toto bude splněno pro všechny ortogonální polynomy výše, protože každý polynom pn je zkonstruován tak, aby byl ortogonální k ostatním polynomům pj pro jn, a xk je v rozsahu této množiny.

Pokud vybereme n uzlů xi tak, aby to byly kořeny polynomu pn, pak existuje n vah wi, pro které je integrál vypočítaný Gaussovou kvadraturou přesný pro všechny polynomy h(x) stupně nejvýše 2n − 1. Všechny tyto uzly xi budou navíc ležet v otevřeném intervalu (a, b)[4].

Pro důkaz první části tohoto tvrzení budeme předpokládat, že h(x) je jakýkoli polynom stupně nejvýše 2n − 1. Pokud jej vydělíme ortogonálním polynomem pn dostaneme

 

kde q(x) je podíl stupně nejvýše n − 1 (protože součet jeho stupně a dělitele pn musí být roven stupni dělitele), a r(x) je zbytek také stupně nejvýše n − 1 (protože stupeň zbytku je vždy menší než stupeň dělitele). Protože pn je podle předpokladu ortogonální ke všem jednočlenům stupně menšího než n, musí být ortogonální také s podílem q(x). Proto

 

Protože zbytek r(x) má stupeň nejvýše n − 1, můžeme jej interpolovat přesně pomocí n interpolačních bodů pomocí Lagrangeovy interpolace li(x), kde

 

Máme

 

Jeho integrál pak bude roven

 

kde wi, váhy přiřazené uzlu xi, jsou dány tak, aby byly rovny váženému integrálu li(x) (jiné vzorce pro váhy jsou uvedeny níže). Protože všechny xi jsou kořeny polynomu pn, podle vzorce pro dělení uvedeného výše

 

pro všechna i. Tedy nakonec máme

 

To dokazuje, že pro jakýkoli polynom h(x) stupně nejvýše 2n − 1 je integrál dán přesně sumou podle Gaussovy kvadratury.

Pro důkaz druhé části tvrzení použijeme polynom ve tvaru součinu kořenových činitelů pn. Komplexně sdružené kořeny tvoří kvadratické členy, které jsou na celé reálné ose buď kladné nebo záporné. Členy oidpovídající kořenům mimo interval   na tomto intervalu nemění znaménko. Členy odpovídající kořenům xi z intervalu   které jsou liché násobnosti, vícenásobně pn jedním více faktor vytvořit nový polynom

 

Tento polynom nemůže na intervalu   měnit znaménko, protože všechny jeho kořeny mají sudou násobnost. Tak integrál

 

protože váhová funkce ω(x) je vždy nezáporná. Ale pn je ortogonální ke všem polynomům stupně nejvýše n-1, takže stupeň součinu

 

musí být alespoň n. Proto pnn různých reálných kořenů v intervalu  

Obecný vzorec pro váhy

editovat

Váhy je možné vyjádřit jako

 

 

 

 

 

(1)

kde   je koeficient u   v  . Pro důkaz toto, si všimneme, že při použití Lagrangeovy interpolace můžeme vyjádřit r(x) pomocí   jako

 

protože r(x) má stupeň menší než n a je proto určen hodnotami, kterých nabývá v n různých bodech. Znásobením obou strany ω(x) a jejich zintegrováním   dostaneme

 

Váhy wi jsou tedy dány vzorcem

 

Tento integrální výraz pro   lze vyjádřit pomocí ortogonálních polynomů   a   takto.

Můžeme psát

 

kde   je koeficient u   v  . V limitě x jdoucí k   dostaneme pomocí L'Hôpitalova pravidla

 

Můžeme tedy psát integrál výraz pro váhy jako

 

 

 

 

 

(2)

V integrandu zapisování

 

dává

 

poskytnutý  , protože

 

je polynom stupně k − 1 který pak je ortogonální na  . Takže, pokud q(x) je polynom nejvýše n-tého stupně, máme

 

Můžeme vyhodnotit integrál na pravé straně pro   takto. Protože   je polynom stupně n − 1, máme

 

kde s(x) je polynom stupně  . Protože s(x) je ortogonální na   máme

 

Pak můžeme psát

 

Člen v závorkách je polynom stupně  , který je proto ortogonální s  . Integrál tedy můžeme napsat jako

 

Podle rovnice (2), váhy získáme dělením toto výrazem   a to dává výraz v rovnici (1).

  mohou být také vyjádřeny členy ortogonálních polynomů   a nyní  . V trojčlenném rekurentním vztahu   člen s   bude mít nulovou hodnotu, tak   v Eq. (1) lze nahradit  .

Důkaz, že váhy jsou kladné

editovat

Uvažujme následující polynom stupně  

 

kde, jak je uvedeno výše, xj jsou kořeny polynomu  . Jasně  . Protože stupeň   je méně než  , Gaussův vzorec pro numerickou integraci obsahujícím váhy a uzly získaný z   se použije. Protože   pro j není rovný i, máme

 

Protože jak   tak   jsou nezáporné funkce, z toho plyne, že  .

Numerické integrace Gaussovou metodou

editovat

Existuje mnoho algoritmů pro výpočet uzlů xi a vah wi Gaussovy metody numerické integrace. Nejoblíbenější jsou Golubův-Welschův algoritmus vyžadující O(n2) operací, Newtonova metoda pro řešení   pomocí trojčlenného rekurentního vztahu pro vyhodnocování vyžaduje O(n2) operací, a asymptotické vzorce pro velká n vyžadují O(n) operací.

Rekurentní vztah

editovat

Pro ortogonální polynomy   platí, že   pro   kde   je skalární součin, stupeň   a koeficient u nejvyššího členu je jedna (tj. jde o monické ortogonální polynomy) vyhovuje rekurentní vztah

 

a skalární součin definovaný

 

pro   kde n je maximální stupeň, který může být nekonečno, a kde  . Nejdříve polynomy definované vztahem rekurentní vztah začínající   má úvodní koeficient jedna a správný stupeň. Je-li dán počátek  , ortogonalitu   lze dokázat indukcí. Pro   máme

 

Pokud jsou nyní   ortogonální, pak také  , protože v

 

všechny skalární součiny jsou nulové kromě prvního a toho, kde   je stejný ortogonální polynom. Proto

 

Pokud však pro skalární součin platí   (což je případ Gaussovy kvadratury), rekurentní vztah se zjednoduší na trojčlenný rekurentní vztah: Pro   je polynom nejvýše stupně r − 1. Na druhou stranu,   je ortogonální ke každému polynomu stupně nejvýše r − 1. Proto máme   a   pro s < r − 1. Rekurentní vztah se pak zjednoduší na

 

nebo

 

(s konvencí  ) kde

 

(poslední protože  , protože   se liší od   stupněm menším než r).

Golubův-Welschův algoritmus

editovat

Trojčlenný rekurentní vztah lze zapsat v maticovém tvaru   kde  ,   je  -tý vektor standardní báze, tj.  , a J je tak zvaná Jacobiho matice:

 

Nulové body   polynomů do stupně n, které se používají jako uzly pro Gaussovu kvadraturu, lze nalézt výpočtem vlastních hodnot této třídiagonální matice. Tento postup je znám jako Golubův–Welschův algoritmus.

Pro výpočet vah a uzlů je vhodnější uvažovat symetrickou třídiagonální matici   s prvky

 

J a   jsou podobné matice a proto mají stejná vlastní čísla (uzly). Váhy lze vypočítat z odpovídajících vlastních vektorů: Pokud   je normalizovaný vlastní vektor (tj. vlastní vektor s Eukleidovskou normou rovné jedné) příslušný k vlastní hodnotě xj, odpovídající váhu lze vypočítat z první složky tohoto vlastního vektoru, jmenovitě:

 

kde   je integrál váhové funkce

 

Další detaily lze nalézt v monografii Numerical Methods for Special Function.[5]

Odhady chyby

editovat

Pro integrand, který má 2n spojitých derivací, platí následující odhad chyby Gausovy metody numerické integrace:[6]

 

pro nějaké ξ v (a, b), kde pn je monický (tj. úvodní koeficient je 1) ortogonální polynom stupně n a kde

 

V důležitém speciálním případě, kdy ω(x) = 1, je odhad chyby:[7]

 

Tento odhad chyby může být v praxi problematický, protože odhad derivace řádu 2n může být obtížný, a skutečná chyba může být navíc mnohem menší než jakou dává tento odhad.[8] Alternativním přístupem může být použití dvou Gaussových metod numerické integrace s různými parametry, a odhadnutí chyby jako rozdílu obou výsledků. K tomuto účelu může být užitečná Gaussova–Kronrodova metoda numerické integrace.

Gaussova–Kronrodova pravidla

editovat
Podrobnější informace naleznete na stránce Gaussův–Kronrodův kvadraturní vzorec.

Pokud bychom zjemnili rozdělení intervalu  , Gaussovy body vyhodnocování na nových podintervalech se nebudou shodovat s předchozími body (až bodu nula pro liché n), a integrand by se tedy musel vyčíslovat v každém bodě. Gaussova–Kronrodova pravidla jsou rozšířením Gaussovy metody numerické integrace generované přidáním n + 1 bodů k n-bodovému pravidlu takovým způsobem, že výsledné pravidlo má řád 2n + 1 a umožňuje vypočítat odhady vyšších řádů s použitím funkčních hodnot z odhadů nižších řádů. Rozdíl mezi hodnotami získanými Gaussovou metodou numerické integrace a jejím Kronrodovým rozšířením se často používá pro odhad chyby aproximace.

Gaussova–Lobattova pravidla

editovat

Metoda známá také jako Lobattova kvadratura[9] pojmenovaná po nizozemském matematikovi Rehuelu Lobattovi se podobá Gaussově kvadratuře s následujícími rozdíly:

  1. Integračními body jsou také koncové body integračního intervalu.
  2. Je přesná pro polynomy do stupně 2n – 3, kde n je počet integračních bodů[10].

Lobattova kvadratura funkce f(x) na interval  :

 

X-ové souřadnice: xi je  -tý kořen  , zde  označuje standardní Legendreův polynom m-tého stupeň a apostrof označuje derivaci.

Váhy:

 

Zbytek:

 

Některé váhy jsou:

Počet bodů, n Body, xi Váhy, wi
     
   
     
   
     
   
   
     
   
   
     
   
   
   

Adaptivní varianta tohoto algoritmus se dvěma vnitřními uzl[11] je implementována v GNU Octave a MATLAB jako quadl a integrate.[12][13]

Poznámky

editovat
  1. GAUSS, Carl Friedrich. Methodus nova integralium valores per approximationem inveniendi. Comm. Soc. Sci. Göttingen Math. 1815, roč. 3, s. 29–76. Dostupné online. (latinsky) 
  2. JACOBI, Carl Gustav Jacob. Ueber Gauß' neue Methode, die Werthe der Integrale näherungsweise zu finden. Journal für Reine und Angewandte Mathematik. 1826, roč. 1, s. 301–308,. Dostupné online. (německy) 
  3. Abramowitz a Stegun 1972, p. 887.
  4. Stoer a Bulirsch 2002, s. 172–175.
  5. Gil, Segura a Temme 2007.
  6. Stoer a Bulirsch 2002, Thm 3.6.24.
  7. Kahaner, Moler a Nash 1989, §5.2.
  8. Stoer a Bulirsch 2002.
  9. Abramowitz a Stegun 1972, p. 888.
  10. Quarteroni, Sacco a Saleri 2000.
  11. GANDER, Walter; GAUTSCHI, Walter. Adaptive Quadrature - Revisited. BIT Numerical Mathematics. 2000, roč. 40, čís. 1, s. 84–101. Dostupné online. DOI 10.1023/A:1022318402393. 
  12. Numerical integration - MATLAB integral [online]. Dostupné online. 
  13. Functions of One Variable (GNU Octave) [online]. [cit. 2018-09-28]. Dostupné online. 

Reference

editovat

V tomto článku byl použit překlad textu z článku Gaussian quadrature na anglické Wikipedii.

  • KABIR1, H.; MATIKOLAEI, S. A. H. H., 2017. Implementing an Accurate Generalized Gaussian Quadrature Solution to Find the Elastic Field in a Homogeneous Anisotropic Media. Journal of the Serbian Society for Computational Mechanics. Roč. 11, čís. 1, s. 11-19. Dostupné online. DOI 10.24874/jsscm.2017.11.01.02. 
  • ABRAMOWITZ, Milton; STEGUN, 1983 [June 1964]. Handbook of Mathematical Functions with Formulas, Graphs, and Mathematical Tables. Applied Mathematics Series. Svazek 55. Washington D.C.; New York: United States: Department of Commerce, National Bureau of Standards; Dover Publications. ISBN 978-0-486-61272-0. 
  • ANDERSON, Donald G., 1965. Gaussian quadrature formulae for . Math. Comp.. Roč. 19, čís. 91, s. 477–481. DOI 10.1090/s0025-5718-1965-0178569-1. 
  • GOLUB, Gene H.; WELSCH, John H., 1969. Calculation of Gauss Quadrature Rules. Mathematics of Computation. Roč. 23, čís. 106, s. 221–230. DOI 10.1090/S0025-5718-69-99647-1. JSTOR 2004418. 
  • GAUTSCHI, Walter, 1968. Construction of Gauss–Christoffel Quadrature Formulas. Math. Comp.. Roč. 22, čís. 102, s. 251–270. DOI 10.1090/S0025-5718-1968-0228171-0. 
  • GAUTSCHI, Walter, 1970. On the construction of Gaussian quadrature rules from modified moments. Math. Comp.. Roč. 24, s. 245–260. DOI 10.1090/S0025-5718-1970-0285117-6. 
  • PIESSENS, R., 1971. Gaussian quadrature formulas for the numerical integration of Bromwich's integral and the inversion of the laplace transform. J. Eng. Math.. Roč. 5, čís. 1, s. 1–9. DOI 10.1007/BF01535429. Bibcode 1971JEnMa...5....1P. 
  • DANLOY, Bernard, 1973. Numerical construction of Gaussian quadrature formulas for and . Math. Comp.. Roč. 27, čís. 124, s. 861–869. DOI 10.1090/S0025-5718-1973-0331730-X. 
  • KAHANER, David; MOLER, Cleve; NASH, Stephen, 1989. Numerical Methods and Software. [s.l.]: Prentice-Hall. Dostupné online. ISBN 978-0-13-627258-8. 
  • SAGAR, Robin P., 1991. A Gaussian quadrature for the calculation of generalized Fermi-Dirac integrals. Comput. Phys. Commun.. Roč. 66, čís. 2–3, s. 271–275. DOI 10.1016/0010-4655(91)90076-W. Bibcode 1991CoPhC..66..271S. 
  • YAKIMIW, E., 1996. Accurate computation of weights in classical Gauss-Christoffel quadrature rules. J. Comput. Phys.. Roč. 129, čís. 2, s. 406–430. DOI 10.1006/jcph.1996.0258. Bibcode 1996JCoPh.129..406Y. 
  • LAURIE, Dirk P., 1999. Accurate recovery of recursion coefficients from Gaussian quadrature formulas. J. Comput. Appl. Math.. Roč. 112, čís. 1–2, s. 165–180. DOI 10.1016/S0377-0427(99)00228-9. 
  • LAURIE, Dirk P., 2001. Computation of Gauss-type quadrature formulas. J. Comput. Appl. Math.. Roč. 127, čís. 1–2, s. 201–217. DOI 10.1016/S0377-0427(00)00506-9. Bibcode 2001JCoAM.127..201L. 
  • RIENER, Cordian; SCHWEIGHOFER, Markus, 2018. Optimization approaches to quadrature: New characterizations of Gaussian quadrature on the line and quadrature with few nodes on plane algebraic curves, on the plane and in higher dimensions. Journal of Complexity. Roč. 45, s. 22–54. DOI 10.1016/j.jco.2017.10.002. arXiv 1607.08404. 
  • STOER, Josef; BULIRSCH, Roland, 2002. Introduction to Numerical Analysis. 2. vyd. [s.l.]: Springer. ISBN 978-0-387-95452-3. .
  • TEMME, Nico M., 2010. NIST Handbook of Mathematical Functions. Příprava vydání in Olver, Frank W. J.; Lozier, Daniel M.; Boisvert, Ronald F.; Clark, Charles W.. [s.l.]: Cambridge University Press. ISBN 978-0-521-19225-5. 
  • PRESS, WH; TEUKOLSKY, SA; VETTERLING, WT; FLANNERY, BP, 2007. Numerical Recipes: The Art of Scientific Computing. 2. vyd. New York: Cambridge University Press. ISBN 978-0-521-88068-8. Kapitola Section 4.6. Gaussian Quadratures and Orthogonal Polynomials. 
  • GIL, Amparo; SEGURA, Javier; TEMME, Nico M., 2007. Numerical Methods for Special Functions. [s.l.]: SIAM. ISBN 978-0-89871-634-4. Kapitola §5.3: Gauss quadrature. 
  • QUARTERONI, Alfio; SACCO, Riccardo; SALERI, Fausto. Numerical Mathematics. New York: Springer-Verlag, 2000. ISBN 0-387-98959-5. S. 422, 425. 
  • GAUTSCHI, Walter. A Software Repository for Gaussian Quadratures and Christoffel Functions. [s.l.]: SIAM, 2000. ISBN 978-1-611976-34-2. 

Související články

editovat

Literatura

editovat
  • SEGETHOVÁ, J. Základy numerické matematiky. Praha: MFF UK, 2002. 

Externí odkazy

editovat