next up previous contents index
Next: Usage Up: Module group_module Previous: Module group_module   Contents   Index

Purpose

A Group is a collection of atoms, with an optional list of objects. These objects can be anything, e.g. rigid bodies, constraints, residues... etc. The idea is that different groups of atoms will require their equations of motion integrating in different ways, so currently AdvanceVerlet loops over all groups, checks the type of the group and integrates the equations of motion for the atoms in that group in the appropriate way.

Two examples:

Initially, when a DynamicalSystem is initialised each atom is put into its own group. As constraints and rigid bodies are added the number of groups remains the same but some of them become empty. These empty groups can be used if extra atoms are added to the system, or they can be left without a problem. If more memory is needed then DS_Free_Groups can be called, which deletes all the empty groups and recreates the group_lookup array inside DynamicalSystem. This is most useful if all the constraints/rigid bodies are set up before a simulation and are known to never change.

A few notes:


next up previous contents index
Next: Usage Up: Module group_module Previous: Module group_module   Contents   Index
gabor 2009-06-30