[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [IMP-dev] connectivity restraints



i ran into another problem in my restraint generation:
in my model i use the MolecularHierarchy (protein->fragment). to make
the restraint work on parts of the protein i introduce
'pseudo-fragments', which are then parents of the respective
fragments.
however, i now want to access the protein that a specific fragment
belongs to. now my code is in the dilemma that there are two parents.
i'd like to access the protein particle with the get_parent()
function, but i end up with the pseudo-fragment used for restraint
generation.
can anybody provide my with a solution for 'multiple parents'. i
presume one can deal with multiple hierarchies in imp, but i just do
not know how...
Two comments:
- I was going to post an email about introducing "groups" or some such name which would provide a set of functions for easily defining higher level features (such as a group involving 3 fragments). Each group would be defined by a particle and there would be a standard refined. You could call a function "create_group(Particles)" to create such a group and then pass the resulting particle to ConnectivityRestraint or any other thing which takes a refiner.

You would not easily have the ability to get the set of groups that a particle belongs in (although that could be added) and the group particles themselves would not be atom.Hierarchy particles.


- In your case it sounds like just have a tree like this
Protein:
  - fragment a
      - fragment 0
      - fragment 1
  - fragment b
      - fragment 2
      - fragment 3

Then to get the protein you just go up in the tree until you get to a hierarchy node of type atom.Hierarchy.PROTEIN.