SWIFTSIM / HBTplus

HBTplus halo finder adapted for the FLAMINGO and COLIBRE simulations
0 stars 0 forks source link

Duplicate particles #29

Closed VictorForouhar closed 1 month ago

VictorForouhar commented 2 months ago

HBT+ subhaloes sometimes share bound particles between themselves, leading to particle duplication. This affects SOAP further down the line, as we then require a truly exclusive membership list, and hence we need to make choices about memberships. This sometimes results in objects that were resolved in HBT+ having fewer than the particle threshold we impose.

Known causes for duplication:

  1. No particle masking across FOF haloes. Occurs when a particle bound to a satellite is found in a different FOF than the one assigned to the subhalo. The particle is then fed into the central of the other FOF, and can then be bound to the central and satellite. Solved in #26.

  2. Merging of subhaloes. A particle may be unbound to a satellite, leading it to potentially be bound to its immediate parent (or any of its "ancestry"). If, however, another subhalo merges with the satellite, it triggers the unbinding again. The previously unbound particle may be bound due to the additional accreted mass, hence being bound to two objects at the same time.

I believe there must be another mechanism for duplication, as manually disabling merging still results in a (much reduced) population of duplicate particles.

VictorForouhar commented 2 months ago

Pull request for second issue is in #32

VictorForouhar commented 2 months ago

Pull request for second issue is no longer a draft. Working on identifying the other sources of duplication.

VictorForouhar commented 1 month ago

The are no longer any duplicate particles, as they have been addressed in #26 #32 #35.