need help finding convergence

4 次查看(过去 30 天)
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)?

采纳的回答

Mischa Kim
Mischa Kim 2014-9-20
编辑:Mischa Kim 2014-9-20
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

更多回答(1 个)

Tony Montgomery
Tony Montgomery 2014-9-20
Thank you. THANK you. THANK YOU!! I'm not very good at this stuff yet. Thanks for the help I will dry it!!

类别

Help CenterFile Exchange 中查找有关 Mathematics and Optimization 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by