[Bioperl-l] planning sequence mutating modules

Heikki Lehvaslaiho heikki at sanbi.ac.za
Tue Feb 14 16:09:27 UTC 2006


Yegor,

Like you said, there are examples how it is done.. It should be possible to 
evolve sequences based on a rooted tree. You just walk the tree and evolve 
each sequence from its parent.  If there is  an agreement how the branch 
lengths get translated to  mutations, even that could be done. Do you have 
any suggestions?

	-Heikki



On Tuesday 14 February 2006 16:34, Georgii A Bazykin wrote:
> Hi,
>
> Just a thought: I really think that in perspective, it would be nice
> to be able to evolve the sequence along a tree of given shape. I think
> PAML's "evolver" has this functionality. I've already been doing this
> in my scripts, but I am not sure how to couple the tree and the
> sequence data properly.
>
> Yegor (George) Bazykin
>
>
> ------------------------------
>
> Tuesday, February 14, 2006, 1:59:29 AM, you wrote:
> > I've committed an interim solution to the sequence evolution problem:
> >
> >     $newseq = Bio::SeqUtils-> evolve
> >         ($seq, $similarity, $transition_transversion_rate);
> >
> > I will go on to transform this code to fully OO, extensible solution.
> >
> >    -Heikki
> >
> > On Friday 10 February 2006 09:06, Heikki Lehvaslaiho wrote:
> >> Ryan Golhar's mail got me thinking that we should have a simple
> >> framework for mutating sequences to a desired level. The model can then
> >> be extended to necessary complexity when needed by subclassing.
> >>
> >> To start with, I have been planning:
> >>
> >>
> >> Bio::SeqEvolution::EvolutionI - interface file
> >> Bio::SeqEvolution::EvolutionI::seq() - seq to mutate
> >> Bio::SeqEvolution::EvolutionI::seq_type() - returned seq class,
> >>         (defaults to Bio::PrimarySeq)
> >> Bio::SeqEvolution::EvolutionI::next_seq() - overridable by subclasses
> >> Bio::SeqEvolution::EvolutionI::each_seqs($count)
> >>        - returns an array of $count seqs
> >> Bio::SeqEvolution::EvolutionI::_generate_seq()
> >> Bio::SeqEvolution::EvolutionI::matrix  # Bio::Matrix::Scoring
> >>       converteed to probabilites of change internally
> >>
> >>   various methods to define the extent of divergence:
> >>   only one to start with:
> >> Bio::SeqEvolution::EvolutionI::pam() -percentage accepted mutation
> >>    (= 100% - identity)
> >>
> >> Bio::SeqEvolution::Factory - core class to call,
> >>          instantiates subclasses, Bio::SeqEvolution::DNASimple for
> >> nucleotides Bio::SeqEvolution::EvolutionI::type() - evolution model,
> >>       defaults to Bio::SeqEvolution::DNASimple for nucleotides
> >>
> >>
> >> Bio::SeqEvolution::DNASimple - default for nucleotides
> >> Bio::SeqEvolution::DNASimple::transversion_rate - positive integer,
> >>         e.g. 5 => 5:1, defaults to 1:1
> >>         simple alternative to a scoring matrix
> >>
> >>
> >> I am soliciting usual comments and suggestions about naming and minimal
> >> functionality.
> >>
> >>
> >>    -Heikki
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioperl-l

-- 
______ _/      _/_____________________________________________________
      _/      _/
     _/  _/  _/  Heikki Lehvaslaiho    heikki at_sanbi _ac _za
    _/_/_/_/_/  Associate Professor    skype: heikki_lehvaslaiho
   _/  _/  _/  SANBI, South African National Bioinformatics Institute
  _/  _/  _/  University of Western Cape, South Africa
     _/      Phone: +27 21 959 2096   FAX: +27 21 959 2512
___ _/_/_/_/_/________________________________________________________



More information about the Bioperl-l mailing list