using solve when it involve trigonometrics
3 ビュー (過去 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.
3 件のコメント
その他の回答 (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!