BLAST+-Teaching: Difference between revisions

From Research Computing Center Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
[[Category:Teaching]][[Category:Software]][[Category:Bioinformatics]]
[[Category:Teaching]][[Category:Software]][[Category:Bioinformatics]]
=== Category ===
=== Category ===


Line 9: Line 9:


=== Version ===
=== Version ===
2.9.0
 
2.12.0, 2.13.0
 
=== Author / Distributor ===
=== Author / Distributor ===
   
   
[http://blast.ncbi.nlm.nih.gov/ BLAST+]
[http://www.ncbi.nlm.nih.gov/ NCBI]
 
=== Description ===
   
   
=== Description ===
Basic Local Alignment Search Tool, or BLAST, is an algorithm for comparing primary biological sequence information, such as the amino-acid sequences of different proteins or the nucleotides of DNA sequences. More information: http://blast.ncbi.nlm.nih.gov/
"Basic Local Alignment Search Tool, or BLAST, is an algorithm for comparing primary biological sequence information, such as the amino-acid sequences of different proteins or the nucleotides of DNA sequences."
More details are at [http://blast.ncbi.nlm.nih.gov/ BLAST+]


=== Running Program ===
=== Running Program ===


The last version of this application is at /apps/eb/BLAST+/2.9.0-gompi-2019b
Also refer to [[Running Jobs on Teaching]]


To use this version, please load the module with
To find all versions of BLAST+ installed on the teaching cluster, please use module spider command to do a search, as shown below:
<pre class="gscript">
<pre class="gscript">
ml BLAST+/2.9.0-gompi-2019b
module spider BLAST+
</pre>  
</pre>


Here is an example of a shell script, sub.sh, to run on the batch queue:
Datasets are located in the commonly shared "/db" filesystem. NCBI BLAST datasets are pre-formatted to work with BLAST and BLAST+ and are located in "/db/ncbiblast/" and are organized by date.


<div class="gscript2">
To use BLAST+ version 2.13.0, please first load the module, for example:
<nowiki>#</nowiki>!/bin/bash<br>
<pre class="gscript">
<nowiki>#</nowiki>SBATCH --job-name=j_BLAST+<br>
module load BLAST+/2.13.0-gompi-2022a
<nowiki>#</nowiki>SBATCH --partition=batch<br>       
</pre>
<nowiki>#</nowiki>SBATCH --mail-type=ALL<br>
 
<nowiki>#</nowiki>SBATCH --mail-user=<u>username@uga.edu</u><br> 
Example of a shell script sub.sh to run blastn on the batch partition:
<nowiki>#</nowiki>SBATCH --ntasks=<u>1</u><br> 
<pre class="gscript">
<nowiki>#</nowiki>SBATCH --mem=<u>10gb</u><br>   
#!/bin/bash
<nowiki>#</nowiki>SBATCH --time=<u>08:00:00</u><br> 
#SBATCH --job-name=j_BLAST+
<nowiki>#</nowiki>SBATCH --output=BLAST+.%j.out<br>
#SBATCH --partition=batch
<nowiki>#</nowiki>SBATCH --error=BLAST+.%j.err<br>
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
cd $SLURM_SUBMIT_DIR<br>
#SBATCH --ntasks=1
ml BLAST+/2.9.0-gompi-2019b<br>   
#SBATCH --mem=10gb
blastn <u>[options]</u><br> 
#SBATCH --time=08:00:00
</div>
#SBATCH --output=BLAST+.%j.out
In the real submission script, at least all the above underlined values need to be reviewed or to be replaced by the proper values. 
#SBATCH --error=BLAST+.%j.err
cd $SLURM_SUBMIT_DIR
ml BLAST+/2.13.0-gompi-2020b
ml ncbiblastdb/20230802
blastn [options]
</pre>  


Please refer to [[Running_Jobs_on_the_teaching_cluster]], [[Running_Jobs_on_the_teaching_cluster#Running_an_X-windows_application | Run X window Jobs]] and [[Running_Jobs_on_the_teaching_cluster#How_to_open_an_interactive_session | Run interactive Jobs]] for more details of running jobs at Teaching cluster.


where [options] need to be replaced by the options (command and arguments) you want to use.  Other parameters of the job, such as the maximum wall clock time, maximum memory, the number of nodes and cores per node, and the job name need to be modified appropriately as well.


Here is an example of job submission command:
Submit the job to the queue with
<pre  class="gcommand">
<pre  class="gcommand">
sbatch ./sub.sh  
sbatch ./sub.sh
</pre>
</pre>


=== Running BLAST+ with multiple threads ===
Some BLAST+ commands, such as blastn, have the option to use multiple threads with the -num_threads option. Each thread should be run on one core, so the number of cpus you should request should be equal to -num_threads + 1. This accounts for the number of worker threads plus one main process thread.
To request cores, use the slurm header #SBATCH --cpus-per-task.
Below is an example, with -num_threads 8
<pre class="gscript">
#!/bin/bash
#SBATCH --job-name=j_BLAST+_multithread
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=9
#SBATCH --mem=10gb
#SBATCH --time=08:00:00
#SBATCH --output=BLAST+.%j.out
#SBATCH --error=BLAST+.%j.err
cd $SLURM_SUBMIT_DIR
ml BLAST+/2.13.0-gompi-2022a
ml ncbiblastdb/20230802
blastn -num_threads 8 -query example.fasta -out results.out -db nt
</pre>
=== Documentation ===
=== Documentation ===
[[#blastn| jump to blastn]]; [[#blastp| jump to blastp]]; [[#blastx| jump to blastx]]; [[#makeblastdb| jump to makeblastdb]]; [[#top|Back to Top]]
<pre  class="gcommand">
ml BLAST+/2.9.0-gompi-2019b
blastn -h


<span id="blastn"></span>
<pre  class="gcommand">
module load  BLAST+/2.13.0-gompi-2022a
blastn  -help
USAGE
USAGE
   blastn [-h] [-help] [-import_search_strategy filename]
   blastn [-h] [-help] [-import_search_strategy filename]
Line 75: Line 105:
     [-perc_identity float_value] [-qcov_hsp_perc float_value]
     [-perc_identity float_value] [-qcov_hsp_perc float_value]
     [-max_hsps int_value] [-xdrop_ungap float_value] [-xdrop_gap float_value]
     [-max_hsps int_value] [-xdrop_ungap float_value] [-xdrop_gap float_value]
     [-xdrop_gap_final float_value] [-searchsp int_value] [-penalty penalty]
     [-xdrop_gap_final float_value] [-searchsp int_value]
    [-reward reward] [-no_greedy] [-min_raw_gapped_score int_value]
    [-sum_stats bool_value] [-penalty penalty] [-reward reward] [-no_greedy]
    [-template_type type] [-template_length int_value] [-dust DUST_options]
    [-min_raw_gapped_score int_value] [-template_type type]
    [-template_length int_value] [-dust DUST_options]
     [-filtering_db filtering_database]
     [-filtering_db filtering_database]
     [-window_masker_taxid window_masker_taxid]
     [-window_masker_taxid window_masker_taxid]
Line 89: Line 120:
     [-line_length line_length] [-html] [-sorthits sort_hits]
     [-line_length line_length] [-html] [-sorthits sort_hits]
     [-sorthsps sort_hsps] [-max_target_seqs num_sequences]
     [-sorthsps sort_hsps] [-max_target_seqs num_sequences]
     [-num_threads int_value] [-remote] [-version]
     [-num_threads int_value] [-mt_mode int_value] [-remote] [-version]


DESCRIPTION
DESCRIPTION
   Nucleotide-Nucleotide BLAST 2.9.0+
   Nucleotide-Nucleotide BLAST 2.13.0+
 
OPTIONAL ARGUMENTS
-h
  Print USAGE and DESCRIPTION;  ignore all other parameters
-help
  Print USAGE, DESCRIPTION and ARGUMENTS; ignore all other parameters
-version
  Print version number;  ignore other arguments
 
*** Input query options
-query <File_In>
  Input file name
  Default = `-'
-query_loc <String>
  Location on the query sequence in 1-based offsets (Format: start-stop)
-strand <String, `both', `minus', `plus'>
  Query strand(s) to search against database/subject
  Default = `both'
 
*** General search options
-task <String, Permissible values: 'blastn' 'blastn-short' 'dc-megablast'
                'megablast' 'rmblastn' >
  Task to execute
  Default = `megablast'
-db <String>
  BLAST database name
    * Incompatible with:  subject, subject_loc
-out <File_Out, file name length < 256>
  Output file name
  Default = `-'
-evalue <Real>
  Expectation value (E) threshold for saving hits
  Default = `10'
-word_size <Integer, >=4>
  Word size for wordfinder algorithm (length of best perfect match)
-gapopen <Integer>
  Cost to open a gap
-gapextend <Integer>
  Cost to extend a gap
-penalty <Integer, <=0>
  Penalty for a nucleotide mismatch
-reward <Integer, >=0>
  Reward for a nucleotide match
-use_index <Boolean>
  Use MegaBLAST database index
  Default = `false'
-index_name <String>
  MegaBLAST database index name (deprecated; use only for old style indices)
 
*** BLAST-2-Sequences options
-subject <File_In>
  Subject sequence(s) to search
    * Incompatible with:  db, gilist, seqidlist, negative_gilist,
  negative_seqidlist, taxids, taxidlist, negative_taxids, negative_taxidlist,
  db_soft_mask, db_hard_mask
-subject_loc <String>
  Location on the subject sequence in 1-based offsets (Format: start-stop)
    * Incompatible with:  db, gilist, seqidlist, negative_gilist,
  negative_seqidlist, taxids, taxidlist, negative_taxids, negative_taxidlist,
  db_soft_mask, db_hard_mask, remote
 
*** Formatting options
-outfmt <String>
  alignment view options:
    0 = Pairwise,
    1 = Query-anchored showing identities,
    2 = Query-anchored no identities,
    3 = Flat query-anchored showing identities,
    4 = Flat query-anchored no identities,
    5 = BLAST XML,
    6 = Tabular,
    7 = Tabular with comment lines,
    8 = Seqalign (Text ASN.1),
    9 = Seqalign (Binary ASN.1),
    10 = Comma-separated values,
    11 = BLAST archive (ASN.1),
    12 = Seqalign (JSON),
    13 = Multiple-file BLAST JSON,
    14 = Multiple-file BLAST XML2,
    15 = Single-file BLAST JSON,
    16 = Single-file BLAST XML2,
    17 = Sequence Alignment/Map (SAM),
    18 = Organism Report
 
  Options 6, 7, 10 and 17 can be additionally configured to produce
  a custom format specified by space delimited format specifiers,
  or in the case of options 6, 7, and 10, by a token specified
  by the delim keyword. E.g.: "17 delim=@ qacc sacc score".
  The delim keyword must appear after the numeric output format
  specification.
  The supported format specifiers for options 6, 7 and 10 are:
      qseqid means Query Seq-id
        qgi means Query GI
        qacc means Query accesion
    qaccver means Query accesion.version
        qlen means Query sequence length
      sseqid means Subject Seq-id
  sallseqid means All subject Seq-id(s), separated by a ';'
        sgi means Subject GI
      sallgi means All subject GIs
        sacc means Subject accession
    saccver means Subject accession.version
    sallacc means All subject accessions
        slen means Subject sequence length
      qstart means Start of alignment in query
        qend means End of alignment in query
      sstart means Start of alignment in subject
        send means End of alignment in subject
        qseq means Aligned part of query sequence
        sseq means Aligned part of subject sequence
      evalue means Expect value
    bitscore means Bit score
      score means Raw score
      length means Alignment length
      pident means Percentage of identical matches
      nident means Number of identical matches
    mismatch means Number of mismatches
    positive means Number of positive-scoring matches
    gapopen means Number of gap openings
        gaps means Total number of gaps
        ppos means Percentage of positive-scoring matches
      frames means Query and subject frames separated by a '/'
      qframe means Query frame
      sframe means Subject frame
        btop means Blast traceback operations (BTOP)
      staxid means Subject Taxonomy ID
    ssciname means Subject Scientific Name
    scomname means Subject Common Name
  sblastname means Subject Blast Name
  sskingdom means Subject Super Kingdom
    staxids means unique Subject Taxonomy ID(s), separated by a ';'
  (in numerical order)
  sscinames means unique Subject Scientific Name(s), separated by a ';'
  scomnames means unique Subject Common Name(s), separated by a ';'
  sblastnames means unique Subject Blast Name(s), separated by a ';'
  (in alphabetical order)
  sskingdoms means unique Subject Super Kingdom(s), separated by a ';'
  (in alphabetical order)
      stitle means Subject Title
  salltitles means All Subject Title(s), separated by a '<>'
    sstrand means Subject Strand
      qcovs means Query Coverage Per Subject
    qcovhsp means Query Coverage Per HSP
      qcovus means Query Coverage Per Unique Subject (blastn only)
  When not provided, the default value is:
  'qaccver saccver pident length mismatch gapopen qstart qend sstart send
  evalue bitscore', which is equivalent to the keyword 'std'
  The supported format specifier for option 17 is:
          SQ means Include Sequence Data
          SR means Subject as Reference Seq
  Default = `0'
-show_gis
  Show NCBI GIs in deflines?
-num_descriptions <Integer, >=0>
  Number of database sequences to show one-line descriptions for
  Not applicable for outfmt > 4
  Default = `500'
    * Incompatible with:  max_target_seqs
-num_alignments <Integer, >=0>
  Number of database sequences to show alignments for
  Default = `250'
    * Incompatible with:  max_target_seqs
-line_length <Integer, >=1>
  Line length for formatting alignments
  Not applicable for outfmt > 4
  Default = `60'
-html
  Produce HTML output?
-sorthits <Integer, (>=0 and =<4)>
  Sorting option for hits:
  alignment view options:
    0 = Sort by evalue,
    1 = Sort by bit score,
    2 = Sort by total score,
    3 = Sort by percent identity,
    4 = Sort by query coverage
  Not applicable for outfmt > 4
-sorthsps <Integer, (>=0 and =<4)>
  Sorting option for hps:
    0 = Sort by hsp evalue,
    1 = Sort by hsp score,
    2 = Sort by hsp query start,
    3 = Sort by hsp percent identity,
    4 = Sort by hsp subject start
  Not applicable for outfmt != 0
 
*** Query filtering options
-dust <String>
  Filter query sequence with DUST (Format: 'yes', 'level window linker', or
  'no' to disable)
  Default = `20 64 1'
-filtering_db <String>
  BLAST database containing filtering elements (i.e.: repeats)
-window_masker_taxid <Integer>
  Enable WindowMasker filtering using a Taxonomic ID
-window_masker_db <String>
  Enable WindowMasker filtering using this repeats database.
-soft_masking <Boolean>
  Apply filtering locations as soft masks
  Default = `true'
-lcase_masking
  Use lower case filtering in query and subject sequence(s)?
 
*** Restrict search or results
-gilist <String>
  Restrict search of database to list of GIs
    * Incompatible with:  seqidlist, taxids, taxidlist, negative_gilist,
  negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-seqidlist <String>
  Restrict search of database to list of SeqIDs
    * Incompatible with:  gilist, taxids, taxidlist, negative_gilist,
  negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-negative_gilist <String>
  Restrict search of database to everything except the specified GIs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
  negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-negative_seqidlist <String>
  Restrict search of database to everything except the specified SeqIDs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
  negative_gilist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-taxids <String>
  Restrict search of database to include only the specified taxonomy IDs
  (multiple IDs delimited by ',')
    * Incompatible with:  gilist, seqidlist, taxidlist, negative_gilist,
  negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-negative_taxids <String>
  Restrict search of database to everything except the specified taxonomy IDs
  (multiple IDs delimited by ',')
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
  negative_gilist, negative_seqidlist, negative_taxidlist, remote, subject,
  subject_loc
-taxidlist <String>
  Restrict search of database to include only the specified taxonomy IDs
    * Incompatible with:  gilist, seqidlist, taxids, negative_gilist,
  negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
  subject_loc
-negative_taxidlist <String>
  Restrict search of database to everything except the specified taxonomy IDs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
  negative_gilist, negative_seqidlist, negative_taxids, remote, subject,
  subject_loc
-entrez_query <String>
  Restrict search with the given Entrez query
    * Requires:  remote
-db_soft_mask <String>
  Filtering algorithm ID to apply to the BLAST database as soft masking
    * Incompatible with:  db_hard_mask, subject, subject_loc
-db_hard_mask <String>
  Filtering algorithm ID to apply to the BLAST database as hard masking
    * Incompatible with:  db_soft_mask, subject, subject_loc
-perc_identity <Real, 0..100>
  Percent identity
-qcov_hsp_perc <Real, 0..100>
  Percent query coverage per hsp
-max_hsps <Integer, >=1>
  Set maximum number of HSPs per subject sequence to save for each query
-culling_limit <Integer, >=0>
  If the query range of a hit is enveloped by that of at least this many
  higher-scoring hits, delete the hit
    * Incompatible with:  best_hit_overhang, best_hit_score_edge
-best_hit_overhang <Real, (>0 and <0.5)>
  Best Hit algorithm overhang value (recommended value: 0.1)
    * Incompatible with:  culling_limit
-best_hit_score_edge <Real, (>0 and <0.5)>
  Best Hit algorithm score edge value (recommended value: 0.1)
    * Incompatible with:  culling_limit
-subject_besthit
  Turn on best hit per subject sequence
-max_target_seqs <Integer, >=1>
  Maximum number of aligned sequences to keep
  (value of 5 or more is recommended)
  Default = `500'
    * Incompatible with:  num_descriptions, num_alignments
 
*** Discontiguous MegaBLAST options
-template_type <String, `coding', `coding_and_optimal', `optimal'>
  Discontiguous MegaBLAST template type
    * Requires:  template_length
-template_length <Integer, Permissible values: '16' '18' '21' >
  Discontiguous MegaBLAST template length
    * Requires:  template_type
 
*** Statistical options
-dbsize <Int8>
  Effective length of the database
-searchsp <Int8, >=0>
  Effective length of the search space
-sum_stats <Boolean>
  Use sum statistics
 
*** Search strategy options
-import_search_strategy <File_In>
  Search strategy to use
    * Incompatible with:  export_search_strategy
-export_search_strategy <File_Out>
  File name to record the search strategy used
    * Incompatible with:  import_search_strategy
 
*** Extension options
-xdrop_ungap <Real>
  X-dropoff value (in bits) for ungapped extensions
-xdrop_gap <Real>
  X-dropoff value (in bits) for preliminary gapped extensions
-xdrop_gap_final <Real>
  X-dropoff value (in bits) for final gapped alignment
-no_greedy
  Use non-greedy dynamic programming extension
-min_raw_gapped_score <Integer>
  Minimum raw gapped score to keep an alignment in the preliminary gapped and
  traceback stages
-ungapped
  Perform ungapped alignment only?
-window_size <Integer, >=0>
  Multiple hits window size, use 0 to specify 1-hit algorithm
-off_diagonal_range <Integer, >=0>
  Number of off-diagonals to search for the 2nd hit, use 0 to turn off
  Default = `0'
 
*** Miscellaneous options
-parse_deflines
  Should the query and subject defline(s) be parsed?
-num_threads <Integer, >=1>
  Number of threads (CPUs) to use in the BLAST search
  Default = `1'
    * Incompatible with:  remote
-mt_mode <Integer, (>=0 and =<1)>
  Multi-thread mode to use in BLAST search:
    0 (auto) split by database
    1 split by queries
  Default = `0'
    * Requires:  num_threads
-remote
  Execute search remotely?
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
  negative_gilist, negative_seqidlist, negative_taxids, negative_taxidlist,
  subject_loc, num_threads


Use '-help' to print detailed descriptions of command line arguments
</pre>
</pre>
[[#top|Back to Top]]
[[#top|Back to Top]]



Revision as of 10:52, 5 September 2023

Category

Bioinformatics

Program On

Teaching

Version

2.12.0, 2.13.0

Author / Distributor

NCBI

Description

Basic Local Alignment Search Tool, or BLAST, is an algorithm for comparing primary biological sequence information, such as the amino-acid sequences of different proteins or the nucleotides of DNA sequences. More information: http://blast.ncbi.nlm.nih.gov/

Running Program

Also refer to Running Jobs on Teaching

To find all versions of BLAST+ installed on the teaching cluster, please use module spider command to do a search, as shown below:

module spider BLAST+

Datasets are located in the commonly shared "/db" filesystem. NCBI BLAST datasets are pre-formatted to work with BLAST and BLAST+ and are located in "/db/ncbiblast/" and are organized by date.

To use BLAST+ version 2.13.0, please first load the module, for example:

module load BLAST+/2.13.0-gompi-2022a

Example of a shell script sub.sh to run blastn on the batch partition:

#!/bin/bash
#SBATCH --job-name=j_BLAST+
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=1
#SBATCH --mem=10gb
#SBATCH --time=08:00:00
#SBATCH --output=BLAST+.%j.out
#SBATCH --error=BLAST+.%j.err
cd $SLURM_SUBMIT_DIR
ml BLAST+/2.13.0-gompi-2020b
ml ncbiblastdb/20230802
blastn [options]


where [options] need to be replaced by the options (command and arguments) you want to use. Other parameters of the job, such as the maximum wall clock time, maximum memory, the number of nodes and cores per node, and the job name need to be modified appropriately as well.

Submit the job to the queue with

sbatch ./sub.sh

Running BLAST+ with multiple threads

Some BLAST+ commands, such as blastn, have the option to use multiple threads with the -num_threads option. Each thread should be run on one core, so the number of cpus you should request should be equal to -num_threads + 1. This accounts for the number of worker threads plus one main process thread.

To request cores, use the slurm header #SBATCH --cpus-per-task.

Below is an example, with -num_threads 8

#!/bin/bash
#SBATCH --job-name=j_BLAST+_multithread
#SBATCH --partition=batch
#SBATCH --mail-type=ALL
#SBATCH --mail-user=username@uga.edu
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=9
#SBATCH --mem=10gb
#SBATCH --time=08:00:00
#SBATCH --output=BLAST+.%j.out
#SBATCH --error=BLAST+.%j.err
cd $SLURM_SUBMIT_DIR
ml BLAST+/2.13.0-gompi-2022a
ml ncbiblastdb/20230802
blastn -num_threads 8 -query example.fasta -out results.out -db nt

Documentation

jump to blastn; jump to blastp; jump to blastx; jump to makeblastdb; Back to Top

 
module load  BLAST+/2.13.0-gompi-2022a
blastn  -help
USAGE
  blastn [-h] [-help] [-import_search_strategy filename]
    [-export_search_strategy filename] [-task task_name] [-db database_name]
    [-dbsize num_letters] [-gilist filename] [-seqidlist filename]
    [-negative_gilist filename] [-negative_seqidlist filename]
    [-taxids taxids] [-negative_taxids taxids] [-taxidlist filename]
    [-negative_taxidlist filename] [-entrez_query entrez_query]
    [-db_soft_mask filtering_algorithm] [-db_hard_mask filtering_algorithm]
    [-subject subject_input_file] [-subject_loc range] [-query input_file]
    [-out output_file] [-evalue evalue] [-word_size int_value]
    [-gapopen open_penalty] [-gapextend extend_penalty]
    [-perc_identity float_value] [-qcov_hsp_perc float_value]
    [-max_hsps int_value] [-xdrop_ungap float_value] [-xdrop_gap float_value]
    [-xdrop_gap_final float_value] [-searchsp int_value]
    [-sum_stats bool_value] [-penalty penalty] [-reward reward] [-no_greedy]
    [-min_raw_gapped_score int_value] [-template_type type]
    [-template_length int_value] [-dust DUST_options]
    [-filtering_db filtering_database]
    [-window_masker_taxid window_masker_taxid]
    [-window_masker_db window_masker_db] [-soft_masking soft_masking]
    [-ungapped] [-culling_limit int_value] [-best_hit_overhang float_value]
    [-best_hit_score_edge float_value] [-subject_besthit]
    [-window_size int_value] [-off_diagonal_range int_value]
    [-use_index boolean] [-index_name string] [-lcase_masking]
    [-query_loc range] [-strand strand] [-parse_deflines] [-outfmt format]
    [-show_gis] [-num_descriptions int_value] [-num_alignments int_value]
    [-line_length line_length] [-html] [-sorthits sort_hits]
    [-sorthsps sort_hsps] [-max_target_seqs num_sequences]
    [-num_threads int_value] [-mt_mode int_value] [-remote] [-version]

DESCRIPTION
   Nucleotide-Nucleotide BLAST 2.13.0+

OPTIONAL ARGUMENTS
 -h
   Print USAGE and DESCRIPTION;  ignore all other parameters
 -help
   Print USAGE, DESCRIPTION and ARGUMENTS; ignore all other parameters
 -version
   Print version number;  ignore other arguments

 *** Input query options
 -query <File_In>
   Input file name
   Default = `-'
 -query_loc <String>
   Location on the query sequence in 1-based offsets (Format: start-stop)
 -strand <String, `both', `minus', `plus'>
   Query strand(s) to search against database/subject
   Default = `both'

 *** General search options
 -task <String, Permissible values: 'blastn' 'blastn-short' 'dc-megablast'
                'megablast' 'rmblastn' >
   Task to execute
   Default = `megablast'
 -db <String>
   BLAST database name
    * Incompatible with:  subject, subject_loc
 -out <File_Out, file name length < 256>
   Output file name
   Default = `-'
 -evalue <Real>
   Expectation value (E) threshold for saving hits 
   Default = `10'
 -word_size <Integer, >=4>
   Word size for wordfinder algorithm (length of best perfect match)
 -gapopen <Integer>
   Cost to open a gap
 -gapextend <Integer>
   Cost to extend a gap
 -penalty <Integer, <=0>
   Penalty for a nucleotide mismatch
 -reward <Integer, >=0>
   Reward for a nucleotide match
 -use_index <Boolean>
   Use MegaBLAST database index
   Default = `false'
 -index_name <String>
   MegaBLAST database index name (deprecated; use only for old style indices)

 *** BLAST-2-Sequences options
 -subject <File_In>
   Subject sequence(s) to search
    * Incompatible with:  db, gilist, seqidlist, negative_gilist,
   negative_seqidlist, taxids, taxidlist, negative_taxids, negative_taxidlist,
   db_soft_mask, db_hard_mask
 -subject_loc <String>
   Location on the subject sequence in 1-based offsets (Format: start-stop)
    * Incompatible with:  db, gilist, seqidlist, negative_gilist,
   negative_seqidlist, taxids, taxidlist, negative_taxids, negative_taxidlist,
   db_soft_mask, db_hard_mask, remote

 *** Formatting options
 -outfmt <String>
   alignment view options:
     0 = Pairwise,
     1 = Query-anchored showing identities,
     2 = Query-anchored no identities,
     3 = Flat query-anchored showing identities,
     4 = Flat query-anchored no identities,
     5 = BLAST XML,
     6 = Tabular,
     7 = Tabular with comment lines,
     8 = Seqalign (Text ASN.1),
     9 = Seqalign (Binary ASN.1),
    10 = Comma-separated values,
    11 = BLAST archive (ASN.1),
    12 = Seqalign (JSON),
    13 = Multiple-file BLAST JSON,
    14 = Multiple-file BLAST XML2,
    15 = Single-file BLAST JSON,
    16 = Single-file BLAST XML2,
    17 = Sequence Alignment/Map (SAM),
    18 = Organism Report
   
   Options 6, 7, 10 and 17 can be additionally configured to produce
   a custom format specified by space delimited format specifiers,
   or in the case of options 6, 7, and 10, by a token specified
   by the delim keyword. E.g.: "17 delim=@ qacc sacc score".
   The delim keyword must appear after the numeric output format
   specification.
   The supported format specifiers for options 6, 7 and 10 are:
   	    qseqid means Query Seq-id
   	       qgi means Query GI
   	      qacc means Query accesion
   	   qaccver means Query accesion.version
   	      qlen means Query sequence length
   	    sseqid means Subject Seq-id
   	 sallseqid means All subject Seq-id(s), separated by a ';'
   	       sgi means Subject GI
   	    sallgi means All subject GIs
   	      sacc means Subject accession
   	   saccver means Subject accession.version
   	   sallacc means All subject accessions
   	      slen means Subject sequence length
   	    qstart means Start of alignment in query
   	      qend means End of alignment in query
   	    sstart means Start of alignment in subject
   	      send means End of alignment in subject
   	      qseq means Aligned part of query sequence
   	      sseq means Aligned part of subject sequence
   	    evalue means Expect value
   	  bitscore means Bit score
   	     score means Raw score
   	    length means Alignment length
   	    pident means Percentage of identical matches
   	    nident means Number of identical matches
   	  mismatch means Number of mismatches
   	  positive means Number of positive-scoring matches
   	   gapopen means Number of gap openings
   	      gaps means Total number of gaps
   	      ppos means Percentage of positive-scoring matches
   	    frames means Query and subject frames separated by a '/'
   	    qframe means Query frame
   	    sframe means Subject frame
   	      btop means Blast traceback operations (BTOP)
   	    staxid means Subject Taxonomy ID
   	  ssciname means Subject Scientific Name
   	  scomname means Subject Common Name
   	sblastname means Subject Blast Name
   	 sskingdom means Subject Super Kingdom
   	   staxids means unique Subject Taxonomy ID(s), separated by a ';'
   			 (in numerical order)
   	 sscinames means unique Subject Scientific Name(s), separated by a ';'
   	 scomnames means unique Subject Common Name(s), separated by a ';'
   	sblastnames means unique Subject Blast Name(s), separated by a ';'
   			 (in alphabetical order)
   	sskingdoms means unique Subject Super Kingdom(s), separated by a ';'
   			 (in alphabetical order) 
   	    stitle means Subject Title
   	salltitles means All Subject Title(s), separated by a '<>'
   	   sstrand means Subject Strand
   	     qcovs means Query Coverage Per Subject
   	   qcovhsp means Query Coverage Per HSP
   	    qcovus means Query Coverage Per Unique Subject (blastn only)
   When not provided, the default value is:
   'qaccver saccver pident length mismatch gapopen qstart qend sstart send
   evalue bitscore', which is equivalent to the keyword 'std'
   The supported format specifier for option 17 is:
   	        SQ means Include Sequence Data
   	        SR means Subject as Reference Seq
   Default = `0'
 -show_gis
   Show NCBI GIs in deflines?
 -num_descriptions <Integer, >=0>
   Number of database sequences to show one-line descriptions for
   Not applicable for outfmt > 4
   Default = `500'
    * Incompatible with:  max_target_seqs
 -num_alignments <Integer, >=0>
   Number of database sequences to show alignments for
   Default = `250'
    * Incompatible with:  max_target_seqs
 -line_length <Integer, >=1>
   Line length for formatting alignments
   Not applicable for outfmt > 4
   Default = `60'
 -html
   Produce HTML output?
 -sorthits <Integer, (>=0 and =<4)>
   Sorting option for hits:
   alignment view options:
     0 = Sort by evalue,
     1 = Sort by bit score,
     2 = Sort by total score,
     3 = Sort by percent identity,
     4 = Sort by query coverage
   Not applicable for outfmt > 4
 -sorthsps <Integer, (>=0 and =<4)>
   Sorting option for hps:
     0 = Sort by hsp evalue,
     1 = Sort by hsp score,
     2 = Sort by hsp query start,
     3 = Sort by hsp percent identity,
     4 = Sort by hsp subject start
   Not applicable for outfmt != 0

 *** Query filtering options
 -dust <String>
   Filter query sequence with DUST (Format: 'yes', 'level window linker', or
   'no' to disable)
   Default = `20 64 1'
 -filtering_db <String>
   BLAST database containing filtering elements (i.e.: repeats)
 -window_masker_taxid <Integer>
   Enable WindowMasker filtering using a Taxonomic ID
 -window_masker_db <String>
   Enable WindowMasker filtering using this repeats database.
 -soft_masking <Boolean>
   Apply filtering locations as soft masks
   Default = `true'
 -lcase_masking
   Use lower case filtering in query and subject sequence(s)?

 *** Restrict search or results
 -gilist <String>
   Restrict search of database to list of GIs
    * Incompatible with:  seqidlist, taxids, taxidlist, negative_gilist,
   negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -seqidlist <String>
   Restrict search of database to list of SeqIDs
    * Incompatible with:  gilist, taxids, taxidlist, negative_gilist,
   negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -negative_gilist <String>
   Restrict search of database to everything except the specified GIs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
   negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -negative_seqidlist <String>
   Restrict search of database to everything except the specified SeqIDs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
   negative_gilist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -taxids <String>
   Restrict search of database to include only the specified taxonomy IDs
   (multiple IDs delimited by ',')
    * Incompatible with:  gilist, seqidlist, taxidlist, negative_gilist,
   negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -negative_taxids <String>
   Restrict search of database to everything except the specified taxonomy IDs
   (multiple IDs delimited by ',')
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
   negative_gilist, negative_seqidlist, negative_taxidlist, remote, subject,
   subject_loc
 -taxidlist <String>
   Restrict search of database to include only the specified taxonomy IDs
    * Incompatible with:  gilist, seqidlist, taxids, negative_gilist,
   negative_seqidlist, negative_taxids, negative_taxidlist, remote, subject,
   subject_loc
 -negative_taxidlist <String>
   Restrict search of database to everything except the specified taxonomy IDs
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
   negative_gilist, negative_seqidlist, negative_taxids, remote, subject,
   subject_loc
 -entrez_query <String>
   Restrict search with the given Entrez query
    * Requires:  remote
 -db_soft_mask <String>
   Filtering algorithm ID to apply to the BLAST database as soft masking
    * Incompatible with:  db_hard_mask, subject, subject_loc
 -db_hard_mask <String>
   Filtering algorithm ID to apply to the BLAST database as hard masking
    * Incompatible with:  db_soft_mask, subject, subject_loc
 -perc_identity <Real, 0..100>
   Percent identity
 -qcov_hsp_perc <Real, 0..100>
   Percent query coverage per hsp
 -max_hsps <Integer, >=1>
   Set maximum number of HSPs per subject sequence to save for each query
 -culling_limit <Integer, >=0>
   If the query range of a hit is enveloped by that of at least this many
   higher-scoring hits, delete the hit
    * Incompatible with:  best_hit_overhang, best_hit_score_edge
 -best_hit_overhang <Real, (>0 and <0.5)>
   Best Hit algorithm overhang value (recommended value: 0.1)
    * Incompatible with:  culling_limit
 -best_hit_score_edge <Real, (>0 and <0.5)>
   Best Hit algorithm score edge value (recommended value: 0.1)
    * Incompatible with:  culling_limit
 -subject_besthit
   Turn on best hit per subject sequence
 -max_target_seqs <Integer, >=1>
   Maximum number of aligned sequences to keep 
   (value of 5 or more is recommended)
   Default = `500'
    * Incompatible with:  num_descriptions, num_alignments

 *** Discontiguous MegaBLAST options
 -template_type <String, `coding', `coding_and_optimal', `optimal'>
   Discontiguous MegaBLAST template type
    * Requires:  template_length
 -template_length <Integer, Permissible values: '16' '18' '21' >
   Discontiguous MegaBLAST template length
    * Requires:  template_type

 *** Statistical options
 -dbsize <Int8>
   Effective length of the database 
 -searchsp <Int8, >=0>
   Effective length of the search space
 -sum_stats <Boolean>
   Use sum statistics

 *** Search strategy options
 -import_search_strategy <File_In>
   Search strategy to use
    * Incompatible with:  export_search_strategy
 -export_search_strategy <File_Out>
   File name to record the search strategy used
    * Incompatible with:  import_search_strategy

 *** Extension options
 -xdrop_ungap <Real>
   X-dropoff value (in bits) for ungapped extensions
 -xdrop_gap <Real>
   X-dropoff value (in bits) for preliminary gapped extensions
 -xdrop_gap_final <Real>
   X-dropoff value (in bits) for final gapped alignment
 -no_greedy
   Use non-greedy dynamic programming extension
 -min_raw_gapped_score <Integer>
   Minimum raw gapped score to keep an alignment in the preliminary gapped and
   traceback stages
 -ungapped
   Perform ungapped alignment only?
 -window_size <Integer, >=0>
   Multiple hits window size, use 0 to specify 1-hit algorithm
 -off_diagonal_range <Integer, >=0>
   Number of off-diagonals to search for the 2nd hit, use 0 to turn off
   Default = `0'

 *** Miscellaneous options
 -parse_deflines
   Should the query and subject defline(s) be parsed?
 -num_threads <Integer, >=1>
   Number of threads (CPUs) to use in the BLAST search
   Default = `1'
    * Incompatible with:  remote
 -mt_mode <Integer, (>=0 and =<1)>
   Multi-thread mode to use in BLAST search:
    0 (auto) split by database 
    1 split by queries
   Default = `0'
    * Requires:  num_threads
 -remote
   Execute search remotely?
    * Incompatible with:  gilist, seqidlist, taxids, taxidlist,
   negative_gilist, negative_seqidlist, negative_taxids, negative_taxidlist,
   subject_loc, num_threads

Back to Top

Installation

Source code is obtained from BLAST+

System

64-bit Linux