- k shall be a symbol, once you do this before it is used, then this will take care of the dependency of delta and theta.
Solve equation including parameters dependent on main variable
13 ビュー (過去 30 日間)
古いコメントを表示
% Temperature
T_C=300;
T_E=linspace(0,300);
tau=T_C./T_E;
% Phase angle
alpha=deg2rad(90);
% Dead-volume ratio
X=0;
% Heat lifted
Q_max=0.085377;
Analysis
% Reduced dead volume
S=(2*X*tau)./(tau+1);
% Heat lifted and Work done
A=sqrt(tau.^2 + k^2 + 2*tau*k*cos(alpha));
B=tau + k + 2*S;
delta=A./B;
theta=(atan((k*sin(alpha))./(tau + k*cos(alpha))));
For range of values of tau, I want to have 'k'. But the problem is there are variables in Q_max equation such as delta and theta which are dependant on k by themselves. What should I do?
ratio=solve('Q_max==(pi*sqrt(1-delta).*delta.*sin(theta))./((1+k).*sqrt(1+delta).*(1+sqrt(1-delta.^2)))','k');
0 件のコメント
回答 (1 件)
Yongjian Feng
2022 年 1 月 21 日
編集済み: Yongjian Feng
2022 年 1 月 21 日
syms k;
2. solve takes function and symbol(s), not char array
ratio=solve(Q_max==(pi*sqrt(1-delta).*delta.*sin(theta))./((1+k).*sqrt(1+delta).*(1+sqrt(1-delta.^2))), k);
3. There are some issues of your script, for example, T_E starts with 0, so tau = T_C/T_E is infinity. You might need to clean those up.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Calculus についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!