says unused value , consider it by replacing it by~, how do I fix it ?
3 ビュー (過去 30 日間)
古いコメントを表示
in the following loop a message is being displayed for both U and A
"the value assign here to U appears to be unused consider replacing it by ~"
same for 'A'
please help me out . <_>
syms ht U A L
[ht, U, A, L] = solve((ht == kt/di*(3.657 + (0.0677*(Ret*Prt*((di/L).^1.33)).^1/3))/(1+0.1*Prt*(Ret*(di/L)).^0.3)), U == 1/((1/hs)+Rfs+(x(2)/di)*(Rft+(1/ht))), A == Q/(U*F*LMTD), L == A/(pi*x(2)*Nt));
if Ret < 2300
ht = kt/di*(3.657 + (0.0677*(Ret*Prt*((di/L).^1.33).^(1/3)))/(1+0.1*Prt*(Ret*(di/L)).^0.3));
else
if Ret > 2300 && Ret < 10000
ht = kt/di*((1+di/L).^0.67*(ft/8)*(Ret - 1000)*Prt/(1+12.7*((ft/8).^0.5)*((Prt.^(2/3))-1)));
else
if Ret > 10000
ht = 0.027*kt/do*(Ret.^0.8)*(Prt.^(1/3)).*(mewt/mewwt).^0.14;
end
end
end
0 件のコメント
回答 (2 件)
Geoff Hayes
2020 年 4 月 15 日
Abhisekh - the message is just a warning so could be ignored. All it is telling you to do is to replace the U and A with ~ like
syms ht L
[ht, ~, ~, L] = = solve((ht == kt/di*(3.657 + (0.0677*(Ret*Prt*((di/L).^1.33)).^1/3))/(1+0.1*Prt*(Ret*(di/L)).^0.3)), U == 1/((1/hs)+Rfs+(x(2)/di)*(Rft+(1/ht))), A == Q/(U*F*LMTD), L == A/(pi*x(2)*Nt));
If you do that, then there is no need to declare either of these variables.
0 件のコメント
Steven Lord
2020 年 4 月 15 日
Rather than assuming that solve returns the variables in the order you think it does (since you haven't specified the order, it uses symvar to determine the order) I would call solve with one output (I'll call it sol for the rest of this answer.) That one output will be a struct array, and the values for ht, U, A, and L will be stored as sol.ht, sol.U, sol.A, and sol.L regardless of what order symvar lists them. This will also avoid the "unused value" Code Analyzer message, since you'll likely be doing something with the sol variable later in your code.
After doing that, if you want to use some or all of the variables stored in sol without having to prefix them every time with "sol." I'd define the ones that I planned to use as "independent" variables.
% I plan to use ht and L later on so
ht = sol.ht;
L = sol.L;
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Number Theory についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!