# AsymptoticDSolveValue fails at some value

I have the following simple code for obtaining the asymptotic behavior of $$r(\rho)$$ at infinity. The routine works well with $$q=-1$$ and $$q=1/3$$ but fails for the rest of the values where $$q<1$$ (e.g. $$q=0$$). What could be the problem here? My main goal here is to obtain an asymptotic solution $$r(\rho)$$ given a particular value of q. Thanks

 q = 0; b0 = 1;
sol = AsymptoticDSolveValue[{r'[\[Rho]] == Sqrt[1 - (b0/r[\[Rho]])^(1 - q)], r[0] == b0}, r[\[Rho]], {\[Rho], \[Infinity], 1}]

• The answer to your question as written is simple. AsymptoticDSolveValue does not know how to provide an asymptotic solution for those values of q. Is that what you are looking for, or do you wish to obtain an asymptotic solution for some particular value of q? Mar 9 at 3:09
• My goal is to obtain an asymptotic solution $r(\rho)$ given a particular value of q. Mar 9 at 3:15
• For all values of q and r[0] = b0, the ODE has an exact solution. It is equal to b0 for all rho. Mar 9 at 5:19
• Yeah, that's the leading term. But I also want to know the next leading orders Mar 9 at 5:48

Assuming b0==1 you'll find an analytical solution looking for \[Rho][r] ("inverse problem"):

rho = DSolveValue[{1 == \[Rho]'[r] Sqrt[1 - 1/r^(1 - q)] , \[Rho][1] == 0}, \[Rho], r]
(*Function[{r}, -((2 (-Sqrt[\[Pi]] Sqrt[-1 + q] Sqrt[(r - r^q)/r]Gamma[3/2 + 1/(1 - q)]
+Sqrt[1 - q] r Sqrt[r^-q (-r + r^q)]Gamma[1 + 1/(1 - q)] Hypergeometric2F1[1/2, (-3 +q)/(2 (-1 + q)), 1 + (-3 + q)/(2 (-1 + q)), r^(1 - q)]))/(Sqrt[1 - q] (-3 + q) Sqrt[(r - r^q)/r] Gamma[1 + 1/(1 - q)]))]*)

Plot[Table[rho[r], {q, -1, 1 - .1, .1}], {r, 1, 100},AxesLabel -> {"r", "rho[r]"}]


The asymptotic behavior evaluates to rho[r]/r~1, r->Infinity

Table[{q, Normal[Series[rho[r] /r, {r, Infinity, 0}] ]}, {q, -1,1 - 1/10, 1/10}] // Simplify[#, r > 1] & // N
(*{{-1., 1.}, {-0.9, 1.}, {-0.8, 1.}, {-0.7, 1.}, {-0.6, 1.}, {-0.5,1.}, {-0.4, 1.},...}*)


For special values it's possible to invert the Series by hand( unfortunately InverseSeries doesn't work here)

case q==0:

ser = Normal[Series[rho[r] /. q -> 0, {r, Infinity, 0}]] // Simplify[#, r > 0] &
(*-(1/2) + r + Log[2] + Log[r]/2*)


->Targeting guessing

Series[\[Rho] - ser /.r -> \[Rho] - 1/2  Log[\[Rho]] + 1/2 (1 - 2 Log[2]), {\[Rho],Infinity, 1}] // Simplify
(*SeriesData[\[Rho], DirectedInfinity[1], {Rational[1, 4] (-1 + Log[4] + Log[\[Rho]])}, 1, 2, 1]*)


gives the inverse expansion r ~ \[Rho] + 1/2 (1 - 2 Log[2])- 1/2 Log[\[Rho]]

case q==1/2:

ser = Normal[Series[rho[r] /. q -> 1/2, {r, Infinity, 0}]] // Simplify[#, r > 0] &
(*-(7/8) + Sqrt[r] + r + (3 Log[2])/2 + (3 Log[r])/8*)


->Targeting guessing

Series[\[Rho] - ser /.r -> \[Rho] -   Sqrt[\[Rho]] - 3/8 Log[\[Rho]], {\[Rho],Infinity, 1}] // Simplify
(*SeriesData[\[Rho], DirectedInfinity[1], {Rational[1, 8] (11 - 12 Log[2]),Rational[1, 16] (8 + 3 Log[\[Rho]]),Rational[1, 64] (16 + 15 Log[\[Rho]])}, 0, 3, 2]*)


gives the inverse expansion r -> \[Rho] - Sqrt[\[Rho]] - 3/8 Log[\[Rho]]

• But I am interested in the inverse of $\rho(r)$ which is $r(\rho)$. Mar 9 at 8:27
• @user583893 See my modified answer. It should be sufficient! Mar 9 at 8:43
• Yes, I am fully aware that $r\sim\rho$ in the limit $r\rightarrow\infty$, but what I need are the next leading order terms in the expansion. Mar 9 at 8:50
• @user583893 My last Table -command in my answer gives the series expansion of the InverseSeries, see result for q>0! Mar 9 at 9:50