The chassis and wheels can be grouped into separate rigid bodies and connected together to setup multibody rigid MD simulations. Currently it's not possible to save atom id information in Avogadro so it's not straight forward to know which atoms belong to which part of the Nanocar. One way to do this is to keep track of each wheel added as follows:
User adds a chassis molecule. If there is a wheel_ids.yaml file the file is deleted.
User adds N wheel molecules. With first wheel a wheel_ids.yaml file is generated. As each wheel is added atom ids for each wheel is saved to this file.
User asks for a multibody MD simulation configuration. The wheel_ids.yaml file is read and each wheel in the file is grouped separately. The rest of the atoms are grouped as the chassis.
Drawbacks
If user deletes a wheel during the build there would be no way to tell.
If an atom from the chassis is deleted during the build this would break the atom ids.
Additional functionality
Register wheel: User would select a group if atoms and register them as a wheel.
Refresh wheel list: Refresh the wheel list (remove wheel_ids.yaml).
The chassis and wheels can be grouped into separate rigid bodies and connected together to setup multibody rigid MD simulations. Currently it's not possible to save atom id information in Avogadro so it's not straight forward to know which atoms belong to which part of the Nanocar. One way to do this is to keep track of each wheel added as follows:
wheel_ids.yaml
file the file is deleted.wheel_ids.yaml
file is generated. As each wheel is added atom ids for each wheel is saved to this file.wheel_ids.yaml
file is read and each wheel in the file is grouped separately. The rest of the atoms are grouped as the chassis.Drawbacks
Additional functionality
Register wheel
: User would select a group if atoms and register them as a wheel.Refresh wheel list
: Refresh the wheel list (removewheel_ids.yaml
).