-
Notifications
You must be signed in to change notification settings - Fork 33
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for writing rigid bodies when converting to HOOMD formats. #850
base: main
Are you sure you want to change the base?
Conversation
for more information, see https://pre-commit.ci
A remaining question to figure out: What if only some molecules are rigid in a hoomd simulation? How does the list of rigid body indices change? |
rigid_id
field to Atom
and handle rigid bodies when converting to HOOMD formats.
Was playing around with the rigid bodies in HOOMD. Got a working simulation with some rigid particles and some non-rigid particles. Looks like the body argument, shown now in line, get's a tag of -1 if the particle is not rigid. The rigid particles get the rigid ID for that particle, and the rigid COM particle, named "dimer" here, also get's that same ID. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #850 +/- ##
==========================================
- Coverage 94.07% 93.51% -0.57%
==========================================
Files 65 65
Lines 6953 6998 +45
==========================================
+ Hits 6541 6544 +3
- Misses 412 454 +42 ☔ View full report in Codecov by Sentry. |
I believe this is correctly implemented now, but I still need to test it out. |
rigid IDs are
ints
assigned to particles/atoms that signal which rigid body they belong to which is needed when recording rigid body information in HOOMD Frames and/or GSD files. The mBuild hoomd writers handled this, but we still need to implement them here.In mBuild, rigid_id is a property at the particle level, so we can treat it the same here, at the site level.
This is a draft for now. Remaining TODOs are: