Bio::Tools::Run::Alignment::Muscle.3pm

Langue: en

Version: 2009-11-04 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Bio::Tools::Run::Alignment::Muscle - Object for the calculation of an iterative multiple sequence alignment from a set of unaligned sequences or alignments using the MUSCLE program

SYNOPSIS

   # Build a muscle alignment factory
   $factory = Bio::Tools::Run::Alignment::Muscle->new(@params);
 
   # Pass the factory a list of sequences to be aligned.
   $inputfilename = 't/cysprot.fa';
   # $aln is a SimpleAlign object.
   $aln = $factory->align($inputfilename);
 
   # or where @seq_array is an array of Bio::Seq objects
   $seq_array_ref = \@seq_array;
   $aln = $factory->align($seq_array_ref);
 
   # Or one can pass the factory a pair of (sub)alignments
   #to be aligned against each other, e.g.:
 
   #There are various additional options and input formats available.
   #See the DESCRIPTION section that follows for additional details.
 
 

DESCRIPTION

Muscle is Robert Edgar's progressive alignment program. You can get it and see information about it at this URL http://www.drive5.com/muscle

It is recommended you use at least version 3.6. Behaviour with earlier versions is questionable.

Helping the module find your executable

You will need to enable Muscle to find the muscle program. This can be done in (at least) three ways:
   1. Make sure the muscle executable is in your path (i.e. 
      'which muscle' returns a valid program
   2. define an environmental variable MUSCLEDIR which points to a 
      directory containing the 'muscle' app:
    In bash 
         export MUSCLEDIR=/home/progs/muscle   or
    In csh/tcsh
         setenv MUSCLEDIR /home/progs/muscle
 
   3. include a definition of an environmental variable MUSCLEDIR 
       in every script that will
      BEGIN {$ENV{MUSCLEDIR} = '/home/progs/muscle'; }
      use Bio::Tools::Run::Alignment::Muscle;
 
 

FEEDBACK

Mailing Lists

User feedback is an integral part of the evolution of this and other Bioperl modules. Send your comments and suggestions preferably to one of the Bioperl mailing lists. Your participation is much appreciated.
   bioperl-l@bioperl.org                  - General discussion
   http://bioperl.org/wiki/Mailing_lists  - About the mailing lists
 
 

Support

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

bioperl-l@bioperl.org

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 the bugs and their resolution. Bug reports can be submitted via the web:
  http://bugzilla.open-bio.org/
 
 

AUTHOR - Jason Stajich

Email jason-at-bioperl-dot-org

APPENDIX

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

program_name

  Title   : program_name
  Usage   : $factory->program_name()
  Function: holds the program name
  Returns:  string
  Args    : None
 
 

program_dir

  Title   : program_dir
  Usage   : $factory->program_dir(@params)
  Function: returns the program directory, obtained from ENV variable.
  Returns:  string
  Args    :
 
 

new

  Title   : new
  Usage   : my $muscle = Bio::Tools::Run::Alignment::Muscle->new();
  Function: Constructor
  Returns : Bio::Tools::Run::Alignment::Muscle
  Args    : -outfile_name => $outname
 
 

error_string

  Title   : error_string
  Usage   : $obj->error_string($newval)
  Function: Where the output from the last analysus run is stored.
  Returns : value of error_string
  Args    : newvalue (optional)
 
 

version

  Title   : version
  Usage   : exit if $prog->version() < 1.8
  Function: Determine the version number of the program
  Example :
  Returns : float or undef
  Args    : none
 
 

run

  Title   : run
  Usage   : my $output = $application->run(\@seqs);
  Function: Generic run of an application
  Returns : Bio::SimpleAlign object
  Args    : Arrayref of Bio::PrimarySeqI objects or
            a filename to run on
 
 

align

  Title   : align
  Usage   :
         $inputfilename = 't/data/cysprot.fa';
         $aln = $factory->align($inputfilename);
 or
         $seq_array_ref = \@seq_array; 
         # @seq_array is array of Seq objs
         $aln = $factory->align($seq_array_ref);
  Function: Perform a multiple sequence alignment
  Returns : Reference to a SimpleAlign object containing the
            sequence alignment.
  Args    : Name of a file containing a set of unaligned fasta sequences
            or else an array of references to Bio::Seq objects.
 
  Throws an exception if argument is not either a string (eg a
  filename) or a reference to an array of Bio::Seq objects.  If
  argument is string, throws exception if file corresponding to string
  name can not be found. If argument is Bio::Seq array, throws
  exception if less than two sequence objects are in array.
 
 

profile

  Title   : profile
  Usage   :
         $alnfilename = /t/data/cysprot.msa';
         $seqsfilename = 't/data/cysprot.fa';
         $aln = $factory->profile($alnfilename,$seqsfilename);
 
  Function: Perform a profile alignment on a MSA to include more seqs
  Returns : Reference to a SimpleAlign object containing the
            sequence alignment.
  Args : Name of a file containing the fasta MSA and name of a file
         containing a set of unaligned fasta sequences
  Comments : This only works for muscle version 3.52.
             Some early versions of the 3.6 sources had a bug that
             caused a segfault with -profile. The attached should fix
             it, if not let Bob Edgar know.
 
 

_run

  Title   :  _run
  Usage   :  Internal function, not to be called directly        
  Function:  makes actual system call to muscle program
  Example :
  Returns : nothing; muscle output is written to a
            temporary file OR specified output file
  Args    : Name of a file containing a set of unaligned fasta sequences
            and hash of parameters to be passed to muscle
 
 

_setinput

  Title   :  _setinput
  Usage   :  Internal function, not to be called directly        
  Function:  Create input file for muscle program
  Example :
  Returns : name of file containing muscle data input AND
  Args    : Arrayref of Seqs or input file name
 
 

_setparams

  Title   :  _setparams
  Usage   :  Internal function, not to be called directly        
  Function:  Create parameter inputs for muscle program
  Example :
  Returns : parameter string to be passed to muscle
            during align or profile_align
  Args    : name of calling object
 
 

aformat

  Title   : aformat
  Usage   : my $alignmentformat = $self->aformat();
  Function: Get/Set alignment format
  Returns : string
  Args    : string
 
 

Bio::Tools::Run::BaseWrapper methods

no_param_checks

  Title   : no_param_checks
  Usage   : $obj->no_param_checks($newval)
  Function: Boolean flag as to whether or not we should
            trust the sanity checks for parameter values  
  Returns : value of no_param_checks
  Args    : newvalue (optional)
 
 

save_tempfiles

  Title   : save_tempfiles
  Usage   : $obj->save_tempfiles($newval)
  Function: 
  Returns : value of save_tempfiles
  Args    : newvalue (optional)
 
 

outfile_name

  Title   : outfile_name
  Usage   : my $outfile = $muscle->outfile_name();
  Function: Get/Set the name of the output file for this run
            (if you wanted to do something special)
  Returns : string
  Args    : [optional] string to set value to
 
 

tempdir

  Title   : tempdir
  Usage   : my $tmpdir = $self->tempdir();
  Function: Retrieve a temporary directory name (which is created)
  Returns : string which is the name of the temporary directory
  Args    : none
 
 

cleanup

  Title   : cleanup
  Usage   : $muscle->cleanup();
  Function: Will cleanup the tempdir directory
  Returns : none
  Args    : none
 
 

io

  Title   : io
  Usage   : $obj->io($newval)
  Function:  Gets a L<Bio::Root::IO> object
  Returns : L<Bio::Root::IO>
  Args    : none