Dear all,
I am trying to construct a model with a ligand, a zinc ion, but I
failed.
Firstly, I did the alignment with align.py:
from modeller import *
env = environ()
aln = alignment(env)
mdl = model(env, file='1ze9',
model_segment=('FIRST:A','LAST:A'))
aln.append_model(mdl, align_codes='1ze9A',
atom_files='1EZ9.pdb')
aln.append(file='ABCD.ali', align_codes='ABCD')
aln.align2d()
aln.write(file='ABCD-1ze9.ali', alignment_format='PIR')
aln.write(file='ABCD-1ze9.pap', alignment_format='PAP')
align2d.py (END)
It finished successfully, and I got the aligned ali and pap
files:
ABCD-1ze9.ali:
>P1;1ze9A
structureX:1ZE9.pdb: 1 :A:+16 :A:::-1.00:-1.00
DAEFRHDSGYEVHHQK-*
>P1;ABCD
sequence:ABCD: : : : ::: 0.00: 0.00
DAEFRHDSGYEVHHQK.*
ABCD-1ze9.pap
_aln.pos 10
1ze9A DAEFRHDSGYEVHHQK-
ABCD DAEFRHDSGYEVHHQK.
_consrvd * * *** * ** ** ******
The template is a 16-residue peptide coordinate with a zinc
ion, which is residue 17 in the same chain A. The sequence of the
unknown structure is the same as the template's.
This is a test of how to construct a model with a ligand.
And then I tried to construct the model using model-single.py,
which is the same as the one in the manual:
from modeller import *
from modeller.automodel import *
log.verbose()
env = environ()
env.io.atom_files_directory = ['./:../atom_files']
# Read in HETATM records from template PDBs
env.io.hetatm = True
a = automodel(env, alnfile='ABCD-1ze9.ali',
knowns='1ze9A', sequence='ABCD',
assess_methods=(assess.DOPE,
assess.GA341))
a.starting_model = 1
a.ending_model = 5
a.make()
However, I failed to get the model, I get some error like this:
File "model-single.py", line 16, in ?
a.make()
File
"/usr/lib/modeller9.11/modlib/modeller/automodel/automodel.py",
line 96, in make
self.homcsr(exit_stage)
File
"/usr/lib/modeller9.11/modlib/modeller/automodel/automodel.py",
line 423, in homcsr
self.check_alignment(aln)
File
"/usr/lib/modeller9.11/modlib/modeller/automodel/automodel.py",
line 405, in check_alignment
aln.check()
File
"/usr/lib/modeller9.11/modlib/modeller/alignment.py", line
197, in check
self.check_structure_structure(io=io)
File
"/usr/lib/modeller9.11/modlib/modeller/alignment.py", line
206, in check_structure_structure
return f(self.modpt, io.modpt,
self.env.libs.modpt, eqvdst)
_modeller.ModellerError: read_te_290E> Number of
residues in the alignment and pdb files are different:
16 17 For alignment entry: 1 1ze9A
Right now, I guess that the error is coming from the alignment,
but I did not find how the alignment was done in the tutorial. So
could someone tell me how to solve this problem? Any suggestions
would be highly appreciated.
All the best,
Qinghua