# Having Mathematica solve or help solve a set of 8 equations

There is a set of DDE's that arise in leukemia dynamics and I'd like to find the equilibrium points of the system by setting all of the derivatives equal to zero. The system can be described in Mathematica code as follows:

Ctotal = y0 + y1 + y2 + y3 + z0 + z1 + z2 + z3;
p[C_, T_, cn_, p0_, k_] := p0*Exp[-cn*C]*k*T;
dy0dt[ry_, u_, d0_, qC_, cn_, p0_, k_] :=
(ry (1 - u) - d0)*y0 - qC*p[Ctotal, T, cn, p0, k]*y0;
dy1dt[ay_, d1_, qC_, cn_, p0_, k_] :=
ay*y0 - d1*y1 - qC*p[Ctotal, T, cn, p0, k]*y1;
dy2dt[by_, d2_, qC_, cn_, p0_, k_] :=
by*y1 - d2*y2 - qC*p[Ctotal, T, cn, p0, k]*y2;
dy3dt[cy_, d3_, qC_, cn_, p0_, k_] :=
cy*y2 - d3*y3 - qC*p[Ctotal, T, cn, p0, k]*y3;
dz0dt[rz_, d0_, ry_, u_, qC_, cn_, p0_, k_] :=
(rz - d0)*z0 + ry*u*y0 - qC*p[Ctotal,T,cn, p0, k]*z0;
dz1dt[az_, d1_, qC_, cn_, p0_, k_] :=
az*z0 - d1*z1 - qC*p[Ctotal, T, cn, p0, k]*z1;
dz2dt[bz_, d2_, qC_, cn_, p0_, k_] :=
bz*z1 - d2*z2 - qC*p[Ctotal, T, cn, p0, k]*z2;
dz3dt[cz_, d3_, qC_, cn_, p0_, k_] :=
cz*z2 - d3*z3 - qC*p[Ctotal, T, cn, p0, k]*z3;
dTdt[sT_, dT_, n_, qT_, cn_, p0_, k_] :=
sT - dT*T - p[Ctotal, T, cn, p0, k]*Ctotal + 2^(n)*p[Ctotal, T, cn, p0, k]*qT*Ctotal;


Now, setting them all equal to zero and using Solve did not get me very far. I have a feeling that because there are so many equations, Solve having trouble finding a solution. Maybe it will find one, but it might take a long time before something happens. I have had some mild success using FindRoot[], however that only gives me an approximate solution to my problem, and it is very possible that there will be more than one equilibrium point as well. I'd like to also note that I want to be able to solve for y0, y1, y2, y3, z0, z1, z2, z3,and T.

Does anyone have any ideas? I know it's kind of a complex system, but there's got to be a way to get some equilibrium points here, besides the obvious solution (0, 0, 0, 0, 0, 0, 0, 0, sT/dT)

EDIT1: Here's what I used as a solve argument

Solve[ dy0dt[ry, u, d0, qC, cn, p0, k] == 0 &&
dy1dt[ay, d1, qC, cn, p0, k] == 0 &&
dy2dt[by, d2, qC, cn, p0, k] == 0 &&
dy3dt[cy, d3, qC, cn, p0, k] == 0 &&
dz0dt[rz, d0, ry, u, qC, cn, p0, k] == 0 &&
dz1dt[az, d1, qC, cn, p0, k] == 0 &&
dz2dt[bz, d2, qC, cn, p0, k] == 0 &&
dz3dt[cz, d3, qC, cn, p0, k] == 0 &&
dTdt[sT, dT, n, qT, cn, p0, k] == 0, {y0, y1, y2, y3, z0, z1, z2, z3, T}]


If possible, I want to do it analytically. There should be at least three. Even if it did find one of the non-trivial equilibrium points it would be helpful.

• Could you show your Solve try, to see which arguments the different functions have ? – b.gates.you.know.what Aug 12 '13 at 6:24
• Hi, David, it were good to see the rest of the code. It seems to me that you are looking for a numerical solution? If that is the case have a look at NDSolve which can handle DDEs. – user21 Aug 12 '13 at 7:02
• Not a numerical solution, just want to find the equilibrium points of the system. So I guess it's not really important that it's a DDE, as you simply treat those with delays as having none. My Solve argument is edited in. – DaveNine Aug 12 '13 at 7:39