Dynamical system with affine updating function, describing medicine in body,  with daily doses:

Clear[f,  x]
f[x_]  :=  125  +   .6 x
x[1]  =  125;
x[n_]  :=  f[x[n - 1]]

x[100]
ListPlot[Table[{n,  x[n]},  {n, 1, 20}]]

Plot[{f[x],  x},  {x,  0,  
        500}]

Find  the equilibrium point:

NSolve[ f[x]  ==  x,  
      x]

Change dynamical system by putting quadratic term in the generating function  (if more medicine is present, the percentage retained is slightly less):

Clear[a, g]
g[x_] := 125 +  .6 x -  .0005 (x^2);

a[0] = 125. ;
a[n_] :=   g[a[n - 1]]

a[100]
ListPlot[
      Table[{n,  a[n]},  {n, 1, 20}]]

Try different initial conditions:

Clear[a]
a[0] = 500. ;
a[n_] :=   g[a[n - 1]]

a[100]
\(ListPlot[Table[{n, \ a[n]}, \ {n, 1, 40}]]
\)

Our numerical experments show that the steady state (limiting  state)  is insensitive to the initial  condition.  We can understand this using a graphical method:

g[x_]  :=  
      125  +   .6* x  -   .0005 x^2
Plot[{x,  g[x]},  {x,  0,  1000}]

Finding the equilibrium point:

NSolve[ g[x]  ==  x,  
      x]

Let's add a cubic term to the updating function:

h[x_]  :=  
        125  +   .6* 
            x  -   .0005 x^2  +   .0000005 x^3;
Plot[{x,  h[x]},  {x,  0,  
        1500}]

Find equilibrium points:

NSolve[ h[x]  ==  x,  x]

Run a dynamical system with the cubic updating function:

Clear[b]
b[0] = 125. ;
b[n_] :=   h[b[n - 1]]

b[100]
\(ListPlot[Table[{n, \ b[n]}, \ {n, 1, 40}]]
\)

Change the initial condition:

Clear[b]
b[0] = 1200. ;
b[n_] :=   h[b[n - 1]]

b[100]
\(ListPlot[Table[{n, \ b[n]}, \ {n, 1, 40}]]
\)

Again, the  steady state (limiting state) is  insensitive to the initial  state.