I have some expressions, I dont know the different between using function 'subs' and calculating directly. My purpose is calculate nuy, by substitute the varience 'rch' into 'atan(f./(2*pi*x))' .
When I use 'subs' function, it results the error, division by zero.
But when I calculate directly, there are not error, and I obtained the result? Could anyone explain me about this?
>> syms x
>> nuy = atan(f./(2*pi*x));
>> rch = 0:0.001:0.3603;
>> subs(nuy,x,rch);
Error using symengine Division by zero.
Error in sym/subs>mupadsubs (line 140) G = mupadmex('symobj::fullsubs',F.s,X2,Y2);
Error in sym/subs (line 125) G = mupadsubs(F,X,Y);
nuy = atan(f./(2*pi*rch));

 採用された回答

Stephen23
Stephen23 2017 年 3 月 23 日
編集済み: Stephen23 2017 年 3 月 23 日

1 投票

If you are using R2013A or newer then use atan2 instead:
>> syms x
>> nuy = atan2(f,2*pi*x);
>> rch = 0:0.001:0.3603;
>> subs(nuy,x,rch)

4 件のコメント

duong mai
duong mai 2017 年 3 月 23 日
Ah, my f equals to 0.02, it is not a function. that is ' 0.02/(2*pi*x) '. I mean why it does not happen error when i calculate directly?
Stephen23
Stephen23 2017 年 3 月 23 日
編集済み: Stephen23 2017 年 3 月 23 日
>> f = 0.02;
>> syms x
>> nuy = atan(f./(2*pi*x));
>> rch = 0:0.001:0.3603;
>> subs(nuy,x,rch)
ans =
1.5708 1.2664 1.0098 0.815 0.67216 0.56691 0.48776 etc
duong mai
duong mai 2017 年 3 月 23 日
編集済み: duong mai 2017 年 3 月 23 日
There appears error. My screen does not look like yours. Why?
Stephen23
Stephen23 2017 年 3 月 23 日
編集済み: Stephen23 2017 年 3 月 23 日

サインインしてコメントする。

その他の回答 (0 件)

タグ

質問済み:

2017 年 3 月 23 日

編集済み:

2017 年 3 月 23 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by