using solve when it involve trigonometrics
2 次查看(过去 30 天)
显示 更早的评论
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)
采纳的回答
Cam Salzberger
2017-5-15
编辑:Cam Salzberger
2017-5-15
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.
更多回答(1 个)
Steven Lord
2017-5-15
编辑:Steven Lord
2017-5-15
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.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Calculus 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!