
Bio::Tools::Run::Hmmer - Wrapper for local execution of hmmsearch ,hmmbuild, hmmcalibrate, hmmalign, hmmpfam

#run hmmpfam|hmmalign|hmmsearch
my $factory = Bio::Tools::Run::Hmmer->new('program'=>'hmmsearch','hmm'=>'model.hmm');
# Pass the factory a Bio::Seq object or a file name
# returns a Bio::SearchIO object
my $search = $factory->run($seq);
my @feat;
while (my $result = $searchio->next_result){
while(my $hit = $result->next_hit){
while (my $hsp = $hit->next_hsp){
print join("\t", ( $r->query_name,
$hsp->query->start,
$hsp->query->end,
$hit->name,
$hsp->hit->start,
$hsp->hit->end,
$hsp->score,
$hsp->evalue,
$hsp->seq_str,
)), "\n";
}
}
}
#build a hmm using hmmbuild
my $aio = Bio::AlignIO->new(-file=>"protein.msf",-format=>'msf');
my $aln = $aio->next_aln;
my $factory = Bio::Tools::Run::Hmmer->new('program'=>'hmmbuild',
'hmm'=>'model.hmm');
$factory->run($aln);
#calibrate the hmm
my $factory = Bio::Tools::Run::Hmmer->new('program'=>'hmmcalibrate',
'hmm'=>'model.hmm');
$factory->run();
my $factory = Bio::Tools::Run::Hmmer->new('program'=>'hmmalign',
'hmm'=>'model.hmm');
# Pass the factory a Bio::Seq object or a file name
# returns a Bio::AlignIO object
my $aio = $factory->run($seq);

Wrapper module for Sean Eddy's HMMER suite of program to allow running of hmmsearch,hmmpfam,hmmalign, hmmbuild,hmmconvert. Binaries are available at http://hmmer.wustl.edu/

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
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/

Email: shawnh-at-gmx.net

Shawn Hoon shawnh-at-gmx.net Jason Stajich jason -at- bioperl -dot- org Scott Markel scott -at- scitegic -dot com

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
Title : program_name Usage : $factory>program_name() Function: holds the program name Returns: string Args : None
Title : program_dir Usage : $factory->program_dir(@params) Function: returns the program directory, obtiained from ENV variable. Returns: string Args :
Title : new Usage : $HMMER->new(@params) Function: creates a new HMMER factory Returns: Bio::Tools::Run::HMMER Args :
Title : run Usage : $obj->run($seqFile) Function: Runs HMMER and returns Bio::SearchIO Returns : A Bio::SearchIO Args : A Bio::PrimarySeqI or file name
Title : _run Usage : $obj->_run() Function: Internal(not to be used directly) Returns : An array of Bio::SeqFeature::Generic objects Args :
Title : _setparams Usage : Internal function, not to be called directly Function: creates a string of params to be used in the command string Example : Returns : string of params Args :
Title : _writeSeqFile Usage : obj->_writeSeqFile($seq) Function: Internal(not to be used directly) Returns : Args :
Title : _writeAlignFile Usage : obj->_writeAlignFile($seq) Function: Internal(not to be used directly) Returns : Args :