Christian Meesters wrote:
My problem now is, how to create and apply arbitrary symmetry: The manual provides the nodes 28 and 103-http://www.salilab.org/modeller/manual/node28.html http://www.salilab.org/modeller/manual/node103.html- which already is a good starting point, but even after looking into the python code it is not clear to me how to distinguish between different symmetries. How, for example would I have to write: "Add restraints for a model with D6 symmetry (Schönflies notation), where all subunits have identical sequences."? Or "add restraints for a hexameric model with C3 symmetry."?
The symmetry restraints are very simple: they just compare the two sets of internal distances between the two groups of atoms. So there is no way to say "give me C3 (or D6) symmetry" because there is no concept of a rotation or inversion center (but you could possibly write your own symmetry restraint which does that: http://salilab.org/modeller/9v2/manual/node394.html). And because only internal distances are considered, no distinction is made between C and D symmetry.
For an approximate C3 symmetry, you would have to consider the pairwise symmetries (i.e. A-B and B-C) and add symmetry restraints for each. You'll find several examples in the mailing list archives.
Ben Webb, Modeller Caretaker -- http://www.salilab.org/modeller/ Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage