I've been evaluating a Smith Waterman implementation with ncbi BLAST and found out that for the same alignment (with no gaps) the alignment scores differ between those two algorithms. Here is the example:
Query= O95477-X, Length= 2261
Smith Waterman (ssearch):
> sp|O95477|ABCA1_HUMAN ATP-binding cassette sub-family A member 1 OS=Homo
sapiens GN=ABCA1 PE=1 SV=3
Length=2261
Score = 11774, Expect = 0e+00
Identities = 2257/2261 (100%), Positives = 2258/2261 (100%), Gaps = 0/2261 (0%)
BLAST:
> sp|O95477|ABCA1_HUMAN ATP-binding cassette sub-family A member
1 OS=Homo sapiens GN=ABCA1 PE=1 SV=3
Length=2261
Score = 4684 bits (12148), Expect = 0.0, Method: Compositional matrix adjust.
Identities = 2257/2261 (99%), Positives = 2258/2261 (99%), Gaps = 0/2261 (0%)
The scores above are 11774 and 12148 (the actual alignments aren't pasted here due to their sizes). The search was done online (blast/ssearch web site) with the BLOSSUM62 matrix and the uniprot/sprot database.
My question is how does BLAST calculate the score 12148 (if that is the corresponding score) even though it uses the same matrix and gets the same alignment as ssearch.