Hi all,

 

I want to fill a PDB files with missing residues. I use the  help from :

http://salilab.org/modeller/wiki/Missing%20residues

 

I just want to optimize by doing automatically the alignment. I try using salign_align2d.py, I change matrix, playing wih gap_penalties, …:

 

Alignment file:

---------------------------------------------------------------------------------------------------------

 

>P1;3DPL

structureX:3DPL.pdb: 401 :C:+465 :R:::-1.00:-1.00

ESKCPEELANYCDMLLRKTPLSKKLTSEEIEAKLKEVLKKLKYVQNKDVFMRYHKAHLTRRLILDISADSEIEEN

MVEWLREVGMPADYVNKLARMFQDIKVSEDLNQAFKEMHKNNALPADSVNIKILNAGAWSRSSEKVFVSLPTELE

DLIPEVEEFYKKNHSGRKLHWHHLMSNGIITFKNEVGQYDLEVTTFQLAVLFAWNQRPREKISFENLKLATELPD

AELRRTLWSLVAFPKLKRQVLLYEPQVNSPKDFTEGTLFSVNQEFSLIKNAKVQKRGKINLIGRLQLTTERMREE

ENEGIVQLRILRTQEAIIQIMKMRKKISNAQLQTELVEILKNMFLPQKKMIKEQIEWLIEHKYIRRDESDINTFI

YMA/KKRFEVKKWNAVALWAWDIVVDNCAICRNHIMDLCIECQANQASAECTVAWGVCNHAFHFHCISRWLKTRQ

VCPLDNREWEFQKYGH*

 

>P1;3DPL-full

sequence:3DPL-full:::::::2.60: 0.24

GSESKCPEELANYCDMLLRKTPLSKKLTSEEIEAKLKEVLKKLKYVQNKDVFMRYHKAHLTRRLILDISADSEIEEN

MVEWLREVGMPADYVNKLARMFQDIKVSEDLNQAFKEMHKNNKLALPADSVNIKILNAGAWSRSSEKVFVSLPTELE

DLIPEVEEFYKKNHSGRKLHWHHLMSNGIITFKNEVGQYDLEVTTFQLAVLFAWNQRPREKISFENLKLATELPD

AELRRTLWSLVAFPKLKRQVLLYEPQVNSPKDFTEGTLFSVNQEFSLIKNAKVQKRGKINLIGRLQLTTERMREE

ENEGIVQLRILRTQEAIIQIMKMRKKISNAQLQTELVEILKNMFLPQKKMIKEQIEWLIEHKYIRRDESDINTFI

YMA/GSMDVDTPSGTNSGAGKKRFEVKKWNAVALWAWDIVVDNCAICRNHIMDLCIECQANQASATSEECTVAWGVCNHAFHFHCISRWLKTRQ

VCPLDNREWEFQKYGH*

------------------------------------------------------------------------------------------------

Missing residues:

('1:A', '2:A'),

('120:A', '121:A'),

('383:B', '398:B'),

('444:B', '446:B'))

 

 

Script file:

----------------------------------------------------------------------------------------------------

# align2d/align using salign

 

# parameters to be input by the user

# 1.  gap_penalties_1d

# 2.  gap_penalties_2d

# 3.  input alignment file

 

from modeller import *

log.verbose()

env = environ()

env.io.atom_files_directory = ['../atom_files']

 

aln = alignment(env, file='align2d_in.ali', align_codes='all')

aln.salign(rr_file='$(LIB)/id.sim.mat',  # Substitution matrix used

           output='',

           max_gap_length=20,

           gap_function=True,              # If False then align2d not done

           feature_weights=(1., 0., 0., 0., 0., 0.),

           gap_penalties_1d=(-200, 0),

           gap_penalties_2d=(3.5, 3.5, 3.5, 0.2, 4.0, 6.5, 2.0, 0.0, 0.0),

           # d.p. score matrix

           #output_weights_file='salign.mtx'

           similarity_flag=True)   # Ensuring that the dynamic programming

                                   # matrix is not scaled to a difference matrix

aln.write(file='align2d.ali', alignment_format='PIR')

aln.write(file='align2d.pap', alignment_format='PAP')

------------------------------------------------------------------------------------------------

 

But the alignment in output is not perfect. Is there some parameters I can use to obtain the good alignment ?

 

Any suggestions or pointers would be most appreciate.

 

Aurélien