The following is morestarted as an extended comment thanbut has morphed into an answer.
Second Addendum
A numerical solution can be obtained directly by substituting r[u] = u^2 w[u]
, as suggested by the symbolic solution above. Then the ODE becomes
(Unevaluated[H[u] == u*D[r[u], u] - 2 r[u]] /. r[u] -> u^2 w[u]) // Simplify
(* H[u] == u^3 Derivative[1][w][u] *)
As already noted above, r[10^6] == -1
is not a valid proxy for r[Infinity] == -1
. So, arbitrarily choose w[1] == 1
. The r[u]
is given by
sol = u^2 w[u] /. Flatten@NDSolve[{w'[u] == H[u]/u^3, w[1] == 1}, w, {u, 10^-6, 2},
AccuracyGoal -> Infinity]
plus C[1] u^2
as obtained symbolically earlier.
Plot[sol, {u, 10^-6, 2}, ImageSize -> Large, AxesLabel -> {u, r},
LabelStyle -> Directive[12, Bold, Black]]