How to solve single variable nonlinear trigonometric function?
2 views (last 30 days)
Show older comments
Jintu K James
on 6 Sep 2021
Commented: Jintu K James
on 7 Sep 2021
I am trying to solve a non linear equation as given below.

I am expecting β2 to be between 35 and 50 degrees. All angles are in degrees.
I tried using
and using functions. But the reults were not in that range . How to solve this issure.

Thanks in advance.
0 Comments
Accepted Answer
Abolfazl Chaman Motlagh
on 6 Sep 2021
maybe you forgot to use "d" in trigonometric functions.
quick answer without optimizing the code:
m = 0.7:0.01:1 ;
b1 = 34.65 ;
theta = 16;
syms b;
f =@(b,m) m - (1-(tand(b-b1).*sind(theta))./(sind(b1).*sind(b-theta))).^2;
for i=1:numel(m)
B(i) = vpasolve(f(b,m(i)) == 0, b);
end
min(B)
max(B)
plot(B)
2 Comments
Abolfazl Chaman Motlagh
on 6 Sep 2021
or use fsolve with initial guess:
m = 0.7:0.01:1 ;
b1 = 34.65;
theta = 16;
f =@(b) m - (1-(tand(b-b1).*sind(theta))./(sind(b1).*sind(b-theta))).^2;
B = fsolve(f , 40*ones(1,31));
min(B)
max(B)
plot(B)
More Answers (0)
See Also
Categories
Find more on Systems of Nonlinear 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!