using solve when it involve trigonometrics
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hamza Makhamreh
le 15 Mai 2017
Commenté : Hamza Makhamreh
le 15 Mai 2017
Hi , I'm trying to solve this simple equaiton, but matlab giving me this message error. Could you help me? I've tried too many ways but its not working with me. 2*V(1-cos(a)) = E*a Where E=70 and V=170; I tried this: syms a1 E=70; V=170 ; eq=2*V -2*V*cos(a)- E*a==0; a = solve(eq, a)
Réponse acceptée
Cam Salzberger
le 15 Mai 2017
Modifié(e) : Cam Salzberger
le 15 Mai 2017
If you make the corrections as Steven suggested, you'll get:
Warning: Cannot solve symbolically. Returning a numeric approximation instead.
> In solve (line 304)
a =
0
Not all equations can be solved symbolically. If you want to check your answer, here's a good way to do it:
>> eq
eq =
340 - 340*cos(a) - 70*a == 0
fplot(340-340*cos(a)-70*a)
hold on
fplot(0)
If you pan around a bit, you'll notice that there are only about 5 solutions to that equation.
3 commentaires
Plus de réponses (1)
Steven Lord
le 15 Mai 2017
Modifié(e) : Steven Lord
le 15 Mai 2017
You're missing a comma between the end of your syms command and the start of the next command. You also have a typo: you define the symbolic variable a1 then use the variable a in your code.
Voir également
Catégories
En savoir plus sur Calculus 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!