You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There seems to be a discrepancy between a code that has Rebound's collision detections enabled (e.g. "code->collision = reb_simulation::REB_COLLISION_DIRECT;" in "initialize_code()") and one that only enables collision detections in AMUSE. Both return collisions, but the result is not the same (and seems incorrect if Rebound's collision detection is not enabled).
This is at least the case when using the WHFast integrator.
I am not sure why this is though...
Maybe we should add Rebound's collision detection mechanism as a parameter? And/or auto-set it if the AMUSE collision_detection stopping condition is set?
The text was updated successfully, but these errors were encountered:
Issue traced to a difference between what classifies as a collision between AMUSE and Rebound: Rebound excludes particles moving away from each other. This is the behaviour I needed, but I can do this in post-processing.
This behaviour seems to be different between community codes: ph4 also only reports particles approaching each other.
rieder
changed the title
Rebound: use Rebound internal collision detection?
Collision detection: all overlapping particles vs only approaching overlapping particles
Feb 2, 2017
It's not very "AMUSE-y" when behaviour changes between codes...
Could we standardise this (maybe add a parameter to choose the behaviour)?
Or is ph4 is the only odd one of the bunch and is this really a ph4 bug?
ph4 is the only odd one out (this was done for performance reasons).
The best solution is to have a parameter that would alter the collision detection algorithm if supported by a code, with all code defaulting to the one we have in all coe and some codes having options (i.e. to only stop if particles are moving towards each other)
There seems to be a discrepancy between a code that has Rebound's collision detections enabled (e.g. "code->collision = reb_simulation::REB_COLLISION_DIRECT;" in "initialize_code()") and one that only enables collision detections in AMUSE. Both return collisions, but the result is not the same (and seems incorrect if Rebound's collision detection is not enabled).
This is at least the case when using the WHFast integrator.
I am not sure why this is though...
Maybe we should add Rebound's collision detection mechanism as a parameter? And/or auto-set it if the AMUSE collision_detection stopping condition is set?
The text was updated successfully, but these errors were encountered: