How can I get all possible solutions for an equation?
5 views (last 30 days)
Show older comments
payman khayree
on 26 Aug 2014
Commented: payman khayree
on 3 Sep 2014
I need to get all possible solutions for this equation:
sin(x)/x == a
for "0.2 < a < 1", it has 3 to 5 solutions but matlab functions such as "solve" and "vpasolve" only return the first solution they find. How can I get all the answers? should I use another function?
thank you all payman
0 Comments
Accepted Answer
Greg Heath
on 27 Aug 2014
Some or all of the solutions can probably be obtained via recursion.
Given a, b=1/a and x(1), try
x(n+1) = arcsin(a*x(n))
and
x(n+1) = b*sin(x(n))
Simultaneously plotting y1= a*x and y2 = sin(x) for 0.2 <= a <= 1 will yield insight.
Hope this helps.
Thank you for formally accepting my answer
Greg
More Answers (1)
John D'Errico
on 26 Aug 2014
All possible solutions is in general an impossible thing for a completely general function, since there may be infinitely many such solutions.
If you know there are a finite number of solutions, and can bound them, then just sample your function on a fine enough interval, and use fzero over brackets generated by the sampling. WTP?
0 Comments
See Also
Categories
Find more on Ordinary Differential Equations 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!