How to solve single variable nonlinear trigonometric function?
7 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Jintu K James
el 6 de Sept. de 2021
Comentada: Jintu K James
el 7 de Sept. de 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 comentarios
Respuesta aceptada
Abolfazl Chaman Motlagh
el 6 de Sept. de 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 comentarios
Abolfazl Chaman Motlagh
el 6 de Sept. de 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)
Más respuestas (0)
Ver también
Categorías
Más información sobre Solver Outputs and Iterative Display en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!