fsolve (nonlinear) equation solver with given one equation.
11 次查看(过去 30 天)
显示 更早的评论
How could I solve the equation, using fsolve? Currently, I do have p4, p1, r4, r1, a1, and a4 values, but I am trying to find p2/p1.
It does not have to be fsolve. Any methods it can solve is fine.

0 个评论
回答(1 个)
Ameer Hamza
2020-3-6
Since you already know the values of p1, p4, r1, r4, a1, and a4, you can use solve the equation for the value of p2 to get
. For example,
% dummy values
p1 = 1;
p4 = 2;
r1 = 1;
r4 = 2;
a1 = 1;
a4 = 1;
fun = @(p2) p2/p4*(1 -((r4-1)*a1/a4*(p2/p1-1))./(2*r1*(2*r1+(r1+1)*(p2/p1-1))).^.5).^(-2.*r4./(r4-1))-1;
result = fzero(fun, 10)/p1;
4 个评论
Ameer Hamza
2020-3-6
编辑:Ameer Hamza
2020-3-6
Here, p2 = fzero(fun, 10) and therefore result = p2/p1.
10 is the initial estimate of the value of p1. It is used as a starting point by the solving algorithm. You can use any value, but you will get a better solution if it is near the actual solution. You can use your knowledge about the problem to give a rough estimate of its optimal value.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Systems of Nonlinear Equations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!