[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[modeller_usage] fix_offsets to align certain residues



Hi,
I'm trying to figure out how to use fix_offsets with align2d.  Please follow this example, based on
the 
salign() example (under the 'Alignments using external restraints subsection') in the manual.

Here is the input file, fix_positions.ali
>P1;1abc
sequence:1abc:1::10:: : :-1.00:-1.00
FGAVAFATTT*
>P1;1def
sequence:1def: :: :: : :-1.00:-1.00
AVAFATTT*
>P1;_fix_pos
sequence:x: :: :: : :-1.00:-1.00
0000000000*

Following is the .py file.  I've removed the comments but it's taken directly from the manual
log.verbose()
env = environ()
aln = alignment(env, file='fix_positions.ali', align_codes=('1abc', '1def',
                                                            '_fix_pos'))
aln.salign(fix_offsets=(0, 1000, 2000, 3000, 4000),
           gap_penalties_2d=(0, 0, 0, 0, 0, 0, 0, 0, 0), # Any values are
                                                         # possible here
           local_alignment=False, # Local alignment works, too
           gap_penalties_1d=(-600, -400)) # This is best with the default value
                                          # of gap_penalties_2d
aln.write(file='fix_positions_salign.pap', alignment_format='PAP')



If I run this, I will get an alignment of:
 _aln.pos         10
1abc      FGAVAFATTT 
1def      --AVAFATTT 
 _consrvd   ********

But suppose I want to force the first Alanine in 1abc to be aligned with the 2nd Alanine in 1def.  I
want 
modeller to align all other residues normally (as it normally would without any fix_offsets).  

So I want something that would _probably_ look like this:
 _aln.pos         10
1abc      FGAVAFATTT 
1def      AVA--FATTT 
 _consrvd   ********
The only thing that matters is that the first A in 1abc is forced to align with the 2nd A in 1def.

How do I get these particular Ala residues to be forced to align using _fix_pos input in the
alignment 
file?  Specifically, what would I need to put in place of the zeros below?
>P1;_fix_pos
sequence:x: :: :: : :-1.00:-1.00
0000000000*

I've been playing around with it but can't seem to get it work correctly.

To ask the question a different way, given two sequnces, A and B, how does one tell Modeller the 
residue #X of sequence A must be aligned with residue #Y of sequence B.

Thank you,
Jim Fonseca