Orrery
A GPU-accelerated N-body gravitational simulator
Loading...
Searching...
No Matches
orrery::initial_conditions::GalaxyCollisionParameters Struct Reference

An encounter between two disc galaxies. More...

#include <orrery/initial_conditions/galaxy_collision.hpp>

Public Attributes

DiscGalaxyParameters primary
 The galaxy that comes first in the particle array.
DiscGalaxyParameters secondary
core::Real separation = 20
 The x component of the separation between the two centres.
core::Real impact_parameter = 2
 The y component of the separation, which is what makes the encounter grazing rather than head on.
core::Real approach_speed = static_cast<core::Real>(0.8)
 The relative speed, as a multiple of the escape speed at the initial separation.

Detailed Description

An encounter between two disc galaxies.

Member Data Documentation

◆ primary

DiscGalaxyParameters orrery::initial_conditions::GalaxyCollisionParameters::primary

The galaxy that comes first in the particle array.

Its count is its own, not a share of a total, so a minor merger is described by giving the secondary fewer particles as well as less mass. Equal particle masses across both galaxies are the caller's business here: it is a reasonable thing to want and a reasonable thing not to, since a secondary sampled at the same mass resolution as the primary costs particles in proportion to its mass and resolves its tidal tail far better.

◆ impact_parameter

core::Real orrery::initial_conditions::GalaxyCollisionParameters::impact_parameter = 2

The y component of the separation, which is what makes the encounter grazing rather than head on.

A head-on collision, with this zero, produces a shell rather than the tidal tails the demonstration is for: the tails are drawn out by the angular momentum of the orbit, and an encounter with none has none to give. Two disc scale lengths is enough to produce them and small enough that the discs still meet.

◆ approach_speed

core::Real orrery::initial_conditions::GalaxyCollisionParameters::approach_speed = static_cast<core::Real>(0.8)

The relative speed, as a multiple of the escape speed at the initial separation.

One is parabolic. Below one is bound and merges; above one is hyperbolic and does not. Eight tenths gives a pair that falls together, passes, separates to a few times the initial separation and returns, which is the sequence a real merger follows and is what the demonstration runs for.


The documentation for this struct was generated from the following file: