How to solve single variable nonlinear trigonometric function?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Jintu K James
le 6 Sep 2021
Commenté : Jintu K James
le 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 commentaires
Réponse acceptée
Abolfazl Chaman Motlagh
le 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 commentaires
Abolfazl Chaman Motlagh
le 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)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Systems of Nonlinear Equations dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!