Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Your system seems to have no real solutions :

sage: var("Vmax, Km")
(Vmax, Km)
sage: eq0 = 101/4563863823**(32.4*Vmax/Km) - 71.85 == 0
sage: eq1 = 96.3/85080567**(2.4*Vmax/Km) - 74.25 == 0

Solve eq0 for Vmax

sage: %time S0=solve(eq0, Vmax)
CPU times: user 5.5 s, sys: 7.6 ms, total: 5.5 s
Wall time: 5.15 s
sage: len(S0)

Of these, only one is real :

sage: time with assuming(Km,"real"): S0r = [u for u in S0 if u.rhs().is_real()]
CPU times: user 6.44 ms, sys: 0 ns, total: 6.44 ms
Wall time: 6.42 ms
sage: len(S0r)
sage: S0r
[Vmax == 5*Km*log(1/1437*1437^(161/162)*505^(1/162)*2^(1/81))/log(4563863823)]

Substituting this real solution in eq1 yelds an equation with no variables :

sage: eq1.subs(S0r[0])
96.3000000000000/85080567^(12.0000000000000*log(1/1437*1437^(161/162)*505^(1/162)*2^(1/81))/log(4563863823)) - 74.2500000000000 == 0

And since the left hand is not numerically null :

sage: eq1.subs(S0r[0]).lhs().n()

eq1 isn't satisfied and the system has no solutions with real Vmax.

BTW, your system seems to have no solution at all :

sage: time S01 = [eq1.subs(s).solve(Km) for s in S0]
CPU times: user 677 ms, sys: 3.96 ms, total: 681 ms
Wall time: 576 ms

All these solutions are empty :

sage: all(len(u)==0 for u in S01)

To understand this, let's rewrite this system symbolically (easier to follow) :

Eq0 = c0/c1^(c2*Vmax/Km) + c3
Eq1 = c4/c5^(c6*Vmax/Km) + c7

Again, solving Eq1 for Vmax yelds a solution :

sage: %time Ss0=solve(Eq0, Vmax) ; Ss0
CPU times: user 6.77 ms, sys: 0 ns, total: 6.77 ms
Wall time: 6.75 ms
[Vmax == Km*log(-c0/c3)/(c2*log(c1))]

which, substituted in Eq1, yields an equation with no variable :

sage: Eq1.subs(Ss0[0])
c7 + c4/c5^(c6*log(-c0/c3)/(c2*log(c1))) == 0

The satisfaction of this equation do not depend on Km, but only on your numerical constants.