Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 03. 11. 2009 18:56

Fieldy
Příspěvky: 42
Reputace:   
 

Metoda prosté iterace

Cau lidi, nemohl by mi nejak vysvetlit jak na priklad 7.1*(x-1.1)^2-sin(x+1.5)-3.8=O, ktery se resi metodou proste iterace (v matlabu). Za jakokoliv radu predem dik

Offline

 

#2 03. 11. 2009 19:59 — Editoval jelena (03. 11. 2009 20:48)

jelena
Jelena
Místo: Opava
Příspěvky: 30020
Škola: MITHT (abs. 1986)
Pozice: plním požadavky ostatních
Reputace:   100 
 

Re: Metoda prosté iterace

↑ Fieldy:

Zdravím,

zkus projit toto téma, teorie: http://homel.vsb.cz/~kuc14/textyNM/kap2.pdf (kapitola 2.4). Co konkrétně máš zadávat do matlab, nevím (neovládám) - pravděpodobně iterační zápis funkce: 

původní funkce: $7.1(x-1.1)^2-\sin(x+1.5)-3.8=0$

iterační zápis:

$x=\sqrt{\frac{\sin(x+1.5)+3.8}{7.1}}+1.1$ nebo

$x=\mathrm{arcsin}\(7.1(x-1.1)^2-3.8\)-1.5$

ručně by bylo potřeba provést odhad intervalu, kde se nachází kořen, třeba graficky: $7.1(x-1.1)^2=\sin(x+1.5)+3.8$, asi to zadaš stroji, at to odhadne.

zvolit iterační krok a ověřit, který zápis iteračního zápisu povede ke konvergenci.

Ale opravdu, se samotným programem - doufám, že se zapojí někdo z kolegů. Stačí tak pro začátek?

Offline

 

#3 03. 11. 2009 20:16

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ jelena: jj v tom matlabu uz vim jak na to, priblizne koreny ziskam z grafu vykreslenyho v matlabu, jen jsem si nebyl jisty tim iteracnim zapisem....jinak pro zacatek urcite staci, dekuji moc. Jdu to hned zkusit, pac ja ty koreny mam spocitany v jinych metodach, takze pokud to vyjde priblizne na setiny stejne, tak je to dobre.

Offline

 

#4 03. 11. 2009 20:41

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

Takže jsem dospěl k názoru, že asi stejně budu potřebovat radu odborníka, jelikož mi ty kořeny vychází podle grafu uplně vedle

Offline

 

#5 03. 11. 2009 20:47

jelena
Jelena
Místo: Opava
Příspěvky: 30020
Škola: MITHT (abs. 1986)
Pozice: plním požadavky ostatních
Reputace:   100 
 

Re: Metoda prosté iterace

↑ Fieldy:

Odhad kořenu podle grafu je v intervalu od 1,8 do 1,9 - je to tak?

Offline

 

#6 03. 11. 2009 20:51

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ jelena: jj jsou dva (0.2,0.3) a (1.8,1.9) my to máme počítat pro největší kladný kořen, takže pro interval (1.8,1.9)

Offline

 

#7 03. 11. 2009 21:04

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

↑ Fieldy: hod sem ted kod, ktery to pocita
↑ jelena: zdravim po dlouhe dobe!

Offline

 

#8 03. 11. 2009 21:26

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ plisna: co myslis tim kodem ?

Offline

 

#9 03. 11. 2009 21:33

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

↑ Fieldy: no prece ten kod pro matlab. nebo uz ti to beha tak, jak ma?

Offline

 

#10 03. 11. 2009 22:02

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

Takze funkce je dana nahore, my potrebujem iteracni tvar, tedy pokud to chapu spravne, pak v matlabu valim:
- x0=1.8
- x1=asin(7.1*(x0-1.1)^2-3.8)-1.5,chyba=abs(x0-x1) ..... to je ten iteracni tvar, vysledek by mel byt priblizny koren s urcitou chybou, ale vychazi to  nejak spatne
Pocitame to pro interval (1.8,1.9)
Kdyby vysla chyba kolem 0,xx neco, tak se to dal doladuje podobnym postupem, ale nevychazi to ani priblizne

Offline

 

#11 03. 11. 2009 22:29

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

↑ Fieldy: pouzij vzorec $x=\sqrt{\frac{\sin(x+1.5)+3.8}{7.1}}+1.1$. pro 10 iteraci je chyba radu $10^{-11}$. pouziti vztahu $x=\mathrm{arcsin}\(7.1(x-1.1)^2-3.8\)-1.5$ s poc. aproximaci selze, protoze argument arkussinu vyskoci z intervalu <-1,1> a zacne davat jako vysledky komplexni cisla.

Offline

 

#12 03. 11. 2009 22:40

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ plisna: jj v te ukazce jsem to psal s asin, ale s tim to nevyjde, to uz jsem pokoumal, pocitam to s tim druhym vyjadrenim, ale koren stejne nevyjde ani v tom intervalu, ve kterem by mel vyjit

Offline

 

#13 03. 11. 2009 22:45

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

dej sem cely matlabovsky kod, kterym to pocitas. me to pocita koren x = 1.8147991...

Offline

 

#14 03. 11. 2009 22:50

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ plisna: tak by to melo vyjit, pocital jsem to i dalsima metodama, sakris neco tam davam spatne

>> x=1.8;
>> x1=((sin(x+1.5)+3.8)./7.1).^0.5,chyba=abs(x1-x),x=x1;

pokud by ta chyba vysla mensi nez je pozadovana, tak opakujem druhy radek, ale nevychazi to vubec, tak nevim

Offline

 

#15 03. 11. 2009 22:53

jelena
Jelena
Místo: Opava
Příspěvky: 30020
Škola: MITHT (abs. 1986)
Pozice: plním požadavky ostatních
Reputace:   100 
 

Re: Metoda prosté iterace

↑ Fieldy:

kde je +1,1 na závěr zápisu?

↑ plisna: velký pozdrav :-)

Offline

 

#16 03. 11. 2009 22:57

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

↑ Fieldy: a kde je ta odmocnina?

↑ jelena: rovnez i tobe velke pozdraveni!

Offline

 

#17 03. 11. 2009 22:59

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

aajjj, no tak uz jsme u toho. Ja uz ted na vecer asi nemyslim, jeste to tu mam napsane od vas cerne na bilem. Uz to vyslo, dikes moc obema

Offline

 

#18 03. 11. 2009 23:03

plisna
Místo: Brno
Příspěvky: 1503
Reputace:   
 

Re: Metoda prosté iterace

↑ Fieldy: ok, jen pro uplnost pridavam svuj kod.

Code:

function [] = iterace(eps)

x0 = 1.8;

do  
  x1 = sqrt((sin(x0 + 1.5) + 3.8)/7.1) + 1.1;
  chyba = abs(x0-x1);
  x0 = x1;
until (chyba < eps)

disp(x1);
disp(chyba);

endfunction

Offline

 

#19 03. 11. 2009 23:05

Fieldy
Příspěvky: 42
Reputace:   
 

Re: Metoda prosté iterace

↑ plisna: jj diky moc jeste jednou

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson