# Eulerren metodo

Matematika eta konputazio arloetan, Eulerren metodo izenez ezagutzen den prozedura hasierako balio ezaguna duen ekuazio diferentzialak ebazteko erabiltzen den zenbakizko integrazioko metodoa da. Leonhard Eulerren omenez dauka izena, lehenengo aldiz bere Institutiones calculi integralis liburuan proposatu zuelako (1768–1870 argitaratua). Hasierako balioa ezaguna denean, eta ezagutza horretan oinarrituz, metodo honek inguruko puntuetako soluzioen hurbilketak lortzen ditu.
Errore lokala (urrats bakoitzeko errorea) proportzionala da urratsaren tamainaren karratuarekin, eta errore globala proportzionala da urratsaren tamainarekin.
Zenbakizko metodoen arteko sinpleena da Eulerren metodoa eta Hasierako Balioko Problemak ebazteko erabiltzen da:
    $HBP=\left\{{\begin{array}{rcl}{\frac {dy}{dx}}&=&f(x,y)\\y(x_{0})&=&y_{0}\\y(x_{i})&=&?\end{array}}\right.$

## Deskribapen geometrikoa
### Helburua eta bere eraginkortasunaren arrazoia

Buruketa moduan pentsatu ezezagunaren kurba baten forma kalkulatu behar duzula, kurbaren hasierako puntua eta betetzen duen ekuazio diferentziala ezagutuz. Orduan, ekuazio diferentzial hori hartu daiteke kalkulatzeko kurbaren zuzen ukitzailearen malda kurbaren edozein puntutan, behin puntu horren koordenatuak dakizkigu.
Ideia da, nahiz eta grafika ez dugun ezagitzen hasiera batean, hasierako puntua $A_{0}$ moduan izendatzen dena (ikusi 1. grafikoa). Ekuazio diferentzialetik lortu daiteke kurbaren malda $A_{0}$ puntuan, eta beraz, zuzen ukitzilea.
Pauso edo urrats txiki bat eman behar da zuzen ukitzilean zehar $A_{1}$ punturartea. Pauso txiki honetan zehar malda ez da gehiegi aldatzen, beraz ezagutzen ez dugun grafikaren antzekoa izango da. Orduan suposatzen dugu $A_{1}$ kurbaren gainean dagoela, eta $A_{0}$rako egindako prozedura berdina jarraituko dugu. Zenbait pauso ostean, polilerro bat ($A_{0}A_{1}A_{2}A_{3}...$) lortuko dugu; normalean polierro hau gure kurba originalaren oso antzeoa izango da, eta hauen arteko aldea minimizatu dezakegu pausoren tamaina behar bezain txikia bada.

## Metodoaren azalpena (I)

Ekuazio diferentzialak, ${\frac {dy}{dx}}=f(x,y)$ ekuazioak, problemaren aldaketa nolakoa den adierazten du, ondorioz, puntu jakin batean soluzioak egiten duen kurbaren aldaketa ezagutzeko bidea eskaintzen digu. Eulerren metodoak hasierako balioan oinarrituz, $f(x_{0},y_{0})$ balioa soluzioaren aldaketatzat hartzen du, alegia, $x$ aldagaiaren aldaketa unitarioak $y$ aldagaiari $f(x_{0},y_{0})$ aldaketa eragiten diola suposatzen du. Ondorioz, hasierako balioa ezagutuz, hau da, $x$ aldagaiaren $x_{0}$ balioarentzat $y$ aldagaiak $y_{0}$ balioa hartzen duela jakinaz, $x$ aldagaiari $h$ aldaketa eragiten badiogu $y$ aldagaiak jasango duen aldaketa $h*f(x_{0},y_{0})$ izango dela suposatzean oinarritzen da metodoa. Suposizio horretan oinarrituz $x$ aldagaiak $x_{0}+h$ balioa duenean $y$ aldagaiak $y_{0}+h*f(x_{0},y_{0})$ balioa hartuko luke. Jakina, $h$ txikia bada errorea ere txikia izango da, baina $h$ handia bada metodoak emango duen soluzioa benetako soluziotik urrundu egingo da.

## Metodoaren azalpena (II)

Gure problemaren soluzioa $y=y(x)$ balitz, hasierako balioa kontuan hartuz, $y_{0}=y(x_{0})$ izango litzateke, eta ekuazio diferentzialak $y'(x_{0})=f(x_{0},y_{0})$ adieraziko luke. Hori kontuan hartuz, $y(x_{0}+h)$ funtzioaren Taylor seriea honako adirazpen hau litzateke:
$y(x_{0}+h)=y(x_{0})+h*y'(x_{0})+{\frac {h^{2}}{2}}*y''(x_{0})+...$
Taylor-en serieko lehenengo osagai biak hartzen baditugu Eulerren hurbilketa lortuko dugu, alegia:
$y(x_{0}+h)=y(x_{1})\sim y_{1}=y_{0}+h*f(x_{0},y_{0})$
Taylorren metodoa erbaili daiteke Eulerren metodoarekin egindako akatsak aztertzeko, eta hedatu daiteke Runge-Kutta metodoak eraikitzeko.

## Metodoaren urratsak

Metodoak $x_{0},y_{0}$ soluziotik abiatuta $x_{i},y_{i}$ zenbakizko soluzioak ematen ditu. Horretarako $x_{i}=x_{i-1}+h=x_{0}+i*h$ balioak hartzen ditu, eta $y_{i}=y_{i-1}+h*f(x_{i-1},y_{i-1})$ balioak kalkulatzen ditu. Urrats bakoitzean aurreko urratseko balioak erabiltzen ditu zenbakizko soluzioak kalkulatzeko.

## Adibidea

Hasieran dakizkigun datuak:
$y'=y$ $y(0)=1$
Lortu behat dugu $y(4)$ren hurbilketa bat Eulerren metodoa erabiliz.

### Urratsaren tamaina 1 hartuta ($h=1$)

Eulerren metodoa aplikatu
$y_{n+1}=y_{n}+hf(t_{n},y_{n})$
Hau da, lehenik eta behin kalkulatu behar dugu $f(t_{0},y_{0})$. Ekuazio diferentzial honetan $f$ funtzioa definitzen da $f(t,y)=y$ moduan.
$f(t_{0},y_{0})=f(0,1)=1$ lortzen dugu.
Aurreko pausoa egiterakoan, lortzen dugu $(0,1)$ puntuko zuzen ukitzailearen. Gogoratu malda definitzen dela $\Delta y$ ($y$ ren aldaketa)ren eta $\Delta t$ ($t$ ren aldaketa) ren zatiketa moduan, hau da ${\frac {\Delta y}{\Delta t}}$.
Ondoren, maldaren balioa biderkatu behar da urratsaren taminarekin $h$, kasu honetan $1$ dena:
$h\cdot f(y_{0})=1\cdot 1=1.$
Urratsaren tamaina $\Delta t$ ($t$ ren aldaketa) denez, urratsa eta zuzen ukitzailearen malda biderkatzean $\Delta y$ ($y$ ren aldaketa) lortuko dugu. Emaitza hau batu behar da hasierako $y$ ren balioari lortzeko hurrengo balioa erabiliko duguna kalkuluak egiteko:
$y_{0}+hf(y_{0})=y_{1}=1+1\cdot 1=2$
Prozedura berdina erabili behar da $y_{2}$, $y_{3}$ eta $y_{4}$ lortzeko.
${\begin{aligned}y_{2}&=y_{1}+hf(y_{1})=2+1\cdot 2=4,\\y_{3}&=y_{2}+hf(y_{2})=4+1\cdot 4=8,\\y_{4}&=y_{3}+hf(y_{3})=8+1\cdot 8=16.\end{aligned}}$
Prozedura edo algoritmo hau oso errepikakorra denez, kalkuluak erraztu eta akatsak sahiestu ditzake emaitzak taula batean adieraztea.
| $n$ | $y_{n}$ | $t_{n}$ | $f(t_{n},y_{n})$ | $h$ | $\Delta y$ | $y_{n+1}$ |
| 0 | 1 | 0 | 1 | 1 | 1 | 2 |
| 1 | 2 | 1 | 2 | 1 | 2 | 4 |
| 2 | 4 | 2 | 4 | 1 | 4 | 8 |
| 3 | 8 | 3 | 8 | 1 | 8 | 16 |
Ondorioztatzen dugu $y_{4}=16$ dela. Kurbaren ekuazioa kasu honetan $y(t)=e^{t}$ eta $y(4)=e^{4}\approx 54.589$ da. Argi dago Eulerren bidez egindako hurbilketa ez dela batere zehatza aukeratutako $h$ urratsa handiegia delako. Hala ere, gure kalkuluen izaera egokiak ziren 2. Grafikoan ikusi daitekeen moduan.

### Beste urrats tamainak erabiliz

Hasieran adierazi den moduan, Eulerren metodoa zehatzagoa da geroz eta urrats txikiagoa erabiltzen denean. Azpiko taulak erakusten ditu urrats desberdinak erabiliz lortzen diren emaitza desberdinak. Lehenengo lerroa aurreko $h=1$ kasua adierazten du, eta bigarrena 3. Grafikoan adierazita dago.
| Urratsa | $y(4)$ Eulerren metodoaren bidez | Aldea edo errorea |
| 1 | 16.00 | 38.60 |
| 0.25 | 35.53 | 19.07 |
| 0.1 | 45.26 | 9.34 |
| 0.05 | 49.56 | 5.04 |
| 0.025 | 51.98 | 2.62 |
| 0.0125 | 53.26 | 1.34 |
Azkeneko zutabearen errorea $e^{4}$ eta Eulerren bidezko hurbilketaren arteako aldea da $t=4$ denean. Lerro bakoitzean, urratsa aurrekoaren erdia da eta errorea, gutxi gora behera, aurrekoare erdia da baita ere. Beraz, ikusi daiteke, gutxienez urrats tamaina txikientzat errorea proportzionala dela erroarekin. In the bottom of the table, the step size is half the step size in the previous row, and the error is also approximately half the error in the previous row.
Taula hau estrapolatzen badugu, 3 hamartarretara zuzena den emaitza lortzeko $h=0.00001$ hartu beharko genuke eta beraz, prozedura 400,000 aldiz errepikatu. Honek esan nahi du algoritmo hau nahiko garestia da konputazionalki, eta horregatik beste metodo batzu erabiltzen dira, adibidez, Runge–Kutt metodoak, batez ere, zehaztasun handia bilatzen denean

## Kanpo estekak

* Datuak: Q868454
* Multimedia: Euler method / Q868454