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

NAME

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

SYNOPSIS

         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();
         $yn->alignment($aln);
         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";
         }

DESCRIPTION

       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
       http://abacus.gene.ucl.ac.uk/software/paml.html 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
       itself.

FEEDBACK

   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.

         bioperl-l@bioperl.org                  - General discussion
         http://bioperl.org/wiki/Mailing_lists  - About the mailing lists

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

       bioperl-l@bioperl.org

       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

       Email jason-at-bioperl.org

CONTRIBUTORS

       Additional contributors names and emails here

APPENDIX

       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
       values.

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

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

   new
        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)

   run
        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
                           sequencenameA->sequencenameB->datatype
                  hash reference same as the previous one except it for the
                  Nei and Gojobori calculated Ka,Ks,omega values
        Args    : none

   error_string
        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)

   alignment
        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>

   get_parameters
        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

   set_parameter
        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:
                    $codeml->no_param_checks(1)
        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()>

   set_default_parameters
        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

   no_param_checks
        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)

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

   outfile_name
        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

   tempdir
        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

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

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