Due Date: Monday, Feb 11, 11:59:59pm (i.e., before midnight)
In this assignment you will write a program to perform a local alignment of two protein sequences, using the BLOSUM62 scoring matrix. You must write your own program for the alignment, but you can use library functions (from biopython) to read the sequences and substitution matrices.
Here are the two sequences you have to align in FASTA format: seq1.txt, and seq2.txt. The BLOSUM62 data is here: BLOSUM62.txt
Write the basic method for linear gap penalty. Make the penalty an input parameter for your method.
Extend the code to handle affine gap penalties, i.e., a separate gap opening, and gap extension penalty. Both of these should be input parameters.
To check your code you may use these two short sequences:
>s1 HPQPATY >s2 HPQNQSPAAH
With gap opening penalty of -5 and gap extension penalty of -2, your output should match:
Best Local Alignment: score= 24.0 len= 10 seq1 pos= 0 6 seq2 pos= 0 9 HPQ---PATY HPQNQSPAAH
With gap opening penalty of -2 and gap extension penalty of -2 (i.e., a linear gap penalty of -2), your output should match:
Best Local Alignment: score= 27.0 len= 10 seq1 pos= 0 6 seq2 pos= 0 9 HP--Q-PATY HPQNQSPAAH
With gap opening penalty of -5 and gap extension penalty of -5 (i.e., a linear gap penalty of -5), your output should match:
Best Local Alignment: score= 20.0 len= 3 seq1 pos= 0 2 seq2 pos= 0 2 HPQ HPQ