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?

Antworten (2)

Mischa Kim
Mischa Kim am 10 Jan. 2014

0 Stimmen

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

0 Stimmen

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 Kommentare

Mischa Kim
Mischa Kim am 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 am 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 am 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 am 11 Jan. 2014
Bearbeitet: Youssef Khmou am 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 am 11 Jan. 2014
By solutions you mean roots? Here is the function plot:
Youssef  Khmou
Youssef Khmou am 11 Jan. 2014
Bearbeitet: Youssef Khmou am 11 Jan. 2014
alright, infinite number of solutions with period of ~3.1
thanks

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Symbolic Math Toolbox finden Sie in Hilfe-Center und File Exchange

Tags

Gefragt:

am 10 Jan. 2014

Bearbeitet:

am 11 Jan. 2014

Community Treasure Hunt

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

Start Hunting!

Translated by