On 11/27/13 4:09 AM, Simone Fulle wrote:
I want to use a multi-sequence alignment, align several template structures and the query sequence to it without changing the initial multi-sequence alignment.
...
aln.salign(output='', max_gap_length=20, gap_function=False, # to use structure-dependent gap penalty alignment_type='PAIRWISE', align_block=aln_block, feature_weights=(1., 0., 0., 0., 0., 0.), overhang=0, gap_penalties_1d=(-450, 0), gap_penalties_2d=(0.35, 1.2, 0.9, 1.2, 0.6, 8.6, 1.2, 0., 0.), similarity_flag=True)
Here you have requested a pairwise alignment. So what will happen is that Modeller will align the average of the first aln_block sequences (those read from test.pir) with the average of the remaining sequences (those read from alignment_test_structures.ali). The alignment between each sequence in test.pir will not be changed; neither will the alignment between each sequence in alignment_test_structures.ali.
Normally to get what you want I would read test.pir, then just a single sequence from alignment_test_structures.ali, and do the pairwise alignment as in your script. Repeat for each sequence in alignment_test_structures.ali. Unfortunately you can't do it with a single call to SALIGN (alignment_type='PROGRESSIVE' is essentially the behavior you want, but that ignores align_block).
Ben Webb, Modeller Caretaker -- http://www.salilab.org/modeller/ Modeller mail list: http://salilab.org/mailman/listinfo/modeller_usage