How to solve this analytical equation please?
이전 댓글 표시
Hi,
I was trying to solve this equation to find the value of G, unfortunately could not find a way to solve it, but do not know the reason.
Any help please?

Script:
% Variables
% -----------------------------------------------------------------------
% Alpha Dash
x=0.1;
% GO
GO=1000;
% Pt
Pt=0.22e-3;
% Psat
Psat=10e-3;
% Equations
% -----------------------------------------------------------------------
a=1-x;
b=Pt/Psat;
c=1+b;
d=a*c;
% Option 1:
solve x*log(GO/G)=log(d/(a*(1+(G*b))))
% Option 2:
solve x*log(GO/G)=log((0.9*(1+b))/(0.9*(1+(G*b))))
% Option :
w= vpasolve(x*log(GO/G)=log((0.9*(1+b))/(0.9*(1+(G*b)))));
답변 (3개)
Walter Roberson
2014년 4월 28일
편집: Walter Roberson
2014년 4월 28일
solve(x*log(GO/G)=log(d/(a*(1+(G*b)))),G)
Note: the solution involves RootOf() a 10th order equation, two of the roots of which are valid solutions.
[-15.53821708+8.146700635*i, -15.53821708-8.146700635*i]
There is no analytic solution to 10th order equations, in general.
RootOf(25937424601000 * z^10 + 11789738455000000 * z^9 + 2411537411250000000 * z^8 + 292307565000000000000 * z^7 + 23251738125000000000000 * z^6 + 1268276625000000000000000 * z^5 + 48040781250000000000000000 * z^4 + 1247812500000000000000000000 * z^3 + 21269531250000000000000000000 * z^2 + 213629777073645655956912870399 * z + 976562500000000000000000000000, z)
the 3rd and 8th roots are the valid ones.
Osa
2014년 4월 29일
0 개 추천
댓글 수: 1
Walter Roberson
2014년 4월 29일
In short, RootOf(f(z),z) for some expression f(z), represents the set of numbers, z, such that f(z) = 0. The "roots" of the equation. solve() will generate RootOf structures when asked for analytic solutions to sufficiently high polynomials.
If I recall correctly, by default only polynomials of degree 0, 1, or 2 are solved directly in MuPAD, and you can request that polynomials of degree 3 or 4 be solved for algebraically (usually a real mess!); polynomials of degree 5 and higher do not usually have analytic solutions.
The sequence I used was Maple rather than MuPAD. The MuPAD notebook equivalent (not usable directly from the MATLAB prompt) would be:
Q := v -> coerce(v, DOM_RATIONAL);
x := Q(.1);
GO := 1000;
Pt := Q(0.22e-3);
Psat := Q(0.10e-1);
a := 1-x;
b := Pt/Psat;
c := 1+b;
d := a*c;
solve(x*log(GO/G) = log(d/(a*(G*b+1))), G)
Parham
2014년 4월 29일
if you rearrange the equation, you'll get
a=alpha
phi = P/Psat
G = exp( (1/a)*(G0^a * (1-a)) / (1-a-phi+(G0^a)*a*phi) )
카테고리
도움말 센터 및 File Exchange에서 Special Values에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!