Error Using Solve Function

1 回表示 (過去 30 日間)
Brian Robinson
Brian Robinson 2020 年 4 月 30 日
コメント済み: darova 2020 年 5 月 1 日
Hello there,
I'm getting an error using the solve function. What is the reason for this and how do we correct it? See below.
Q = 5; s_0 = 0.005; n = 0.02; L = 35; k_e = 0.5; C_D = 0.65; H = 4; g = 9.81;
syms D deltaH
A = pi*D^2/4;
V = Q/A;
R_H = D/4;
eqn1 = deltaH == H - D + L*s_0;
eqn2 = deltaH == (k_e + 2*g*n^2*L/R_H^(4/3) + 1)*(Q^2/(2*g*A^2));
deltaH = double(solve(eqn1 == eqn2, D,"Real",true))
Thanks very much,
Brian
  7 件のコメント
Brian Robinson
Brian Robinson 2020 年 5 月 1 日
When I try it I get deltaH = 10 and D = 4.138. Which is the same answer as I got with no parameter.
Regardless, I want to get the other solution which is 1 < D < 2. I can see this solution when I graph the two equations.
darova
darova 2020 年 5 月 1 日
What about this
[deltaH, D] = vpasolve(eqn1 == eqn2, [deltaH, D],[2 1])
deltaH =
1.1885695516004419959725632337124
D =
2.0
[deltaH, D] = vpasolve(eqn1 == eqn2, [deltaH, D],[2 4])
deltaH =
4.1628911435565798210779440646728
D =
2.0

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

回答 (0 件)

カテゴリ

Help Center および File ExchangeConversion Between Symbolic and Numeric についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by