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 日

1 投票

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!
Brattv
Brattv 2016 年 2 月 16 日
You are welcome

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

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeResults, Reporting, and Test File Management についてさらに検索

タグ

タグが未入力です。

質問済み:

2016 年 2 月 16 日

コメント済み:

2016 年 2 月 16 日

Community Treasure Hunt

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

Start Hunting!

Translated by