hoomd-blue
hoomd-blue copied to clipboard
Add cosine channel for MPCD
Description
We want to implement a second channel for mpcd streaming geometry in hoomd v4. It will be a symmetric wavy channel.
Proposed solution
The new geometry will be implemented as follows:
channel = hoomd.mpcd.geometry.CosineChannel(...)
hoomd.mpcd.stream.BounceBack(period=..., geometry=channel)
Additional context
We already have a plugin that implements some of the necessary infrastructure for hoomd v2, which we will port to hoomd v4. A similar issue has been opened for assymetric Contraction Expansion channel.
This issue is very similar to #1775 but the two cosines follow each other to make an S-shaped geometry. We will support implementing this feature too.
My only comment is that this geometry should be named CosineChannel
according to our discussion, not CosineWavy
.
Yes, this is right, I just changed it to CosineChannel.