hi, i'm planning to reach the root of this function:
exp(-x) - sinx = 0;
here is my code:
------------------------------
x0 = input('please enter x0 ::: ');
eps = input('please enter steps ::: ');
% eps is the step
iterator = 0;
for i=0:eps:x0
x=x+exp(-x) - sin(x);
iterator = iteratio + 1;
end
disp('root ::: '); disp(x);
disp('iterate count ::: '); disp(iterator);
------------------------------
well i can't make it work. can you help me with that?

Réponses (2)

Mischa Kim
Mischa Kim le 10 Jan 2014

0 votes

Try the fzero function. Unless, of course, you would like to do it on your own.
reza
reza le 10 Jan 2014

0 votes

Now it's working,
x0 = input('please enter x0 ::: '); eps = input('please enter steps ::: '); iterator = 0; x=0; iterator = 0; for i=0:eps:x0 x=x+exp(-x) - sin(x); iterator = iterator + 1; end disp('root ::: '); disp(x); disp('iterate count ::: '); disp(iterator);
thanks to all.

6 commentaires

Mischa Kim
Mischa Kim le 11 Jan 2014
Just want to make sure you are getting the results you are looking for. What root-finding method are you using? For those kind of problems I'd recommend Newton-Raphson (if you prefer coding yourself). Also note that this function has an infinte number of roots. Here are two of them:
r1 = fzero(@(x) exp(-x) - sin(x), 0)
r1 =
0.5885
r2 = fzero(@(x) exp(-x) - sin(x), 2)
r2 =
3.0964
Youssef  Khmou
Youssef Khmou le 11 Jan 2014
that is good remark, so how, for example, we find the period of the solutions using only fzero as you illustrated above?
Mischa Kim
Mischa Kim le 11 Jan 2014
Not sure I understand what you are asking. If it's about finding more than just a handful of roots, you could use a for -loop. For positive x-values the function (and therefore the roots) is dominated by the sine-term, which allows you to get pretty accurate starting values for the searches.
Youssef  Khmou
Youssef Khmou le 11 Jan 2014
Modifié(e) : Youssef Khmou le 11 Jan 2014
yes, here is the result :
ct=1;
for n=0:100
F(ct)=fzero(@(x) exp(-x)-sin(x),n);
ct=ct+1;
end
stem(F)
can we conclude that there re 4 solutions?
Mischa Kim
Mischa Kim le 11 Jan 2014
By solutions you mean roots? Here is the function plot:
Youssef  Khmou
Youssef Khmou le 11 Jan 2014
Modifié(e) : Youssef Khmou le 11 Jan 2014
alright, infinite number of solutions with period of ~3.1
thanks

Connectez-vous pour commenter.

Catégories

En savoir plus sur Symbolic Math Toolbox dans Centre d'aide et File Exchange

Tags

Question posée :

le 10 Jan 2014

Modifié(e) :

le 11 Jan 2014

Community Treasure Hunt

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

Start Hunting!

Translated by