I have written an N-body simulation (close to finished) in C++ which focuses on the tidal disruption of comets.

I allow comets to be constructed in 2 ways:

  1. Via my HCP (hexagonal-closest-packing) algorithm, or
  2. From a random distribution of particles (either uniformly or normally distributed) that is then allowed to collapse into a clump.

All bodies in a given comet are of equal radius and mass.

What I have become unsure of is how I am determining the radius of a comet. In my HCP algorithm, I discard bodies whose centres are at a greater distance from the centre-of-mass (COM) of the comet than the desired radius of the comet.

Nonetheless, shouldn't the comet radius be measured by taking the distance from the COM of the comet to the outermost point of the outermost body in the comet? I.e.:

$$ R_{comet} = |\textbf{r}_{outermost} - \textbf{r}_{comet}| + R_{outermost} $$

where $R$ is a radius and $\textbf{r}$ is a position vector.

In that case, would it not be better (in the HCP algorithm) to discard bodies whose centres fall outside of the radius of the comet minus the radius of the bodies themselves?

I would much appreciate any insight on this, thank you.

  • 1
    $\begingroup$ It seems to me that for a non-spherical comet (all the comet that we have seen up close have been potato shaped) the "radius" isn't precisely defined. It also seems that R_outermost << R_comet, so the difference is neglible. $\endgroup$
    – James K
    Apr 1, 2023 at 17:39
  • $\begingroup$ @JamesK indeed, everything you say is true... the difference would be negligible and yes, unfortunately, getting the exact shape of a comet right would be much harder than modelling it as a rough sphere! Many thanks for your insight. $\endgroup$ Apr 1, 2023 at 19:27
  • $\begingroup$ @GregorHartlWatters I am not an expert on N-body codes, so please do not take my comment too close to heart. I suspect that the uncertainty caused by your choice of the radius may be of a lesser importance than the uncertainty in your modeling of cohesion between particles, if you intend to include cohesion at some point. $\endgroup$ Apr 2, 2023 at 12:44

1 Answer 1


As to creation of the bodies: Taking a spherical body, the radius usually is defined as the distance from the centre to the outer edge - so the center of mass of the outer most constituents would need to be inside the radius of your comet by their own radius. Yet if you take the limit for the center-of-mass of your mass-elements to define the radius, then the actual difference might be small, depending on how big you model the constituent pebbles of the comets. The more important aspect is that you tell and describe what you do exactly as either approach is valid.

Going a bit beyond that: there is at least two ways to assume the radius of a comet - and which is more approriate may depend on what aspects you are interested in:

  • One and probably the easiest way is to assume the equivalent radius of a sphere given the mass of the comet and the assumed porosity (porosity may be interesting as it might even be a two-stage porosity if you consider the comet consisting of pebbles which themselves also have a porosity). See e.g. S. Lorek et al (2016), Weissmann et al (2020) or Blum et al (2017). There are also experiments on the fragmentation of such rubble-piles which give you the physical properties of the surface contact energies for icy dust-pebbles, e.g. like Haak et al (2020)

  • If you want to make your life even more complicated, you can assume non-spherical bodies for your simulation. The easiest might be to assume an oblate body due to the centrifugal forces, e.g. if you assume gravitational formation from a pebble cloud. You might as well just take an average irregularity into account and work with an "enlargement factor" or create your body by some kind of hit & stick behaviour with some subsequent compaction due to self-gravity which can give you somewhat irregular bodies. Additionally there might be reason to believe that this can be the result of (several) orbits and the related mass-loss, though (e.g. see Vavilov et al (2018) )

Disclosure: I'm one of the co-authors of the Blum et al (2017) paper.


You must log in to answer this question.

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