next up previous contents index
Next: Metoda Runge-Kutta Up: Problem početnog uvjeta (Cauchyjev Previous: Osnovni problem.   Sadržaj   Indeks


Eulerova metoda

Neka je dana diferencijalna jednadžba

$\displaystyle y' = f(x,y),$

na segmentu $ [a,b]$ uz početni uvjet $ y(a)=\alpha.$

Na temelju Taylorovog teorema srednje vrijednosti imamo

$\displaystyle y_{i+1} = y(x_i+h) = y(x_i) + y'(x_i)\,h + \frac{1}{2}\,y''(x_i+t\,h)\,h^2.$ (3.24)

Zanemarimo zadnji član, koji sadrži $ h^2,$ pa dobivamo približnu vrijednost

% latex2html id marker 40201
$\displaystyle y_{i+1} \approx y_i + y'_i\,h.$

Stavimo

$\displaystyle y_{i+1} = y_i + h\,f(x_i,y_i).$

Tako imamo sljedeći algoritam

Algoritam 9   (Eulerova metoda) Izaberemo dovoljno velik prirodni broj $ n.$ Za zadani korak

$\displaystyle h = \frac{b-a}{n}$

računamo niz brojeva $ (y_i)$ po formuli

$\displaystyle y_{i+1} = y_i + h\,f(x_i,y_i),\hspace{1cm}i=0,1,2,\ldots,n-1,$

s tim da je

$\displaystyle x_i = a + i\,h,$

a početna vrijednost $ y_0$ je određena početnim uvjetom.

Mathematica program 6   (Eulerova metoda)
 
f[x_,y_]=; (* upisuje se f(x,y), ako je jednadzba y'=f(x,y) *) 
pocuvj=;   (* pocetni uvjet u obliku {x0,y0} *) 
kraj=;     (* drugi rub segmenta na kojem se trazi rjesenje *) 
n=;        (* broj podsegmenata podjele *) 
h=(kraj-pocuvj[[1]])/n; 
x=pocuvj[[1]]; 
y=pocuvj[[2]]; 
rj={}; 
While[x-h<kraj, 
rj=Append[rj,{x,y}]//N; 
y=y+h f[x,y]; 
x=x+h]; 
rj

Primjer 3.17   Riješiti Eulerovom metodom Cauchyjev problem

$\displaystyle y' = y,\qquad y(0) = 1$

na segmentu $ [0,1],$ dijeleći ga na deset dijelova.

Rješenje. Lako se vidi da je točno rješenje $ e^x.$ U sljedećoj tabeli imamo približna rješenja dobivena Eulerovom metodom i točna rješenja zaokružena na devet decimala.

$ x_i$ $ y_i$ $ e^{x_i}$
0 $ 1.$ $ 1.$
$ 0.1$ $ 1.1 $ $ 1.105170918$
$ 0.2$ $ 1.21 $ $ 1.221402758$
$ 0.3$ $ 1.331 $ $ 1.349858808$
$ 0.4$ $ 1.4641 $ $ 1.491824698$
$ 0.5$ $ 1.61051$ $ 1.648721271$
$ 0.6$ $ 1.77156$ $ 1.8221188$
$ 0.7$ $ 1.94872$ $ 2.013752707$
$ 0.8$ $ 2.14359$ $ 2.225540928$
$ 0.9$ $ 2.35795$ $ 2.459603111$
$ 1.$ $ 2.59374$ $ 2.718281828$
Rezultat se vidi na slici. Puna linija predstavlja graf točnog rješenja $ e^x,$ a crtkana linija spaja nađene točke dijelovima pravaca.
% latex2html id marker 26581
\includegraphics{m3preulmet.eps}

Ova metoda je vrlo jednostavna, ali i vrlo gruba (ocjena pogreške je vrlo gruba) tako da se rijetko kada upotrebljava.


next up previous contents index
Next: Metoda Runge-Kutta Up: Problem početnog uvjeta (Cauchyjev Previous: Osnovni problem.   Sadržaj   Indeks
2001-10-26