For the first Kepler's law the orbit of a planet is an ellipse, with the Sun in one of the foci, but I've read that in the case of an homogeneous sphere distribution, orbits can be elliptic, but the azimutal period is twice the radial period, meaning that the gravity source is at the center of the ellipse and pericenter and apocenter distances match the semiminor and semimajor axes respectively. How can the latter be found?

  • 1
    $\begingroup$ Link added to the question. $\endgroup$
    – Martrin
    Commented May 6, 2021 at 12:59

1 Answer 1


This sounds like a homework problem so I'll give you most of it but you'll have to work out the details yourself.

Newton's shell theorem tells us that for any spherical mass distribution, the potential at a distance $r_0$ from the center is the same as if all the mass within the shell of radius $r_0$ were at $r=0$, and all the mass outside of the shell didn't exist at all (it cancels):

$$m(r_0) = \int_0^{r_0}4 \pi r^2\rho(r)dr$$

and if we let $\rho(r)$ to be constant (the sphere is of uniform density):

$$m(r_0) = 4 \pi \rho \int_0^{r_0}r^2 dr = \frac{4}{3} \pi \rho r_0^3$$

The gravitational potential for a point mass is

$$V(r) = \frac{Gm}{r}$$

Put them together and you have

$$V(r) = \frac{4 \pi G \rho r^3}{3r} = \frac{4}{3} \pi \rho G r^2$$

and a parabolic $~r^2$ potential is called a harmonic oscillator potential. Motion in this potential (one or many dimensions) is simple harmonic motion. That's because the potential is proportional to $r^2 = x^2 + y^2 + z^2$ and the restoring force is proportional to $\nabla r^2 / 2 = x \mathbf{\hat{x}} + y \mathbf{\hat{y}} + z \mathbf{\hat{z}}$. Oscillations have the same restoring force in all directions, so the periods $\omega_x, \omega_y, \omega_z$ will be the same.

Yes, these will be ellipses and since $r = \sqrt{x^2 + y^2 + z^2}$ the value of $r$ will reach a maximum twice during each orbit.

If for example $\mathbf{r}(t) = \cos(\omega t)\mathbf{\hat{x}} + \frac{1}{2}\sin(\omega t)\mathbf{\hat{z}}$ then you will see that $r(t)$ has two maxima and two minima per cycle.


import numpy as np
import matplotlib.pyplot as plt

wt = np.linspace(0, 2*np.pi, 1001)

x, z = np.cos(wt), 0.5*np.sin(wt)
r = np.sqrt(x**2 + z**2)

plt.plot(wt, x)
plt.plot(wt, z)
plt.plot(wt, r)
  • 1
    $\begingroup$ Thank you. From your answer I understand that I can say that, since $U \propto r^2$ and motion is a simple harmonic motion, if I have, for example, an elliptic trajectory in two dimensions, I'll have oscillations along $x$ and $y$ around a common center (the center of the ellipse, and center of gravity) and that's why, if I have an ellipse of semimajor axis $a$ and semiminor axis $b$, pericenter and apocenter distances matches $a$ and $b$. $\endgroup$
    – Martrin
    Commented May 6, 2021 at 14:10
  • 1
    $\begingroup$ While in the case of keplerian potential, which provide a force that goes as $1/r^2$, Kepler's first law says that the center of gravity is in one of the ellipse foci, so the smaller and longer distance from center of gravity are both on the same axis. $\endgroup$
    – Martrin
    Commented May 6, 2021 at 14:10
  • $\begingroup$ @Martein yes you can say that I think. For consistency only you should say Keplerian orbits come from $1/r$ potentials (rather than saying $1/r^2$ forces). $\endgroup$
    – uhoh
    Commented May 6, 2021 at 14:13

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .