Provided by: libbio-perl-run-perl_1.6.9-2_all bug


       Bio::Tools::Run::Phylo::PAML::Yn00 - Wrapper aroud the PAML program yn00


         use Bio::Tools::Run::Phylo::PAML::Yn00;
         use Bio::AlignIO;
         my $alignio = Bio::AlignIO->new(-format => 'phylip',
                                        -file   => 't/data/gf-s85.phylip');
         my $aln = $alignio->next_aln;

         my $yn = Bio::Tools::Run::Phylo::PAML::Yn00->new();
         my ($rc,$parser) = $yn->run();
         while( my $result = $parser->next_result ) {
           my @otus = $result->get_seqs();
           my $MLmatrix = $result->get_MLmatrix();
           # 0 and 1 correspond to the 1st and 2nd entry in the @otus array
           my $dN = $MLmatrix->[0]->[1]->{dN};
           my $dS = $MLmatrix->[0]->[1]->{dS};
           my $kaks =$MLmatrix->[0]->[1]->{omega};
           print "Ka = $dN Ks = $dS Ka/Ks = $kaks\n";


       This is a wrapper around the yn00 (method of Yang and Nielsen, 2000) program of PAML
       (Phylogenetic Analysis by Maximum Likelihood) package of Ziheng Yang.  See for more information.

       This module will generate a proper yn00.ctl file and will run the program in a separate
       temporary directory to avoid creating temp files all over the place and will cleanup after


   Mailing Lists
       User feedback is an integral part of the evolution of this and other Bioperl modules. Send
       your comments and suggestions preferably to the Bioperl mailing list.  Your participation
       is much appreciated.
                  - General discussion  - About the mailing lists

       Please direct usage questions or support issues to the mailing list:

       rather than to the module maintainer directly. Many experienced and reponsive experts will
       be able look at the problem and quickly address it. Please include a thorough description
       of the problem with code and data examples if at all possible.

   Reporting Bugs
       Report bugs to the Bioperl bug tracking system to help us keep track of the bugs and their
       resolution. Bug reports can be submitted via the web:

AUTHOR - Jason Stajich



       Additional contributors names and emails here


       The rest of the documentation details each of the object methods.  Internal methods are
       usually preceded with a _

   Default Values
       See the Bio::Tools::Run::Phylo::PAML::Codeml module for documentation of the default

        Title   : program_name
        Usage   : $yn00->program_name()
        Function: holds the program name
        Returns:  string
        Args    : None

        Title   : program_dir
        Usage   : $yn00->program_dir()
        Function: returns the program directory, obtained from ENV variable.
        Returns:  string
        Args    :

        Title   : new
        Usage   : my $obj = Bio::Tools::Run::Phylo::PAML::Yn00->new();
        Function: Builds a new Bio::Tools::Run::Phylo::PAML::Yn00 object
        Returns : Bio::Tools::Run::Phylo::PAML::Yn00
        Args    : -alignment => the L<Bio::Align::AlignI> object
                  -save_tempfiles => boolean to save the generated tempfiles and
                                     NOT cleanup after onesself (default FALSE)

        Title   : run
        Usage   : $yn->run();
        Function: run the yn00 analysis using the default or updated parameters
                  the alignment parameter must have been set
        Returns : 3 values,
                  $rc = 1 for success, 0 for errors
                  hash reference of the Yang calculated Ka/Ks values
                           this is a set of pairwise observations keyed as
                  hash reference same as the previous one except it for the
                  Nei and Gojobori calculated Ka,Ks,omega values
        Args    : none

        Title   : error_string
        Usage   : $obj->error_string($newval)
        Function: Where the output from the last analysus run is stored.
        Returns : value of error_string
        Args    : newvalue (optional)

        Title   : alignment
        Usage   : $codeml->align($aln);
        Function: Get/Set the L<Bio::Align::AlignI> object
        Returns : L<Bio::Align::AlignI> object
        Args    : [optional] L<Bio::Align::AlignI>
        Comment : We could potentially add support for running directly on a file
                  but we shall keep it simple
        See also: L<Bio::SimpleAlign>

        Title   : get_parameters
        Usage   : my %params = $self->get_parameters();
        Function: returns the list of parameters as a hash
        Returns : associative array keyed on parameter names
        Args    : none

        Title   : set_parameter
        Usage   : $codeml->set_parameter($param,$val);
        Function: Sets a codeml parameter, will be validated against
                  the valid values as set in the %VALIDVALUES class variable.
                  The checks can be ignored if on turns of param checks like this:
        Returns : boolean if set was success, if verbose is set to -1
                  then no warning will be reported
        Args    : $paramname => name of the parameter
                  $value     => value to set the parameter to
        See also: L<no_param_checks()>

        Title   : set_default_parameters
        Usage   : $codeml->set_default_parameters(0);
        Function: (Re)set the default parameters from the defaults
                  (the first value in each array in the
                   %VALIDVALUES class variable)
        Returns : none
        Args    : boolean: keep existing parameter values

Bio::Tools::Run::Wrapper methods

        Title   : no_param_checks
        Usage   : $obj->no_param_checks($newval)
        Function: Boolean flag as to whether or not we should
                  trust the sanity checks for parameter values
        Returns : value of no_param_checks
        Args    : newvalue (optional)

        Title   : save_tempfiles
        Usage   : $obj->save_tempfiles($newval)
        Returns : value of save_tempfiles
        Args    : newvalue (optional)

        Title   : outfile_name
        Usage   : my $outfile = $codeml->outfile_name();
        Function: Get/Set the name of the output file for this run
                  (if you wanted to do something special)
        Returns : string
        Args    : [optional] string to set value to

        Title   : tempdir
        Usage   : my $tmpdir = $self->tempdir();
        Function: Retrieve a temporary directory name (which is created)
        Returns : string which is the name of the temporary directory
        Args    : none

        Title   : cleanup
        Usage   : $codeml->cleanup();
        Function: Will cleanup the tempdir directory after a PAML run
        Returns : none
        Args    : none

        Title   : io
        Usage   : $obj->io($newval)
        Function:  Gets a L<Bio::Root::IO> object
        Returns : L<Bio::Root::IO>
        Args    : none