Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Is there a closed-form solution r(t) regarding universal law of gravitation?

  1. Nov 6, 2011 #1


    User Avatar
    Gold Member

    Newton's universal law of gravitation:

    [tex]F=-G \frac{m_1 m_2}{r^2}[/tex]

    I'd like to set up the problem so the particle begins at t=0 at radius r=r0 and radial velocity vr=v0. And there is only a component of velocity, in the radial direction. (The particle is going straight toward the gravitating body)

    The above equation becomes

    [tex]F=m a_r= m_2 \frac{\mathrm{d}^2 r}{\mathrm{d} t^2}= G \frac{m_1 m_2}{r^2}[/tex]

    And so the most simply I can give the differential equation is:

    [tex]\left (\frac{\mathrm{d}^2 }{\mathrm{d} t^2} \right )r = -G \frac{ M}{r^2}[/tex]

    Does this equation have a closed-form solution?

    If not, is there a well-known technique of solving it numerically? Here is what I did numerically.

    (1) determine r0 and v0.
    (2) determine the acceleration at your current radius a=-GM/r^2
    (3) choose a small Δt during which the acceleration is approximately constant.
    (4) Find a final velocity by multiplying the acceleration times the Δt.
    (5) Find the average velocity from (initial velocity + final velocity)/2
    (6) Multiply average velocity by Δt to find Δr.
    (7) Add Δt and Δr and Δv to your previous values of t, r, and v, and start over at step (2)

    One particular set-up is to determine the initial velocity at r0 to be the negative of the escape velocity at that same r0. It stands to reason that if a particle is traveling at a speed equal and opposite to its escape velocity as it falls in, that conservation of energy will maintain this, so that the particle will fall in at its escape velocity the entire way.

    I tried out this numerical method and the velocities calculated numerically did match the escape velocities pretty well. But this gives us a function v(r) when I am wanting a function r(t), and it also is a solution that requires a specific pre-defined initial radial velocity, where I would like a function where the initial velocity can be decided arbitrarily.

    I appreciate any help anyone might think of. Thanks.
  2. jcsd
  3. Nov 6, 2011 #2


    User Avatar
    Homework Helper

    There's not really a nice closed form for r(t). You can get an expression for t(r), though, by multiplying

    [tex]\ddot{r} = -GM\frac{1}{r^2}[/tex]

    by [itex]\dot{r}[/itex] to get

    [tex]\ddot{r}\dot{r} = -GM\frac{\dot{r}}{r^2}[/tex]

    Then notice that [itex]\ddot{r}\dot{r} = (1/2) d(\dot{r}^2)/dt[/itex] and [itex]\dot{r}/r^2 = -d(1/r)/dt[/itex].

    You can then integrate the equation once, and then you will be able to separate the resulting equation and integrate it, but the best you will be able to get is [itex]f(r(t)) = t[/itex] for some function f.
  4. Nov 6, 2011 #3


    User Avatar
    Gold Member

    Thank you.

    That is helpful. From your replacements I derived:

    [tex]\frac{1}{2} \left (v_f^2 - v_i^2 \right ) = G M\left ( \frac{1}{r_f}-\frac{1}{r_i} \right )[/tex]

    This satisfies one of my criteria, because it is a solution that lets you set your initial location and velocity arbitrarily, and determines final velocity as a function of final location.

    But was there something more you had in mind? Because I didn't come up with t as a function of r or t=f(r(t)). When I made the replacements you suggested, the dt's canceled out.
  5. Nov 8, 2011 #4


    User Avatar
    Homework Helper

    You could also shortcut your way to this by using conservation of energy. Note that you have a minus sign error on the right hand side. It should be 1/r_0 - 1/r_f.

    The equation you derived, for arbitrary final time, is also

    [tex]\frac{1}{2}(\dot{r}^2(t) - \dot{r}(0)) = GM\left(\frac{1}{r(0)} - \frac{1}{r(t)}\right)[/tex]

    If you solve for [itex]\dot{r}(t)[/itex], you have another equation to solve that in principle get you r(t), but it looks like [itex]dr/dt = g(r)[/itex], for some function g(r), so when you solve it you get f(r(t)) = t, where f(r) is the integral of 1/g(r), and cannot really be inverted explicitly (in terms of elementary functions) to get [itex]r(t) = f^{-1}(t)[/itex].
  6. Nov 9, 2011 #5


    User Avatar
    Gold Member

    I'm fairly certain the original sign is right. You want it so if the initial radius is larger than the smaller radius, you come out with a positive value for the change in velocity.
    Also, the conservation of energy law is [tex]\Delta KE + \Delta PE = \Delta E_{non-cons}[/tex] where [tex]\begin{align*} PE&=-G\frac{m_1 m_2}{r} \\ KE &= \frac{1}{2}m v^2 \end{align*}[/tex]
    ( Potential Energy's zero point can be set wherever you want, but by common convention, it is set so PE->0 as r-> infinity)
    (and of course the non-conserved energy in this case is zero)

    In any case, the overall process seemed to be an elegant way to derive the conservation of energy law.

    That's good. Once this is done, (and I decided to let the initial velocity be zero for simplicity) I have a differential equation of the form

    [tex]\left ( \frac{dr}{dt} \right )^2-\frac{2 G M}{r}+\frac{G M}{r_0} =0[/tex]

    [tex]\left ( \frac{dr}{dt} \right )^2-\frac{c_1}{r}+c_0=0[/tex]

    I'm still not sure how to solve this thing, but that's one step closer; at least now it's just a first derivative.
    Last edited: Nov 9, 2011
  7. Nov 9, 2011 #6
    You take the square root and separate variables and obtain two solutions
  8. Nov 9, 2011 #7

    Ben Niehoff

    User Avatar
    Science Advisor
    Gold Member

    The central motion problem in a 1/r potential is solved in graduate texts on classical mechanics such as Goldstein. You can get a nice solution t(r) for t as a function of r.
  9. Nov 14, 2011 #8
    Who is more deeply interested in the problem should study the exact solution based on Kepler's famous transcendental equation. Compared with this, the present approach is a 'toy solution'. Comparing the poor physics textbook method with Kepler's method allows one to appreciate what genius in science means.
  10. Nov 14, 2011 #9


    User Avatar
    Science Advisor
    Homework Helper

    Do you have a reference for this ? Book or freely available article.
  11. Nov 15, 2011 #10
    The Wikipedia article 'Kepler orbit' has this and much more. Notice that solving Kepler's equation solves the problem where on his orbit the planet is at a given instant of time. Solving this equation by some iteration scheme is easy and fast and the computational burden is independent of how many centuries the this point in time is in the future or in the past. So there is no fundamental difference to the situation that you express the planetary position by an explicit 'closed formula'. Solving it by a series expansion is the historical origin of the Bessel functions (Bessel was an astronomer). I just read Kepler's original text on the matter in a facsimile edition of selected works of Kepler. Really not easy to read (although his language, German, is mine).

    Physics textbooks normally are content with deducing the geometry of the orbits (conic sections) from Newton's law and neglect the question how to find the position of the body on its orbit efficiently. Texts on Celestial Mechanics and Astronomy are better sources for this problem.
  12. Nov 15, 2011 #11
    You can considerably increase the power of such a numerical method by
    following Verlet (actually the method is much older and is often associated with
    Störmer, sometimes it is called explicit midpoint method)

    Treat r (position) and v (velocity) as vectors (in 3-space, or 2-space).
    (1) determine r0 and v0.
    (2) determine the acceleration am at position rm = r0 + (Δt/2)v0
    (3) find the final velocity vf = v0 + Δt am
    (4) find the final position rf = rm + (Δt/2)vf
    (5) restart the loop with r0 = rf and v0 = vf
    Last edited: Nov 15, 2011
  13. Nov 15, 2011 #12


    User Avatar
    Gold Member

    For completion:

    [tex]\begin{align*} \left ( \frac{dr}{dt} \right )^2&=\frac{c_1-c_0 r}{r} \\ \left ( \frac{dr}{dt} \right )&=\sqrt{\frac{c_1-c_0 r}{r}}\\ \frac{dt}{dr}&=\sqrt{\frac{r}{c_1-c_0 r}}\\ \int dt&=\int_{r_0}^{r_f}\sqrt{\frac{r}{c_1-c_0 r}}dr \end{align*}[/tex]

    where c1=2 G M, c0 = G M /r0

    The last line, evaluated via Mathematica was:

    [tex]\frac{\sqrt{\frac{r}{\text{c1}-\text{c0} r}} \left(\sqrt{\text{c0}} \sqrt{r} (\text{c0} r-\text{c1})+\text{c1} \sqrt{\text{c1}-\text{c0} r} \tan ^{-1}\left(\frac{\sqrt{\text{c0}} \sqrt{r}}{\sqrt{\text{c1}-\text{c0} r}}\right)\right)}{\text{c0}^{3/2} \sqrt{r}}[/tex]

    A closed form, but not a pretty one.

    Edit: Just a note about the domain of the arctan function.

    [tex]\sqrt{\frac{c_0 r}{c_1-c_0 r}} = \sqrt{\frac{\frac{G M}{r_o}}{2 G M -\frac{G M}{r_o}r}}=\sqrt{\frac{r}{2 r_0 - r}}[/tex]

    This will be real-valued so long as [itex]0<r<r_0[/itex]. That makes sense, because based on the assumption of v=0 when r=[itex]r_0[/itex], there would be no time such that [itex]r>r_0[/itex].

    Also, you would get two times for each radius, a negative time on the way up, and a positive time on the way down, where t=0 would represent the time where the object reaches the apex.

    Also, the form as I've given it isn't quite general, because by setting the velocity to zero at ANY given radius, I've left out all the particles that are traveling at speeds greater than the escape velocity.
    Last edited: Nov 15, 2011
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook