NAME
Bio::Tools::Run::Alignment::MSAProbs - Object for the calculation of a multiple sequence alignment (MSA) from a set of unaligned sequences using the MSAProbs program
SYNOPSIS
# Build a msaprobs alignment factory$factory = Bio::Tools::Run::Alignment::MSAProbs->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);#There are various additional options and input formats available.#See the DESCRIPTION section that follows for additional details.
DESCRIPTION
MSAProbs is Liu, Schmidt, and Maskell's (2010) alignment program using HMM and partition function posterior probabilities. For more a more in-depth description see the original publication:
Liu, Y., Schmidt, B., and Maskell, D. L. (2010) MSAProbs: multiplesequence alignment based on pair hidden Markov models and partitionfunction posterior probabilities. I<Bioinformatics> 26(16): 1958-1964doi:10.1093/bioinformatics/btq338-OR-http://bioinformatics.oxfordjournals.org/content/26/16/1958.abstract
You can download the source code from http://sourceforge.net/projects/msaprobs/
It is recommended you use at least version 0.9; behaviour with earlier versions is questionable.
Helping the module find your executable
You will need to help MSAProbs to find the 'msaprobs' executable. This can be done in (at least) three ways:
1. Make sure the msaprobs executable is in your path (i.e.'which msaprobs' returns a valid program)2. define an environmental variable MSAPROBSDIR which points to adirectory containing the 'msaprobs' app:In bashexport MSAPROBSDIR=/home/progs/msaprobs orIn csh/tcshsetenv MSAPROBSDIR /home/progs/msaprobs3. include a definition of an environmental variable MSAPROBSDIRin every script that willBEGIN {$ENV{MSAPROBSDIR} = '/home/progs/msaprobs'; }use Bio::Tools::Run::Alignment::MSAProbs;
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.
[email protected] - General discussionhttp://bioperl.org/wiki/Mailing_lists - About the mailing lists
Support
Please direct usage questions or support issues to the mailing list:
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 - Jessen Bredeson
Email [email protected]
CONTRIBUTIONS
This MSAProbs module was adapted from the Bio::Tools::Run::Alignment::Muscle module, written by Jason Stajich and almost all of the credit should be given to him.
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_nameUsage : $factory->program_name()Function: holds the program nameReturns: stringArgs : None
program_dir
Title : program_dirUsage : $factory->program_dir(@params)Function: returns the program directory, obtained from ENV variable.Returns: stringArgs :
version
Title : versionUsage : exit if $prog->version() < 0.9.4Function: Determine the version number of the programExample :Returns : float or undefArgs : none
new
Title : newUsage : my $msaprobs = Bio::Tools::Run::Alignment::MSAProbs->new();Function: ConstructorReturns : Bio::Tools::Run::Alignment::MSAProbsArgs : -outfile => $outname
run
Title : runUsage : my $output = $application->run(\@seqs);Function: Generic run of an applicationReturns : Bio::SimpleAlign objectArgs : Arrayref of Bio::PrimarySeqI objects ora filename to run on
align
Title : alignUsage :$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 alignmentReturns : Reference to a SimpleAlign object containing thesequence alignment.Args : Name of a file containing a set of unaligned fasta sequencesor else an array of references to Bio::Seq objects.Throws an exception if argument is not either a string (eg afilename) or a reference to an array of Bio::Seq objects. Ifargument is string, throws exception if file corresponding to stringname can not be found. If argument is Bio::Seq array, throwsexception if less than two sequence objects are in array.
error_string
Title : error_stringUsage : $obj->error_string($newval)Function: Where the output from the last analysus run is stored.Returns : value of error_stringArgs : newvalue (optional)
infile
Title : infileUsage : $prog->infile($filename)Function: get/set the fasta (and only a fasta) file to run onor the array reference containing the Bio::SeqI objectsReturns : name of input sequence file or object array refArgs : name of input sequence file or object array ref
outfile
Title : outfileUsage : $prog->outfile($filename)Function: get/set the file to save output toReturns : outfile name if setArgs : newvalue (optional)
annot_file
Title : annot_fileUsage : $prog->annot_file($filename)Function: get/set the file name to write the MSA annotation toReturns : filename or undefArgs : filename (optional)
num_threads
Title : num_threadsUsage : $prog->num_threads($cores)Function: get/set number of cores on your machineReturns : integerArgs : integer (optional; executable auto-detects)
consistency
Title : consistencyUsage : $prog->consistency($passes)Function: get/set the number of consistency transformation passesReturns : integerArgs : integer 0..5, [default 2] (optional)
iterations
Title : iterationsUsage : $prog->iterations($passes)Function: get/set the number of iterative-refinement passesReturns : integerArgs : integer 0..1000, [default 10] (optional)
alignment_order
Title : alignment_orderUsage : $prog->alignment_order($bool)Function: specify whether or not to output aligned sequences inalignment order, not input orderReturns : booleanArgs : boolean [default: off] (optional)
clustalw
Title : clustalwUsage : $prog->clustalw($bool)Function: write output in clustalw format; makes no sense unlessoutfile() is also specifiedReturns : booleanArgs : boolean [default: off] (optional)
Bio::Tools::Run::WrapperBase methods
no_param_checks
Title : no_param_checksUsage : $obj->no_param_checks($newval)Function: Boolean flag as to whether or not we shouldtrust the sanity checks for parameter valuesReturns : value of no_param_checksArgs : newvalue (optional)
save_tempfiles
Title : save_tempfilesUsage : $obj->save_tempfiles($newval)Function:Returns : value of save_tempfilesArgs : newvalue (optional)
outfile_name
Title : outfile_nameUsage : my $outfile = $msaprobs->outfile_name();Function: Get the name of the output file from a run(if you wanted to do something special)Returns : stringArgs : none
tempdir
Title : tempdirUsage : my $tmpdir = $self->tempdir();Function: Retrieve a temporary directory name (which is created)Returns : string which is the name of the temporary directoryArgs : none
cleanup
Title : cleanupUsage : $msaprobs->cleanup();Function: Will cleanup the tempdir directoryReturns : noneArgs : none
io
Title : ioUsage : $obj->io($newval)Function: Gets a L<Bio::Root::IO> objectReturns : L<Bio::Root::IO>Args : none
Private Methods
_run
Title : _runUsage : Internal function, not to be called directlyFunction: makes actual system call to msaprobs programExample :Returns : nothing; msaprobs output is written to atemporary file OR specified output fileArgs : Name of a file containing a set of unaligned fasta sequencesand hash of parameters to be passed to msaprobs
_setinput
Title : _setinputUsage : Internal function, not to be called directlyFunction: Create input file for msaprobs programExample :Returns : name of file containing msaprobs data input ANDArgs : Arrayref of Seqs or input file name
_setparams
Title : _setparamsUsage : Internal function, not to be called directlyFunction: Create parameter inputs for msaprobs programExample :Returns : parameter string to be passed to msaprobsduring alignArgs : name of calling object
aformat
Title : aformatUsage : my $alignmentformat = $self->aformat();Function: Get/Set alignment formatReturns : stringArgs : string