Background


Gravitational softening is a technique used in many N-body simulations to 1) make the system more collisionless (that is, less responsive to close encounters between particles) and/or 2) to keep the integration time well-behaved. Softening makes forces between particles have a maximum value when they are close together. In this way, two particles do not follow Keplerian orbits during close encounters and timesteps have lower bounds. An argument for taking this approach is that each particle in an N-body simulation actually represents an unresolved distribution of mass. When these distributions get close, their interaction will not be the same as for point masses. Former UW-L student Jacob Gloe wanted to know if this is actually the case. He helped implement the graphics-processing-unit-enhanced version of the NBODY6 code (which does not involve softened forces), create initial conditions, and run simulations of clusters of particles that represent the unresolved point masses of softened N-body simulations.

I have used four different softening prescriptions. Prescriptions one through three are "Plummer-like" in that they modify the inverse-square law of gravity with a scalelength -- mass separations smaller than the scalelength do not lead to increased gravitational accelerations. Prescription four is a "spline" softening favored by a commonly used N-body simulation package.

Simulations


The table below lists the various simulations we have run so far. Clusters with N=2α (where 10 <= α <= 14) have been created and placed so that they will travel past one another, as would point masses in a softened N-body simulation. The impact parameters (b) and relative speeds of the interactions are also varied. The relative speed of two clusters is determined by the parameter Q; larger Q means larger speed. We have also varied the initial separation Δxinit along the initial velocity direction.

The relative sparseness of the 'COMPLETED' tags results from the insensitivity of results to the N value and the nearly-independent behavior of results from different Q values. Any links from 'COMPLETED' tags will take a reader to animations of the corresponding simulation. You will see representative cluster particles (small green and white dots) and the calculated locations of the cluster centers-of-mass ('x' symbols). The softened point mass locations are marked by diamond symbols. The specifics of the type of softening prescription used and the adopted softening length are shown. Each movie contains three different softening values; the optimal softening, one-tenth of the lower uncertainty value, and twice the upper uncertainty value. In this way, one can see how the two kinds of motion diverge.

Δxinit = 4.0
b = 1.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
COMPLETED
-
-
COMPLETED
2048
-
COMPLETED
-
-
-
4096
-
COMPLETED
-
-
-
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
16384
COMPLETED
COMPLETED
-
-
COMPLETED
b = 2.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
COMPLETED
-
-
COMPLETED
2048
-
COMPLETED
-
-
-
4096
-
COMPLETED
-
-
-
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
16384
COMPLETED
COMPLETED
-
-
COMPLETED
b = 3.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
COMPLETED
-
-
COMPLETED
2048
-
COMPLETED
-
-
-
4096
-
COMPLETED
-
-
-
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
16384
COMPLETED
COMPLETED
-
-
COMPLETED
b = 4.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
COMPLETED
-
-
COMPLETED
2048
-
COMPLETED
-
-
-
4096
-
COMPLETED
-
-
-
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
16384
COMPLETED
COMPLETED
-
-
COMPLETED
b = 5.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
COMPLETED
-
-
COMPLETED
2048
-
COMPLETED
-
-
-
4096
-
COMPLETED
-
-
-
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
16384
COMPLETED
COMPLETED
-
-
COMPLETED

Δxinit = 8.0
b = 1.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
b = 2.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
b = 3.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
b = 4.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
b = 5.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
COMPLETED
COMPLETED
COMPLETED
COMPLETED
COMPLETED
b = 20.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-
b = 24.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-
b = 28.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-
16384
-
-
-
-
COMPLETED
b = 32.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-
b = 36.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-
b = 40.0
N
Q = 0.2
Q = 0.5
Q = 0.8
Q = 1.5
Q = 5.0
1024
-
-
-
-
COMPLETED
8192
-
COMPLETED
-
-
-