Metoda Eulera


Metoda Eulera w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania Kilka krzywych całkowych, wyznaczonych przy pomocy metody Eulera, spełniających równanie różniczkowe: f ( x , y ) = x ( y + 1 ) x 2 + 2 {\displaystyle f'(x,y)={\frac {x(y+1)}{x^{2}+2}}}

Metoda Eulera – sposób rozwiązywania równań różniczkowych, opierający się na interpretacji geometrycznej równania różniczkowego. Po raz pierwszy została ona przedstawiona w 1768 roku w podręczniku Leonharda Eulera pt. Institutiones calculi differentialis („Kształcenie w rachunku różniczkowym”)[1].

Spis treści

Metoda podstawowa | edytuj kod

Równanie postaci y = f ( x , y ) {\displaystyle y'=f(x,y)} o warunkach początkowych ( x 0 , y 0 ) : y 0 = y ( x 0 ) , {\displaystyle (x_{0},y_{0}):y_{0}=y(x_{0}),} z kolejnymi punktami x i {\displaystyle x_{i}} na osi x:

x n + 1 = x n + h , n = 0 , 1 , 2 , 3 , . . . {\displaystyle x_{n+1}=x_{n}+h,\quad n=0,1,2,3,...}

Ponieważ – z definicji pochodnej

y = Δ y h , {\displaystyle y'={\frac {\Delta y}{h}},}

czyli zarazem

f ( x n , y n ) = y = Δ y h . {\displaystyle f(x_{n},y_{n})=y'={\frac {\Delta y}{h}}.}

Po przekształceniu:

Δ y = h f ( x n , y n ) . {\displaystyle \Delta y=hf(x_{n},y_{n}).}

Ponieważ szukamy wzoru na y n + 1 , {\displaystyle y_{n+1},} zatem do wzoru y n + 1 = y n + Δ y {\displaystyle y_{n+1}=y_{n}+\Delta y} podstawiamy wyżej wyliczone Δ y {\displaystyle \Delta y} i otrzymujemy ostatecznie równanie:

y n + 1 = y n + h f ( x n , y n ) . {\displaystyle y_{n+1}=y_{n}+hf(x_{n},y_{n}).}

Porównując otrzymany wynik z rozwinięciem Taylora otrzymujemy:

y n + 1 = y ( x n + 1 ) = y ( x n + h ) = y n + h f ( x n , y n ) + f ( 2 ) ( ξ ) 2 h 2 , {\displaystyle y_{n+1}=y(x_{n+1})=y(x_{n}+h)=y_{n}+hf(x_{n},y_{n})+{\frac {f^{(2)}(\xi )}{2}}h^{2},}

gdzie x n < ξ < x n + 1 {\displaystyle x_{n}<{\xi }<x_{n+1}}

co oznacza, że przybliżenie wartości y ( x n + 1 ) {\displaystyle y(x_{n+1})} ma błąd rzędu h 2 . {\displaystyle h^{2}.} Świadczy to o tym, że obranie mniejszego przedział kroku da w rezultacie dokładniejszy wynik.

Zbieżność | edytuj kod

Zależność dokładności rozwiązania od wielkości kroku najlepiej sprawdzić na przykładzie równania różniczkowego, którego rozwiązanie łatwo jest znaleźć za pomocą wzoru. Przykładem może być równanie y = y {\displaystyle y'=y} dla warunków początkowych x 0 = 0 , y 0 = 1 , {\displaystyle x_{0}=0,y_{0}=1,} którego rozwiązaniem jest funkcja y = exp ( x ) . {\displaystyle y=\exp(x).} Zastosowanie metody Eulera dla takiego równania bardzo wyraźnie zależy od kroku h[2].

W rzeczywistości exp ( 4 ) 54,598 2. {\displaystyle \exp(4)\approx 54{,}5982.}

Błąd obliczeń rozwiązania równania różniczkowego metoda Eulera maleje wraz ze zmniejszaniem kroku h, ale rośnie wraz ze wzrostem x x 0 {\displaystyle x-x_{0}} dla każdej wartości h. Generalnie metoda Eulera nie jest efektywna. Błąd jej stosowania jest na ogół duży.

Metoda zmodyfikowana | edytuj kod

Zgodnie z tą metodą, Δ y {\displaystyle \Delta y} obliczamy jako:

Δ y = f ( x n + h 2 , y n + f ( x n , y n ) h 2 ) h . {\displaystyle \Delta y=f\left(x_{n}+{\frac {h}{2}},y_{n}+f(x_{n},y_{n}){\frac {h}{2}}\right)h.}

Metoda ta jest szczególnym przypadkiem metody Rungego-Kutty, znana popularnie jako metoda punktu środkowego (ang. midpoint).

Metoda udoskonalona | edytuj kod

Modyfikacja polega na obliczaniu współczynnika nachylenia stycznej Δ y {\displaystyle \Delta y} za pomocą średniej arytmetycznej:

Δ y = h f ( x n , y n ) + f ( x n + h , y n + f ( x n , y n ) h ) 2 . {\displaystyle \Delta y=h{\frac {f(x_{n},y_{n})+f(x_{n}+h,y_{n}+f(x_{n},y_{n})h)}{2}}.}

Podobnie jak poprzednio, jest to szczególny przypadek metody Rungego-Kutty, znany powszechnie jako Metoda Heuna.

Przypisy | edytuj kod

  1. John C.J.C. Butcher John C.J.C., Numerical Methods for Ordinary Differential Equations, New York: John Wiley & Sons, 2003, ISBN 978-0-471-96758-3 .
  2. Kendall Atkinson: An Introduction to Numerical Analysis. Wyd. 2. Nowy Jork: John Wiley & Sons, 1989. ISBN 978-0-471-50023-0.
Na podstawie artykułu: "Metoda Eulera" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy