Hi all,
I'm using diamond blastp as a (great) alternative for blastp, mainly in order to save time.
Although I made efforts to make the alignment with similar parameters as much as possible I find that in most of the cases ncbi blast will prefer smaller alignment length (with higher identity) than extending the alignment with the price of many mismatches (see commands below). Here is a representative example: NCBI blastp align 20aa with 16 identities (80%) diamond extended this alignment, from both sides resulting in alignment of 57aa with 33 identities (57%), with several consecutive mismatches. It does not seems to be for specific alignment because the histograms of %identity and alignment length looks different.
I'm pretty sure it is related to the -ungapped
flag in ncbi blastp.
So,
Any idea if there is an alternative to the -ungapped
flag in diamond?
Is there a way to prefer less mismatches and smaller alignment?
Commands:
blastp -query prot.faa -db blastdb -out blast.txt -matrix PAM30 \
-ungapped -comp_based_stats F -window_size 0 -xdrop_ungap 1 \
-evalue 1e-3
diamond blastp --query prot.faa --db diamond_db.dmnd \
--out diamond.txt --matrix PAM30 --comp-based-stats 0 \
--window 0 --evalue 1e-3
Thank you!
You may want to post this question on
diamond
forum. This would almost certainly require input from the program author. Please post their response (or link) here if you hear back.You could try setting
-k 0
will report all targets for which alignments were found. Otherwise 25 are reported.It seems there is no
--ungapped
option for diamond, there is one option which seems to be the equivalent of the-xdrop_ungap 1
you are using:You may also want to explore if removing the options related to ungapped alignments from blastp will return alignments more similar to your current diamond parameters:
edit: why are you experimenting with such uncommon options such as
-xdrop_ungap
?I've explored the removing the -ungapped flag from blast, it explains some of the difference. Unfortunately I'm try to mimic the blast results (including the ungapped) with diamond. The reason for -xdrop_ungap is unclear to me either (it is hardcoded in a tool I'm using, which I'm trying to replace with diamond), any way this flag seem to have negligible effect, unlike the -ungapped.