NAME
Bio::Tools::DNAGen - Generating a pool of DNA sequences
SYNOPSIS
use Bio::Tools::DNAGen;
$gen = Bio::Tools::DNAGen;
$gen->set_gcratio(50);
$gen->set_prefix('acgt');
$gen->getseq($len) for 1..10;
DESCRIPTION
This module is a tool for generating a pool of DNA sequences which meet some logical and physical requirements such as uniqueness, melting temperature and GC ratio. When you have set the parameters, this module will create an array of sequences for you.
USAGE
new
Constructor.
You may specify all the parameters here.
$gen = Bio::Tools::DNAGen->new(
gcratio => 50,
mt => 30,
limit => 10,
prefix => 'acgt',
len => 10,
);
set_gcratio
Setting for the GC ratio.
You can give it a specific value, like
$gen->set_gcratio(50);
or an array to say a range
$gen->set_gcratio([40, 60]);
# or
$gen->set_gcratio(40, 60);
Default is 'undef', which means gc-ratio is not related to sequence selection.
set_mt
Setting for the melting temperature. For now, Wallace formula is adopted for calculation.
You can give it a specific value, like
$gen->set_mt(30);
or an array to say a range
$gen->set_mt([20, 30]);
# or
$gen->set_mt(20, 30);
Default is 'undef', which means melting temperature is not related to sequence selection.
set_len
$gen->set_len(15);
Setting for the length of sequences to be generated.
Default is '10'.
set_prefix
$gen->set_prefix('acgt');
Setting for the common prefix of sequences to be generated.
Default is a random prefix of length 4 composed of qw/a c g t/, and all the substrings of prefix's length in generated sequences will be checked for their uniqueness.
set_limit
$gen->set_limit(20);
Setting for the number of sequences to be generated.
Default is '1'.
genseq
print join $/, $gen->genseq;
Generating DNA sequences that meet your requirements.
EXPORTS
This module also automatically exports two utilities.
calc_gcratio
print calc_gcratio($seq);
It returns the GC ratio of $seq
calc_mt
print calc_mt($seq);
It returns the melting temperature of $seq
SEE ALSO
DNASequenceGenerator: A Program for the Construction of DNA Sequences by Udo Feldkamp, Sam Saghafi, Wolfgang Banzhaf, and Rauhe
COPYRIGHT
xern <xern@cpan.org>
This module is free software; you can redistribute it or modify it under the same terms as Perl itself.