exp(-x) - sinx = 0
Show older comments
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?
Answers (2)
Mischa Kim
on 10 Jan 2014
0 votes
reza
on 10 Jan 2014
0 votes
6 Comments
Mischa Kim
on 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
on 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
on 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
on 11 Jan 2014
Edited: Youssef Khmou
on 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
on 11 Jan 2014
By solutions you mean roots? Here is the function plot:

Youssef Khmou
on 11 Jan 2014
Edited: Youssef Khmou
on 11 Jan 2014
alright, infinite number of solutions with period of ~3.1
thanks
Categories
Find more on Symbolic Math Toolbox in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!