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
The current MPCD collision methods conserve linear momentum but not angular momentum. This isn't usually a problem, but it can be in certain cases. We should add the calculations required to optionally conserve angular momentum in the SRD and AT collision methods.
Conserving angular momentum is more expensive, so this code path should be opt-in with an attribute that defaults to False, like conserve_angular_momentum=False. This is all that should be needed on the Python side.
On the C++ side, we need to compute the center-of-mass and moment of inertia for particles in collision cells (unwrapped under PBCs correctly), then apply a correction term to enforce that the angular momentum does not change during the collision, as in the references above. In MPI simulations, this will require reduction of additional quantities for cells spanning multiple domains.
Additional context
No response
The text was updated successfully, but these errors were encountered:
Description
The current MPCD collision methods conserve linear momentum but not angular momentum. This isn't usually a problem, but it can be in certain cases. We should add the calculations required to optionally conserve angular momentum in the SRD and AT collision methods.
Proposed solution
Conserving angular momentum is more expensive, so this code path should be opt-in with an attribute that defaults to False, like
conserve_angular_momentum=False
. This is all that should be needed on the Python side.On the C++ side, we need to compute the center-of-mass and moment of inertia for particles in collision cells (unwrapped under PBCs correctly), then apply a correction term to enforce that the angular momentum does not change during the collision, as in the references above. In MPI simulations, this will require reduction of additional quantities for cells spanning multiple domains.
Additional context
No response
The text was updated successfully, but these errors were encountered: