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
 

Reply via email to