how to get minimum positive solution?

1 view (last 30 days)
1/K (sin(u)/u-cos(u))+(2-2cos(u)-usin(u))/L=0, K,L is constant, how to get the minimum positive solution of u?

Accepted Answer

Star Strider
Star Strider on 26 Feb 2014
Edited: Star Strider on 26 Feb 2014
K = 11; L = 13;
scu = @(u) 1/K .* (sin(u)./u-cos(u))+(2-2.*cos(u)-u.*sin(u))/L;
uv = [];
for a = 0.01:10
us = fzero(scu, a);
uv = [uv; us];
end
mps = min(uv(uv > 0)) % Minimum Positive Solution
  2 Comments
huang
huang on 26 Feb 2014
Thanks much, but how to keep K and L in the output?
Star Strider
Star Strider on 26 Feb 2014
My pleasure!
The K and L variables are in the same MATLAB workspace that the function and code share. As long as K and L are defined first, before the equation, and the equation is defined before the call to fzero (as I did here), MATLAB will use them appropriately in the equation.
Note that fzero has some limitations. It requires that the equation provided to it is a function of one variable only. It also only returns real results, and those only close to the initial starting point. (This is the reason I used the for loop in both answers.)

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!