Bio::PrimerDesigner::Result(3) a class for handling primer


use Bio::PrimerDesigner;

# primer3
my $primer3_obj = Bio::PrimerDesigner->new( program => 'primer3 );
my $result = $primer3_obj->design( %hash_of_options );
my $left_primer = $result->left;
my @left_primers = $result->left(1..$num_primers);

# e-PCR -- first make a hash of options from primer3 results
# then run e-PCR
my $epcr_obj = Bio::PrimerDesigner->new( program => 'primer3 );
my $epcr_result = $epcr_obj->design( %hash_of_options );
my $num_products = $epcr_result->products;

# one product
my $first_prod_size = $epcr_result->size;
my $first_prod_start = $epcr_result->start;
my $first_prod_stop = $epcr_result->start;

# more than one product
my @pcr_product_sizes = ();
for (1..$num_products) {
push @pcr_product_sizes, $epcr_result->size;


 Bio::PrimerDesigner::Result will autogenerate result access methods
 for for Native Boulder IO keys and Bio::PrimerDesigner keys for
 primer3, e-PCR, isPcr and ipcress.



 This handles result method calls made via the
 Bio::PrimerDesigner::Result object.  Returns either a scalar or list
 depending on the on the arguments:
   Args passed      |  Returns
   none                scalar value for set 1
   numeric n           scalar value for set n
   numeric list 1..n   list with n elements
 The aliased output methods (below) return a string when called in a 
 scalar context and a list when called in a list context.  The native 
 primer3 (Boulder IO) keys can also be used.  There are also e-PCR,
 isPcr and ipcress specific methods

Primer3 keys

  • left --- left primer sequence
  • right --- right primer sequence
  • hyb_oligo --- internal oligo sequence
  • startleft --- left primer 5' sequence coordinate
  • startright --- right primer 5' sequence coordinate
  • tmleft --- left primer tm
  • tmright --- right primer tm
  • qual --- primer pair penalty (Q value)
  • lqual --- left primer penalty
  • rqual --- right primer penalty
  • leftgc --- left primer % gc
  • rightgc --- right primer % gc
  • lselfany --- left primer self-complementarity (any)
  • lselfend --- left primer self-complementarity (end)
  • rselfany --- right primer self-complementarity (any)
  • rselfend --- right primer self-complementarity (end)
  • pairanycomp --- primer pair complementarity (any)
  • pairendcomp --- primer pair complementarity (end)
  • lendstab --- left primer end stability
  • rendstab --- right primer end stability
  • amplicon --- amplified PCR product

Other keys

  • products --- number of PCR products
  • size --- product size
  • start --- product start coordinate
  • stop --- product stop coordinate
  • end --- synonymous with stop
  • strand --- strand of product relative to the ref. sequence (isPCR, ipcress)
  • amplicon --- returns the PCR product (isPCR only)


Copyright (c) 2003-2009 Sheldon McKay <[email protected]>, Ken Youens-Clark <[email protected]>.


This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 3 or any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.