Perl Modules

by Anonymous User last modified Mar 27, 2008 03:48 PM


Weigel-Search is a collection of Perl modules for searching in FASTA-files.

Main Features:

  • Different backends available. Currently Vmatch, Hypa and Agrep are supported. You can easily add own backends (important: choose the module for the Hypa backend as template).
  • Approximate matches: You can define how many mismatches should be allowed (hamming distance). Vmatch and Agrep allow edit distances, in Hypa you can define the number of deletions and insertions.
  • Generate databases (Hypa, Vmatch: calculate the suffix arrays).
  • Alignment query-match as Bioperl Bio::SimpleAlign object.
  • Displaying upstream and downstream regions of a match (only Hypa and Vmatch).
  • Wobble pairs. Count GU mismatches as 0, 0.5 or 1 mismatch (Hypa).
  • Nucleotide and protein databases
  • Filter search results. You can write filters that define if a query-match pair should pass this filter (only Hypa and Vmatch).

Usage Example:

 use Weigel::Search;

# construct a search object, use the Hypa backend. Other # backends are Vmatch and Agrep my $search_obj = Weigel::Search->new('Hypa');

# $sbe is now a reference to the backend my $sbe = $search_obj->backend;

# define a data directory (we put the suffix arrays there. # you will probably need a lot of free disc space) $sbe->settings->datapath('data'); mkdir($sbe->settings->datapath);

# generate a suffix array. you have to do this only once. $sbe->generate_database_out_of_fastafile('Test.fasta', 'Description for the test Fastafile');

# use this database for the next search $sbe->settings->database('Test.fasta');

# search for the reverse complement and allow 2 mismatches $sbe->settings->query('UGAACAGAAAG'); $sbe->settings->reverse_complement(1); $sbe->settings->mismatches(2);


# output the alignments foreach my $res (@{$sbe->results}) { print $res->sequence->id . "\n"; print $res->mark_subject_uppercase() . "\n"; print $res->alignment_string() . "\n\n"; }

See perldoc for more examples.


This module filters putative MicroRNA targets in Weigel::Search search results. A mfold perl frontend is part of this package. It is very easy to use.

Main Features:

  • MicroRNA target filter
  • RNAcofold and mfold perl modules
  • MicroRNA Designer modules (including powerful database modules that allow multiple designer clients)

Usage example:


# filter search results my $filter = Weigel::Search::Filter::MIRNAFilter->new(); # don't delete results, only add a message if filter passed or not $filter->delete(0);

# you can write own filters and apply all of them! my @filters = ( $filter ); $sbe->settings->filters( @filters );



Weigel::Search 0.12 (06/02/25)

Weigel::RNA soon!

Document Actions
Personal tools