Calculating values of a dependent variable at a using a range of independent variables

7 ビュー (過去 30 日間)
Hi,
I'm new to matlab so this might be very simple but....
I have this equation;
Eff=((Cv.*Temp.*(1-Vr))+(((2.*l.*S.*S)./(n.*n))*((Vi./(pi.*Rb.*Rb))-l))+(M./(R.*Temp))+((Vr^(1-k)).*(R.*Temp./M)))/((Cv.*Temp)+((R.*Temp)./M)+(((S.*Vi)./(sqrt(2).*n.*pi.*Rb.*Rb))^2))
All of the variables are constants except Eff and Temp. I would like to calculate values of Eff using Temp between a range of 373 and 623 so that I can plot a graph to investigate the effect of Temp on Eff.
Any Advice would be greatly appreciated

採用された回答

Chad Greene
Chad Greene 2021 年 3 月 10 日
Welcome to the world of Matlab, Tom.
Indeed, I think this is pretty straightforward. To make a range of values of Temp between 373 and 623, do
Temp = 373:623;
Alternatively, to do the same thing but in steps of 0.1, do
Temp = 373:0.1:623;
Then calculate Eff by
Eff=((Cv.*Temp.*(1-Vr))+(((2.*l.*S.*S)./(n.*n))*((Vi./(pi.*Rb.*Rb))-l))+(M./(R.*Temp))+((Vr^(1-k)).*(R.*Temp./M)))/((Cv.*Temp)+((R.*Temp)./M)+(((S.*Vi)./(sqrt(2).*n.*pi.*Rb.*Rb))^2));
and plot the results like this:
plot(Temp,Eff)
  4 件のコメント
Chad Greene
Chad Greene 2021 年 3 月 10 日
Ahh, try this. It looks like a few dot operators were missing. My go-to solution when things are acting funny with multiplication, division, or exponents, is to put a dot in front of each one. That seems to have fixed it.
Eff=((Cv.*Temp.*(1-Vr))+(((2.*l.*S.*S)./(n.*n)).*((Vi./(pi.*Rb.*Rb))-l))+(M./(R.*Temp))+((Vr.^(1-k)).*(R.*Temp./M)))./((Cv.*Temp)+((R.*Temp)./M)+(((S.*Vi)./(sqrt(2).*n.*pi.*Rb.*Rb)).^2));
Tom Morris
Tom Morris 2021 年 3 月 10 日
That's got it! Thank you so much for your help, I was going a bit crazy there.

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

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMathematics についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by