<p>There's no right way to use tBLASTn for global alignment. BLAST - in all its various clothes - is a Basic <em>Local</em> Alignment Search Tool, which means that hits will always be split up into high-scoring subsequence alignments.</p>
<p>If you want to align an entire protein, then you need to use a program that does <em>global</em> alignment. For example, the <code>needle</code> tool from the EMBOSS suite:</p>
<p><a href="https://www.ebi.ac.uk/jdispatcher/psa/emboss_needle" rel="nofollow noreferrer">https://www.ebi.ac.uk/jdispatcher/psa/emboss_needle</a></p>

CC BY-SA 4.0
2024-12-31T04:44:53.577Z
2024-12-31T10:58:45.097Z
2024-12-31T10:58:45.097Z
gringer
<p>I'm using tblastn (local installation of NCBI BLAST 2.16) with several unannotated genomes to compare certain genes across related species and determine if any of them are duplicated. When I use an entire protein as the query, the exons are returned as separate hits and the alignment includes what must be parts of the introns. The -max_intron_length argument is supposed to enable linking alignments across intron-exon boundaries, but setting this to a high value doesn't change the results. For example, here are the first two hits using the protein-coding sequence for Monodelphis domestica OPN1SW from NCBI as the query and the genome for Didelphis virginiana from DNA Zoo as the database (the command used was <code>~/ncbi-blast-2.16.0+/bin/tblastn -db ~/blastdb/Virginia_opossum_2K_assembly.fasta -query protein.faa -max_intron_length 10000 -evalue 0.00001 -seg no -out scratch.txt</code>).</p>
<pre><code>
 Score = 235 bits (599),  Expect(2) = 1e-87, Method: Compositional matrix adjust.
 Identities = 111/118 (94%), Positives = 116/118 (98%), Gaps = 0/118 (0%)
 Frame = -3

Query  1          MSGDEEFYLFKNISSVGPWDGPQYHIAPAWAFHFQTVFMGFVFCAGTPLNAVVLVATLRY  60
                  MSGDEEFYLFKNISSVGPWDGPQ+HIAPAWAFHFQT+FMGFVFCAGTPLNAVVLVATLRY
Sbjct  159377693  MSGDEEFYLFKNISSVGPWDGPQHHIAPAWAFHFQTIFMGFVFCAGTPLNAVVLVATLRY  159377514

Query  61         KKLRQPLNYILVNVSLCGFIFCLFAVFTVFISSSQGYFIFGRHVCAMEAFLGSVAGLV  118
                  KKLRQPLNYILVNVSL GFIFC+FAVFTVFISSS+GYF+FGRHVCAMEAFLGSVAG V
Sbjct  159377513  KKLRQPLNYILVNVSLSGFIFCIFAVFTVFISSSRGYFVFGRHVCAMEAFLGSVAGTV  159377340


 Score = 119 bits (299),  Expect(2) = 1e-87, Method: Compositional matrix adjust.
 Identities = 57/70 (81%), Positives = 62/70 (89%), Gaps = 0/70 (0%)
 Frame = -2

Query  115        AGLVTGWSLAFLAFERFIVICKPFGNFRFNSKHAMMVVLATWVIGIGVSIPPFFGWSRFI  174
                  +GLV GWSLAFLAFERF+VICKPFGNFRFN+KHAMMVVLATWVIGIGVSIPPFFGWSR  
Sbjct  159376827  SGLVMGWSLAFLAFERFVVICKPFGNFRFNAKHAMMVVLATWVIGIGVSIPPFFGWSR*E  159376648

Query  175        PEGLQCSCGP  184
                     L+ + GP
Sbjct  159376647  EMRLRVNLGP  159376618
</code></pre>
<p>What mistake am I making here? Is there a better way to do what I'm trying to do? The only solution I've found is searching for each of the exons separately, which seems needlessly awkward. I'm new to working with this kind of thing, so I may be missing something obvious. I've found some other questions on this site relating to finding orthologs and paralogs, like <a href="https://bioinformatics.stackexchange.com/questions/22392/how-do-i-identify-gene-duplication-or-paralogs-in-an-annotated-reference-genome">this one</a>, but they don't address the specific issue I'm having.</p>

<blast><ncbi><orthologues><duplications><paralogs>
What's the right way to use tblastn with a complete protein sequence and an unannotated genome?
# What's the right way to use tblastn with a complete protein sequence and an unannotated genome?

(Asked by: username_0 on 2024-12-30)

I'm using tblastn (local installation of NCBI BLAST 2.16) with several unannotated genomes to compare certain genes across related species and determine if any of them are duplicated. When I use an entire protein as the query, the exons are returned as separate hits and the alignment includes what must be parts of the introns. The -max_intron_length argument is supposed to enable linking alignments across intron-exon boundaries, but setting this to a high value doesn't change the results. For example, here are the first two hits using the protein-coding sequence for Monodelphis domestica OPN1SW from NCBI as the query and the genome for Didelphis virginiana from DNA Zoo as the database (the command used was ~/ncbi-blast-2.16.0+/bin/tblastn -db ~/blastdb/Virginia_opossum_2K_assembly.fasta -query protein.faa -max_intron_length 10000 -evalue 0.00001 -seg no -out scratch.txt).

 Score = 235 bits (599),  Expect(2) = 1e-87, Method: Compositional matrix adjust.
 Identities = 111/118 (94%), Positives = 116/118 (98%), Gaps = 0/118 (0%)
 Frame = -3

Query  1          MSGDEEFYLFKNISSVGPWDGPQYHIAPAWAFHFQTVFMGFVFCAGTPLNAVVLVATLRY  60
                  MSGDEEFYLFKNISSVGPWDGPQ+HIAPAWAFHFQT+FMGFVFCAGTPLNAVVLVATLRY
Sbjct  159377693  MSGDEEFYLFKNISSVGPWDGPQHHIAPAWAFHFQTIFMGFVFCAGTPLNAVVLVATLRY  159377514

Query  61         KKLRQPLNYILVNVSLCGFIFCLFAVFTVFISSSQGYFIFGRHVCAMEAFLGSVAGLV  118
                  KKLRQPLNYILVNVSL GFIFC+FAVFTVFISSS+GYF+FGRHVCAMEAFLGSVAG V
Sbjct  159377513  KKLRQPLNYILVNVSLSGFIFCIFAVFTVFISSSRGYFVFGRHVCAMEAFLGSVAGTV  159377340


 Score = 119 bits (299),  Expect(2) = 1e-87, Method: Compositional matrix adjust.
 Identities = 57/70 (81%), Positives = 62/70 (89%), Gaps = 0/70 (0%)
 Frame = -2

Query  115        AGLVTGWSLAFLAFERFIVICKPFGNFRFNSKHAMMVVLATWVIGIGVSIPPFFGWSRFI  174
                  +GLV GWSLAFLAFERF+VICKPFGNFRFN+KHAMMVVLATWVIGIGVSIPPFFGWSR  
Sbjct  159376827  SGLVMGWSLAFLAFERFVVICKPFGNFRFNAKHAMMVVLATWVIGIGVSIPPFFGWSR*E  159376648

Query  175        PEGLQCSCGP  184
                     L+ + GP
Sbjct  159376647  EMRLRVNLGP  159376618

What mistake am I making here? Is there a better way to do what I'm trying to do? The only solution I've found is searching for each of the exons separately, which seems needlessly awkward. I'm new to working with this kind of thing, so I may be missing something obvious. I've found some other questions on this site relating to finding orthologs and paralogs, like this one, but they don't address the specific issue I'm having.

**Tags:** blast, ncbi, orthologues, duplications, paralogs

---

## 1 answers

### Answer by username_1 on 2024-12-31. Score: 0

There's no right way to use tBLASTn for global alignment. BLAST - in all its various clothes - is a Basic *Local* Alignment Search Tool, which means that hits will always be split up into high-scoring subsequence alignments.

If you want to align an entire protein, then you need to use a program that does *global* alignment. For example, the `needle` tool from the EMBOSS suite:

<https://www.ebi.ac.uk/jdispatcher/psa/emboss_needle>


---

