0
$\begingroup$

Probably a pretty simple question but I've been stumped for awhile looking around. I'm trying to solve four diff. eq.'s using DSolve and some of these equations depend on a function B[t] which I try to define before using it in DSolve. I'm sure my problem has to do with this B[t] function but I'm too new to Mathematica to know what to do. Here's my code:

bZero = 1575.0
bOne = 0.28
u = 0.02
a = 1/0.0279
g = 1/0.01
B[t_] = (bZero*(1 + (bOne*Cos[2*Pi*t])))
DSolve[{(u - (B[t]*Inf[t]*S[t]) - (u*S[t])) == 
   S'[t], ((B[t]*Inf[t]*S[t]) - ((a + u)*Expo[t])) == 
   Expo'[t], ((a*Expo[t]) - ((g + u)*Inf[t])) == 
   Inf'[t], ((g*Inf[t]) - (u*R[t])) == R'[t]}, {S[t], Expo[t], Inf[t],
   R[t]}, t]

And the output:

DSolve[{0.02 - 0.02 S[t] - 
1575. (1 + 0.28 Cos[2 \[Pi] t]) Inf[t] S[t] == 
Derivative[1][S][t], -35.8623 Expo[t] + 
1575. (1 + 0.28 Cos[2 \[Pi] t]) Inf[t] S[t] == 
Derivative[1][Expo][t], 
35.8423 Expo[t] - 100.02 Inf[t] == Derivative[1][Inf][t], 
100. Inf[t] - 0.02 R[t] == Derivative[1][R][t]}, {S[t], Expo[t], 
Inf[t], R[t]}, t]

Something just isn't working. It's not popping up any errors or anything. I realize it's probably a simple question, but any help is appreciated. Thanks!

$\endgroup$
1
  • 1
    $\begingroup$ Do you have initial conditions? $\endgroup$ Mar 17, 2015 at 5:56

1 Answer 1

1
$\begingroup$

If DSolve can't solve it, it returns unevaluated. NDSolve can solve it, but need some IC. Here is an example

bZero = 1575.0;
bOne = 0.28;
u = 0.02;
a = 1/0.0279;
g = 1/0.01;
B[t_] := bZero (1 + bOne Cos[2 Pi t]);
eq1 = u - B[t] Inf[t] S[t] - u S[t] == S'[t]
eq2 = B[t]*Inf[t] S[t] - (a + u) Expo[t] == Expo'[t]
eq3 = a Expo[t] - (g + u) Inf[t] == Inf'[t]
eq4 = g Inf[t] - u R[t] == R'[t]
NDSolve[{eq1, eq2, eq3, eq4, S[0] == 1, Expo[0] == 4, 
    Inf[0] == 3, R[0] == 5}, {S[t], Expo[t], Inf[t], R[t]}, {t, 0, 10}]

Mathematica graphics

I tried the analytical dsolve in Maple 2015, and it generated 2 solutions.

restart;
bZero := 1575.0;
bOne := 0.28;
u := 0.02;
a := 1/0.0279;
g := 1/0.01;
B:= t-> (bZero*(1 + (bOne*cos(2*Pi*t))));
eq1 := u - B(t)* Inf(t)* S(t) - u* S(t) =diff(S(t),t);
eq2 := B(t)*Inf(t)* S(t) - (a + u)* Expo(t) = diff(Expo(t),t);
eq3 := a* Expo(t) - (g + u)* Inf(t) = diff(Inf(t),t);
eq4 := g *Inf(t) - u* R(t) = diff(R(t),t);
sol:=dsolve({eq1,eq2,eq3,eq4},{S(t),Expo(t),Inf(t),R(t)});

sol[1];

Mathematica graphics

The second one is too large to post. I am not sure why DSolve could not solve it analytically or if even Maple solution is correct, but you can verify these now and see. Notice that 2 solutions are trivial in the above.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.