Could someone please explain...

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
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 个评论

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?
>> 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?

请先登录,再进行评论。

更多回答(0 个)

标签

Community Treasure Hunt

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

Start Hunting!

Translated by