I have the following equation in matlab g1=@(x) tan(exp(x/20)) now I need to run this until I get two consecutive approximations to the root are close enough or divergence is determined. here is how i'm in iterating n=0; a=1; n=n+1; x1(n)=g1(a); a=x1(n); now this does work and I can run it, but i can't make the loop until i know how to find the error between xold and xnew. So my question is how to i make this so the equation is in the form xnew=g(xold)?

 Akzeptierte Antwort

Mischa Kim
Mischa Kim am 20 Sep. 2014
Bearbeitet: Mischa Kim am 20 Sep. 2014

0 Stimmen

Tony, this should get you started:
g = @(x) tan(exp(x/20));
my_tol = 1e-5;
x = 1;
dx = x;
x_iter = x;
while dx > my_tol
x_new = g(x);
dx = abs(x - x_new)
x = x_new;
x_iter = [x_iter x];
end

Weitere Antworten (1)

Tony Montgomery
Tony Montgomery am 20 Sep. 2014

0 Stimmen

Thank you. THANK you. THANK YOU!! I'm not very good at this stuff yet. Thanks for the help I will dry it!!

Kategorien

Mehr zu Programming finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by