Bio::Tools::Run::Meme(3) Wrapper for Meme Program


use Bio::Tools::Run::Meme;
my $factory = Bio::Tools::Run::Meme->new(-dna => 1, -mod => 'zoops');
# return a Bio::AlignIO given Bio::PrimarySeqI objects
my $alignio = $factory->run($seq1, $seq2, $seq3...);
# add a Bio::Map::Prediction to the appropriate maps given Bio::Map::GeneMap
# objects (predict on the full map sequences supplied) or Bio::Map::Gene
# objects (predict on the full map sequences of the maps the supplied Genes
# are on) or Bio::Map::PositionWithSequence objects
my $prediction = $factory->run($biomap1, $biomap2, $biomap3...);


This is a wrapper for running meme, a transcription factor binding site prediction program. It can be found here:

You can try supplying normal meme command-line arguments to new(), eg. new(-mod => 'oops') or calling arg-named methods (excluding the initial hyphen(s), eg. $factory->mod('oops') to set the -mod option to 'oops').

You will need to enable this MEME wrapper to find the meme program. During standard installation of meme you will have set up an environment variable called MEME_BIN which is used for this purpose.


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 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 the bugs and their resolution. Bug reports can be submitted via the web:

AUTHOR - Sendu Bala

Email [email protected]


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


 Title   : new
 Usage   : $rm->new($seq)
 Function: creates a new wrapper
 Returns:  Bio::Tools::Run::Meme
 Args    : Most options understood by meme can be supplied as key =>
           value pairs, with a boolean value for switches. -quiet can also be
           set to silence meme completely.
           These options can NOT be used with this wrapper (they are handled
           internally or don't make sense in this context):
           -h -text -nostatus


 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, obtained from ENV variable.
 Returns:  string
 Args    :


 Title   : version
 Usage   : n/a
 Function: Determine the version number of the program, which is
           non-discoverable for Meme
 Returns : undef
 Args    : none


 Title   : run
 Usage   : $rm->run($seq1, $seq2, $seq3...);
 Function: Run Meme on the sequences/Bio::Map::* set as the argument
 Returns : Bio::AlignIO if sequence objects supplied, OR
           Bio::Map::Prediction if Bio::Map::* objects supplied
           undef if no executable found
 Args    : list of Bio::PrimarySeqI compliant objects, OR
           list of Bio::Map::GeneMap objects, OR
           list of Bio::Map::Gene objects, OR
           list of Bio::Map::PositionWithSequence objects


 Title   : _run
 Usage   : $rm->_run ($filename,$param_string)
 Function: internal function that runs meme
 Returns : as per run(), undef if no executable found
 Args    : the filename to the input sequence file


 Title   : _setparams
 Usage   : Internal function, not to be called directly
 Function: Create parameter inputs for meme program
 Returns : parameter string to be passed to meme
 Args    : none


 Title   : _setinput
 Usage   : Internal function, not to be called directly
 Function: writes input sequence to file and return the file name
 Returns : string (file name)
 Args    : as per run()

Bio::Tools::Run::Wrapper methods


 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)


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


 Title   : outfile_name
 Usage   : my $outfile = $codeml->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


 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


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


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