Thank you everyone for your responses. I was able to accomplish what I
needed with the expected results using a variation of what Charles sent me.
I had two problems, one was an 'and' instead of an or and the other was
including the right grouping of atoms I wanted to fix. Below are the lines
of code i used. For those interested, I offset the residue numbering of the
second protein by 1000 (protein1 goes from 169-229 linker 233-339) (protein2
goes from 1169-1229 linker 1233-1339). The dimer has an interface between
domains 233:339 and 1173:1229.
bbStr = "(name N or name C or name CA or name O or name H or name HA)"
heteroSel = AtomSel('resid 233:339 or resid 1173:1229')
heteroSideChainStr = "not " + bbStr + " and (resid 233:339 or resid
1173:1229)"
sh3Sel= AtomSel('resid 173:229')
sh3SideChainStr = "not " + bbStr + " and resid 173:229"
sh2aSel = AtomSel('resid 1233:1339')
sh2aSideChainStr = "not " + bbStr + " and resid 1233:1339"
dyn.fix('resid 233:339 or resid 1173:1229') # note the change of 'and' to
'or'
from atomSel import intersection
dyn.group(intersection(heteroSel, "not (%s)" %heteroSideChainStr))
dyn.group(intersection(sh3Sel,"not (%s)" % sh3SideChainStr))
dyn.group(intersection(sh2aSel,"not (%s)" % sh2aSideChainStr))
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
http://dcb.cit.nih.gov/pipermail/xplor-nih/attachments/20090115/60112501/attachment.html