snippet

Eulerova a Heunova metóda

Z teórie diferenciálnych rovníc vieme, že riešením počiatočnej (Cauchyho) úlohy diferenciálnej rovnice \[y^{\prime}=f(x,y(x)), \quad y(x_0)=y_0\quad\quad\quad(\hbox{DR})\] je funkcia \(y(x)\), pre ktorú platí:\[y(x)=y_0+\int_{x_0}^x f(t,y(t))dt,\quad\quad\quad(1)\]kde \(x_0\) je začiatočný bod.

Eulerova metóda

Eulerova metóda patrí medzi jednoduché, no zároveň veľmi nepresné metódy určenia numerického riešenia diferenciálnej rovnice \((\hbox{DR})\). Myšlienka metódy je založená na princípe nahradenia krivky \(y=f(x)\) jej dotyčnicou v bode \([x_i,f(x_i)]\) na intervale \(\left<x_i,x_{i+1} \right>\). Keďže  smernicu dotyčnice vieme vypočítať pomocou derivácie funkcie t.j. \(k=y^{\prime}(x_i)=f(x_i,y_i)\), dostávame \[y_{i+1}=y_i+hf(x_i,y_i)\quad\hbox{ pre }\quad i=0,1,\dots,n-1.\]

Aproximačný prístup:

Ak v integrálnej rovnici \((1)\) nahradíme bod \(x\)  bodom \(x_{i+1}\) a za začiatočný bod zvolíme \(x_i\), tak  vieme vypočítať presnú hodnotu riešenia \(y(x)\) v uzlovom bode \(x_{i+1}\)  t.j.  \[y(x_{i+1})=y(x_i)+\int_{x_i}^{x_{i+1}} f(t,y(t))dt.\quad\quad\quad(2)\]Pre zjednodušenie výpočtu  použijeme označenie \(F(x)=f(x,y(x))\). Na intervale \(\left<x_i,x_{i+1}\right>\) poznáme presnú hodnotu funkcie \(F(x)\) len v uzlovom bode \(x_i\), lebo \(F(x_i)=f(x_i,y(x_i))\) a \(y(x_i)=y_i\) je známa začiatočná hodnota riešenia \(y(x)\) v začiatočnom bode \(x_i\). No v ostatných bodoch intervalu nevieme vypočítať presnú hodnotu funkcie \(F(x)\) z dôvodu, že nepoznáme presnú hodnotu riešenia \(y(x)\), a tak začíname výpočtom približnej hodnoty riešenia  \(y(x)\) v uzlovom bode \(x_{i+1}\). Určitý integrál \(\displaystyle \int_{x_i}^{x_{i+1}} f(t,y(t))dt\) nahradíme vzťahom  \(hF(x_i)\), ktorý reprezentuje plošný obsah obdĺžnika  s výškou \(F(x_i)\) a šírkou \(h\). Využitím tejto aproximácie integrálu vieme vypočítať približnú hodnotu \(y_{i+1}\) riešenia \(y(x)\) v uzlovom bode \(x_{i+1}\)  pomocou rekurentného vzťahu Eulerovej metódy \[y_{i+1}=y_i+hf(x_i,y_i)\quad\quad\quad(3)\]resp. podľa niektorých odborných literatúr \[y_{i+1}=y_i+k_1,\quad \hbox{ kde } \quad k_1=hf(x_i,y_i).\quad\quad\quad(4)\]

Heunova metóda

Heunova metóda je oveľa presnejšia  ako predchádzajúca Eulerova metóda, no jej jedinou nevýhodou je zložitejší rekurentný vzťah oproti Eulerovej metóde.

Aproximačný prístup:

Postupujeme analogicky ako v Eulerovej metóde a zmena nastáva až v aproximácii. Určitý integrál \(\displaystyle\int_{x_i}^{x_{i+1}} f(t,y(t))dt\) nahradíme určitým integrálom \(\displaystyle\int_{x_i}^{x_{i+1}} L_1(t,x_i,x_{i+1})dt\) t.j. funkciu \(f(t,y(t))\) aproximujeme Lagrangeovým interpolačným polynómom prvého stupňa v uzlových bodoch \(x_i\) a \(x_{i+1}\). Na základe toho  \(y_{i+1}\) vypočítame zo vzťahu \[y_{i+1}=y_i+\frac{h}{2}\left[f(x_i,y(x_i))+f(x_{i+1},y(x_{i+1}))\right].\quad\quad\quad(5)\]Hodnotu \(y(x_{i+1})\) nahradíme vypočítanou hodnotou \(y_{i+1}\) z Eulerovho rekurentného vzťahu \((4)\). Zámenou funkcie \(f(x_i+h,y_i+k_1)\)  za funkciu  \(f(x_{i+1},y(x_{i+1}))\) vo vzťahu \((5)\) a následným označením \(k_2=hf(x_i+h,y_i+k_1)\) dostávame rekurentný vzťah Heunovej metódy \[y_{i+1}=y_i+\frac{k_1+k_2}{2}.\quad\quad\quad(6)\]

Páči sa Vám tento web venovaný matematike?