# Analytical solution for ODE with a power-law term?

I want to solve the following differential equation which is a very common growth law model in biology — a generalization of the logistic equation. In this case, the equation possesses a power-law factor 3/4.

$$\frac{dx}{dt}= 4 A k \left(\frac{x(t)}{A}\right)^{3/4}-3 k x(t)$$

The problem is to obtain the analytical solution for a certain initial condition $$x(t)=B_0$$, where $$A$$ and $$k$$ and $$B_0$$ are positive constants.

I evaluated

DSolve[{x'[t] == -2 k x[t] + 3 A k (x[t]/A)^(2/3), x[0] == B}, x, t]


and obtained four solutions. It is difficult for me to interpret the solutions.

I am interested in solving for an arbitrary initial condition, X(0)=B y A (without giving a particular value)

I get the following message:

Solve::ifun: Inverse functions are being used by Solve, so some solutions may not be found; use Reduce for complete solution information.

How can I solve this differential equation using Mathematica? What more can be done with Mathematica?

• This question is not clear. 1) you say you want the "initial condition, X(0)=B y A". This doesn't make sense since neither X nor y appear in your differential equation. 2) you also say "How can I solve this differential equation" and "obtained four solutions", which are contradictory Nov 5, 2020 at 3:49
• I get six answers. They are long, but the long parts are constants because they contain only A and B. Inserting values for A and B shorten them considerably. Two of them are real and the remaining four are in complex conjugate pairs which is reasonable. Is there some reason you don't like the answers? It is your differential equation after all. Nov 5, 2020 at 4:24
• One suggestion I have is to input values for A and B that you know to be reasonable, look at your solutions, then pick and use the one that looks reasonably correct assuming one does. You can unassign A and B for that solution. And your code does not match your Latex. Nov 5, 2020 at 4:47
• For me, DSolve[{x'[t] == -2 k x[t] + 3 A^3 k (x[t]/A^3)^(2/3), x[0] == B^3}, x, t][[2]] gives the solution to the IVP. The extraneous solutions come from a rationalization step (I surmise). Nov 5, 2020 at 5:28

To make things a little simpler, we solve for x[t] instead of x, like this

soln = DSolve[{x'[t] == -2 k x[t] + 3 A k (x[t]/A)^(2/3), x[0] == B},
x[t], t];


We obtain 6 possible solutions.

### Using Reduce to check the solutions

Let's check the first solution at the initial condition x[0] == B using Reduce

Reduce[(x[t] == B) /. soln[[1]] /. t -> 0, {A, B}, Reals]


$$\left(A<0\land B=\frac{27 A}{8}\right)\lor \left(A>0\land B=\frac{27 A}{8}\right)$$ This says that soln[[1]] satisfies the IC for any any positive $$A$$ provided $$B = 27A/8$$. However, with this IC we get x'[0] = 0, the steady-state condition, which leads to the trivial solution $$x(t)=27A/8$$.

Now let's see if soln[[2]] satisfies the IC for any positive values of A & B:

Reduce[(x[t] == B) /. soln[[2]] /. t -> 0, {A, B}, Reals]


$$\left(A<0\land \frac{27 A}{8}\leq B<0\right)\lor \left(A>0\land \left(B<0\lor 0

For $$0, soln[[2]] satisfies the IC for $$0. For the other 4 solutions Reduce is unable to find real values of A & B that satisfy the IC.

### Plotting the real solution

The second solution looks good at t=0. Let's plot its real and imaginary parts like this

Manipulate[ ReImPlot[
Evaluate[x[t] /. soln[[{2}]] /. k -> kk /. A -> a /. B -> b],
{t, 0, 5}, PlotRange -> {All, {-5, 20}}],
{{a, 3, "A"}, .1, 5, .1},
{{b, 2, "B"}, 0.01, 15, .01},
{{kk, 1, "k"}, 0, 5, 1}]


This plot shows the imaginary part of soln[[2]] remains zero for all $$t>0$$ provided the value of B is sufficiently small.

### Plotting the complex solutions

We can use almost the same code to examine the other "solutions". For example, We can replace soln[[{2}]] with soln[[{3,5}]] and adjust the plot range in the above statement to obtain a plot of soln[[3]] and soln[[5]].

This plot shows those complex conjugate functions have imaginary parts for values of $$t>0$$.

We conclude that the analytical solution we want is given by soln[[2]] and the conditions $$A>0$$, $$0.