Finding Argument of Bessel Function (1st Kind) to Return Known Solution
4 views (last 30 days)
Show older comments
Matlab12345
on 26 Sep 2021
Answered: Sulaymon Eshkabilov
on 26 Sep 2021
I have an equation of the form 0.3005 = J0(2.405x/165) and want to find the value of x (between 0 and 160) that satisfies this equation. How would I go about coding this in Matlab? This is what I have so far.
syms r
ex = 5;
R = 160;
F = (2.405*r)/(R + ex);
Ratio = 0.3005;
q = F == Ratio;
vpasolve(besselj(0,F))
WolframAlpha returns r = 128.15 for this equation, but I can't seem to get this value from Matlab.
0 Comments
Accepted Answer
David Goodmanson
on 26 Sep 2021
Edited: David Goodmanson
on 26 Sep 2021
Hello 1:5,
syms r
ex = 5;
R = 160;
F = besselj(0,(2.405*r)/(R + ex));
Ratio = 0.3005;
q = F == Ratio;
vpasolve(q,r,[0 200])
ans = 128.1492381636410113226607742437
0 Comments
More Answers (1)
Sulaymon Eshkabilov
on 26 Sep 2021
If you set the solution range, then you will get a positive solution, e.g.:
...
Sol = vpasolve(besselj(0,F), r, [0, 165])
0 Comments
See Also
Categories
Find more on Bessel functions 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!