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:
Deskribapen geometrikoa
[aldatu | aldatu iturburu kodea]Helburua eta bere eraginkortasunaren arrazoia
[aldatu | aldatu iturburu kodea]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 moduan izendatzen dena (ikusi 1. grafikoa). Ekuazio diferentzialetik lortu daiteke kurbaren malda puntuan, eta beraz, zuzen ukitzilea.
Pauso edo urrats txiki bat eman behar da zuzen ukitzilean zehar punturartea. Pauso txiki honetan zehar malda ez da gehiegi aldatzen, beraz ezagutzen ez dugun grafikaren antzekoa izango da. Orduan suposatzen dugu kurbaren gainean dagoela, eta rako egindako prozedura berdina jarraituko dugu. Zenbait pauso ostean, polilerro bat () 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)
[aldatu | aldatu iturburu kodea]Ekuazio diferentzialak, 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, balioa soluzioaren aldaketatzat hartzen du, alegia, aldagaiaren aldaketa unitarioak aldagaiari aldaketa eragiten diola suposatzen du. Ondorioz, hasierako balioa ezagutuz, hau da, aldagaiaren balioarentzat aldagaiak balioa hartzen duela jakinaz, aldagaiari aldaketa eragiten badiogu aldagaiak jasango duen aldaketa izango dela suposatzean oinarritzen da metodoa. Suposizio horretan oinarrituz aldagaiak balioa duenean aldagaiak balioa hartuko luke. Jakina, txikia bada errorea ere txikia izango da, baina handia bada metodoak emango duen soluzioa benetako soluziotik urrundu egingo da.
Metodoaren azalpena (II)
[aldatu | aldatu iturburu kodea]Gure problemaren soluzioa balitz, hasierako balioa kontuan hartuz, izango litzateke, eta ekuazio diferentzialak adieraziko luke. Hori kontuan hartuz, funtzioaren Taylor seriea honako adirazpen hau litzateke:
Taylor-en serieko lehenengo osagai biak hartzen baditugu Eulerren hurbilketa lortuko dugu, alegia:
Taylorren metodoa erbaili daiteke Eulerren metodoarekin egindako akatsak aztertzeko, eta hedatu daiteke Runge-Kutta metodoak eraikitzeko.
Metodoaren urratsak
[aldatu | aldatu iturburu kodea]Metodoak soluziotik abiatuta zenbakizko soluzioak ematen ditu. Horretarako balioak hartzen ditu, eta balioak kalkulatzen ditu. Urrats bakoitzean aurreko urratseko balioak erabiltzen ditu zenbakizko soluzioak kalkulatzeko.
Adibidea
[aldatu | aldatu iturburu kodea]Hasieran dakizkigun datuak:
Lortu behat dugu ren hurbilketa bat Eulerren metodoa erabiliz.
Urratsaren tamaina 1 hartuta ()
[aldatu | aldatu iturburu kodea]Eulerren metodoa aplikatu
Hau da, lehenik eta behin kalkulatu behar dugu . Ekuazio diferentzial honetan funtzioa definitzen da moduan.
lortzen dugu.
Aurreko pausoa egiterakoan, lortzen dugu puntuko zuzen ukitzailearen. Gogoratu malda definitzen dela ( ren aldaketa)ren eta ( ren aldaketa) ren zatiketa moduan, hau da .
Ondoren, maldaren balioa biderkatu behar da urratsaren taminarekin , kasu honetan dena:
Urratsaren tamaina ( ren aldaketa) denez, urratsa eta zuzen ukitzailearen malda biderkatzean ( ren aldaketa) lortuko dugu. Emaitza hau batu behar da hasierako ren balioari lortzeko hurrengo balioa erabiliko duguna kalkuluak egiteko:
Prozedura berdina erabili behar da , eta lortzeko.
Prozedura edo algoritmo hau oso errepikakorra denez, kalkuluak erraztu eta akatsak sahiestu ditzake emaitzak taula batean adieraztea.
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 dela. Kurbaren ekuazioa kasu honetan eta da. Argi dago Eulerren bidez egindako hurbilketa ez dela batere zehatza aukeratutako urratsa handiegia delako. Hala ere, gure kalkuluen izaera egokiak ziren 2. Grafikoan ikusi daitekeen moduan.
Beste urrats tamainak erabiliz
[aldatu | aldatu iturburu kodea]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 kasua adierazten du, eta bigarrena 3. Grafikoan adierazita dago.
Urratsa | 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 eta Eulerren bidezko hurbilketaren arteako aldea da 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 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