-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hello Andrew--

> 
> I am trying to create a model of a two domain protein that oligomerizes.  
> I have the structure of the single domain interaction (A binding B).
> Think of it as domain orientation of a dual domain protein that also
> dimerizes.
> 
> I would like to fix this structure and allow the adjacent domains to minimize
> around this structure based on RDC and or NOEs.
> 

> 
> bbStr = "(name N or name C or name CA or name O or name H or name HA)"
> sh2Sel = select('resid 233:339')
> sh2SideChainSel = select("not " + bbStr + " and resid 233:339")
> sh3Sel= select('resid 173:229')
> sh3SideChainSel = select("not " + bbStr + " and resid 173:229")
> sh2aSel = select('resid 1233:1339')
> sh2aSideChainSel = select("not " + bbStr + " and resid 1233:1339")
> sh3aSel= select('resid 1173:1229')
> sh3aSideChainSel = select("not " + bbStr + " and resid 1173:1229")
> 
> fullgroupListsh3= []
> fullgroupListsh2=[]
> fullgroupListsh3.append( selLogic("sh2Sel and not sh2SideChainSel",vars()) )
> fullgroupListsh3.append( selLogic("sh3Sel and not sh3SideChainSel",vars()) )
> fullgroupListsh3.append( selLogic("sh2aSel and not sh2aSideChainSel",vars()) )
> fullgroupListsh3.append( selLogic("sh3aSel and not sh3aSideChainSel",vars()) )
> 
> dyn.fix(select('resid 1233:1339 and resi 173:229'))
> dyn.setGroupList( fullgroupListsh3 )
> 

let's simplify this a bit:

bbStr = "(name N or name C or name CA or name O or name H or name HA)"

sh2Sel = AtomSel('resid 233:339')
sh2SideChainStr = "not " + bbStr + " and resid 233:339"

sh3Sel= AtomSel('resid 173:229')
sh3SideChainStr = "not " + bbStr + " and resid 173:229"

sh2aSel = AtomSel('resid 1233:1339')
sh2aSideChainStr = "not " + bbStr + " and resid 1233:1339"

sh3aSel= AtomSel('resid 1173:1229')
sh3aSideChainStr = "not " + bbStr + " and resid 1173:1229"

dyn.fix('resid 1233:1339 or resi 173:229') # note the change of 'and' to 'or'

from atomSel import intersection
dyn.group(intersection(sh2Sel,"not (%s)" % sh2SideChainStr))
dyn.group(intersection(sh3Sel,"not (%s)" % sh3SideChainStr))
dyn.group(intersection(sh2aSel,"not (%s)" % sh2aSideChainStr))
dyn.group(intersection(sh3aSel,"not (%s)" % sh3aSideChainStr))

you might see how this works.

best regards--
Charles
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8+ <http://mailcrypt.sourceforge.net/>

iD8DBQFJbjnOPK2zrJwS/lYRAiw0AJ9loFxLZHs2vD5mKfaANY8YuV1XSwCfZABM
I7OEtOUpwciVWVv+UcP3CEA=
=zf8u
-----END PGP SIGNATURE-----

Reply via email to