Weird result with simple code.

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,'-')

 Accepted Answer

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 Comments

Yes!!! Oh, it's a really simple mistake lol Thank you so much!
You are welcome

Sign in to comment.

More Answers (0)

Categories

Tags

No tags entered yet.

Asked:

on 16 Feb 2016

Commented:

on 16 Feb 2016

Community Treasure Hunt

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

Start Hunting!