Hi,
I am trying to obtain a model by transfer_xyz method, using a template which have less than 30% homology. I want to copy the coordinates of the template and if there is a gap, then obtain coordinates for those regions using model.build(). But, I end up with a model in pieces i.e. Some regions are displaced and built elsewhere. Even for some of the residues for which there is template structure, I get long linear chains built. May be the .ali file is not being used in getting the model!
If transfer.xyz will not work if my the alignement has gaps in between, is there any other way to achieve this? I cannot exclude the gaps because, this will not serve the pupose of getting the template coordinates at equivalent regions where my model should have.
The .ali file is
>P1;1UW6
structureX:1UW6.pdb: 0 :E:215:E:undefined:undefined:-1.00:-1.00
EFDRADILYNIRQTSRPDVIPTQRD-RPVAVSVSLKFINILEVNEITNEVDVVFWQQTTWSDRTL
AWNSSHS--PDQVSVPISSLWVPDLAAYN-AISKPEVLTPQLARVVSDGEVLYMPSIRQRFS
CDVSGVDTESG-ATCRIKIGSWTHHSREISVDPTTE---------NSDDSEYFSQYSRFEIL
DVTQKKNSVTYSCCPEA-YEDVEVSLNFR*
>P1;NRmiss_210testb
sequence:NRmiss_210testb:0 :E:215 :E:::-1.00:-1.00
SVMEDTLLSVLFETYNPKVRPAQTVGDKVTVRVGLTLTNLLILNEKIEEMTTNVFLNLAWTDYRL
QWDPAAYEGIKKLRIPSSDVWQPDIVLMNNNDGSFEITLHVNVLVQHTGAVSWQPSAIYRSS
CTIKVMYFPFDWQNCTMVFKSYTYDTSEVTLQHALDAKGEREVKEIVINKDAFTENGQWSIE
HKPSRKNWR--SDDP--SYEDVTFYLIIQ*
.py file is
from modeller import *
from modeller.automodel import *
log.verbose()
env = environ()
env.libs.topology.read(file='$(LIB)/top_heav.lib')
env.libs.parameters.read(file='$(LIB)/par.lib')
aln = alignment(env, file='NRmiss_210anti_1UW6.ali', align_codes=('1UW6'))
aln.malign3d(fit=False)
aln.append(file='NRmiss_210anti_1UW6.ali', align_codes= 'NRmiss_210testb')
md1=model(env)
md1.generate_topology(aln['NRmiss_210testb'])
md1.transfer_xyz(aln)
md1.build(initialize_xyz=False, build_method='INTERNAL_COORDINATES')
md1.write(file='NRmiss_210testb.ini')
Any suggestions in this regard is appreciated.