Weird result with simple code.

1 次查看(过去 30 天)
I want to plot two simple curves on a same graph, but one of the calculations doesn't mach up to my expectation (please see the code).
The SMF is calculated correctly, but for SCF the MATLAB gives a constant value, 0.6841. However, SCF should be 1 where Vf = 0, and as Vf approaches to 1.0 the SCF should get lower value, so it's very weird why Matlab doesn't give me the accurate value.
Do I make any mistakes in the code?
Thanks!
Vf = [0:0.1:1];
SCF = (1-1.072*sqrt(Vf))/(1-0.95*Vf)
SMF = 1-1.072*sqrt(Vf)
plot(Vf,SCF,'o',Vf,SMF,'-')

采纳的回答

Brattv
Brattv 2016-2-16
I think the problem is the way you divide in SCF. Try to use ./ (see the dot) when dividing two vectors.
Vf = [0:0.1:1];
SCF = (1-1.072*sqrt(Vf))./(1-0.95*Vf)
SMF = 1-1.072*sqrt(Vf)
plot(Vf,SCF,'o',Vf,SMF,'-')
Was that what you were looking for?
  2 个评论
Yusuke Nakamura
Yusuke Nakamura 2016-2-16
Yes!!! Oh, it's a really simple mistake lol Thank you so much!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Support Package for USB Webcams 的更多信息

标签

尚未输入任何标签。

Community Treasure Hunt

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

Start Hunting!

Translated by