Bio::Tools::Run::StandAloneBlastPlus::BlastMethods(3) Provides BLAST methods to StandAloneBlastPlus


# create a factory:
$fac = Bio::Tools::Run::StandAloneBlastPlus->new(
-db_name => 'testdb'
# get your results
$result = $fac->blastn( -query => 'query_seqs.fas',
-outfile => 'query.bls',
-method_args => [ '-num_alignments' => 10 ,
$result = $fac->tblastx( -query => $an_alignment_object,
-outfile => 'query.bls',
-outformat => 7 );
# do a bl2seq
$fac->bl2seq( -method => 'blastp',
-query => $seq_object_1,
-subject => $seq_object_2 );


This module provides the BLAST methods (blastn, blastp, psiblast, etc.) to the Bio::Tools::Run::StandAloneBlastPlus object.


This POD describes the use of BLAST methods against a Bio::Tools::Run::StandAloneBlastPlus factory object. The object itself has extensive facilities for creating, formatting, and masking BLAST databases; please refer to Bio::Tools::Run::StandAloneBlastPlus POD for these details.

Given a "StandAloneBlastPlus" factory, such as

 $fac = Bio::Tools::Run::StandAloneBlastPlus->new(
    -db_name => 'testdb'

you can run the desired BLAST method directly from the factory object, against the database currently attached to the factory (in the example, "testdb"). "-query" is a required argument:

 $result = $fac->blastn( -query => 'query_seqs.fas' );

Here, $result is a Bio::Search::Result::BlastResult object.

Other details:

  • The blast output file can be named explicitly:

     $result = $fac->blastn( -query => 'query_seqs.fas',
                             -outfile => 'query.bls' );
  • The output format can be specified:

     $result = $fac->blastn( -query => 'query_seqs.fas',
                             -outfile => 'query.bls',
                             -outformat => 7 ); #tabular
  • Additional arguments to the method can be specified:

     $result = $fac->blastn( -query => 'query_seqs.fas',
                             -outfile => 'query.bls',
                             -method_args => [ '-num_alignments' => 10 ,
                                               '-evalue' => 100 ]);
  • To get the name of the blast output file, do

     $file = $fac->blast_out;
  • To clean up the temp files (you must do this explicitly):



Running "bl2seq" is similar, but both "-query" and "-subject" are required, and the attached database is ignored. The blast method must be specified explicitly with the "-method" parameter:

 $fac->bl2seq( -method => 'blastp',
               -query => $seq_object_1,
               -subject => $seq_object_2 );

Other parameters ( "-method_args", "-outfile", and "-outformat" ) are valid.

Return values

The return value is always a Bio::Search::Result::BlastResult object on success, undef on failure.


Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to the Bioperl mailing list. Your participation is much appreciated.

  [email protected]                  - General discussion  - About the mailing lists


Please direct usage questions or support issues to the mailing list:

[email protected]

rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.

Reporting Bugs

Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their resolution. Bug reports can be submitted via the web:

AUTHOR - Mark A. Jensen

Email maj -at- fortinbras -dot- us

Describe contact details here


Additional contributors names and emails here


The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _


 Title   : run
 Usage   : 
 Function: Query the attached database using a specified blast
 Returns : Bio::Search::Result::BlastResult object
 Args    : key => value:
           -method => $method [blastp|blastn|blastx|tblastx|tblastn|
           -query => $query_sequences (a fasta file name or BioPerl sequence
                      object or sequence collection object)
           -outfile => $blast_report_file (optional: default creates a tempfile)
           -outformat => $format_code (integer in [0..10], see blast+ docs)
           -method_args => [ -key1 => $value1, ... ] (additional arguments
                         for the given method)


 Title   : bl2seq
 Usage   : 
 Function: emulate bl2seq using blast+ programs
 Returns : Bio::Search::Result::BlastResult object
 Args    : key => value
           -method => $blast_method [blastn|blastp|blastx|
           -query => $query (fasta file or BioPerl sequence object
           -subject => $subject (fasta file or BioPerl sequence object)
           -outfile => $blast_report_file
           -method_args => [ $key1 => $value1, ... ] (additional method 


 Title   : next_result
 Usage   : $result = $fac->next_result;
 Function: get the next BLAST result
 Returns : Bio::Search::Result::BlastResult object
 Args    : none


 Title   : rewind_results
 Usage   : $fac->rewind_results;
 Function: rewind BLAST results
 Returns : true on success
 Args    :


 Title   : blast_out
 Usage   : $file = $fac->blast_out
 Function: get the filename of the blast report file
 Returns : scalar string
 Args    : none