[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