On Oct 7, 2010, at 2:04 PM, Ben Webb wrote:
> On 10/6/10 11:16 AM, Daniel Russel wrote: >> I propose a new standard type of interface, namely, simply taking all >> the XYZR particles of interest, whether or not they happen to be part >> of a rigid body. That is, if you have some rigid proteins and some >> non-rigid proteins and are representing everything with all atoms, >> you simply pass all the atoms. > > Sounds reasonable and less confusing for users to me. My only concern > is: what happens in the above case if the user passes a list that > contains only some atoms from a given rigid body? (e.g. protein A is > rigid, protein B is non-rigid, and the user passes in just a few of the > atoms from protein A) Any code that currently makes the assumption that > an entire rigid body is involved (e.g. I suspect FitRestraint) would > have to do the right thing (or maybe throw an exception and require that > all members of a rigid body go in). Any code that currently makes such an assumption is currently broken (since a single rigid body can include multiple representations of the same structure, as the ones created by the IMP::atom::create_rigid_body do).