NAME

GeneDesign::Codons

VERSION

Version 5.56

DESCRIPTION

GeneDesign functions for codon analysis and manipulation

AUTHOR

Sarah Richardson <SMRichardson@lbl.gov>.

parse_organisms

parse_codon_file

reverse_codon_table()

Takes a codon table hashref and reverses it such that each key is a one letter amino acid residue and each value is an array reference containing all of the codons that can code for that residue.

_translate()

takes a nucleotide sequence, a frame, and a codon table and returns that frame translated into amino acids.

_subtract

_rscu_sum()

_codon_count()

takes a reference to an array of sequences and returns a hash with codons as keys and the number of times the codon occurs as a value.

generate_RSCU_table()

takes a hash reference with keys as codons and values as number of times those codons occur (it helps to use codon_count) and returns a hash with each codon and its RSCU value

_generate_codon_report

_generate_codon_file

_define_codons

Generates an array reference that contains every possible nucleotide codon

_amb_translation()

takes a nucleotide that may be degenerate and a codon table and returns a list of all amino acid sequences that nucleotide sequence could be translated into.

in: nucleotide sequence (string),
    codon table (hash reference),
    optional switch to force only a single frame of translation
    optional hashref of previous answers to speed processing
out: amino acid sequence list (vector)

_degcodon_to_aas()

takes a codon that may be degenerate and a codon table and returns a list of all amino acids that codon could represent. If a hashref is provided with previous answers, it will run MUCH faster (memoization).

in: codon (string),
    codon table (hash reference)
out: amino acid list (vector)

_find_in_frame

_minimize_local_alignment_dp()

Repeatsmasher, by Dongwon Lee. A function that minimizes local alignment scores.

in: gene sequence (string)
    codon table (hashref)
    RSCU table (hashref)
out: new gene sequence (string)
#NO UNIT TEST

_pattern_aligner

takes a nucleotide sequence, a pattern, a peptide sequence, and a codon table and inserts Ns before the pattern until they align properly. This is so a pattern can be inserted out of frame.

in: nucleotide sequence (string),
    nucleotide pattern (string),
    amino acid sequence (string),
    codon table (hash reference)
out: nucleotide pattern (string)

_pattern_adder()

takes a nucleotide sequence, a nucleotide "pattern" to be interpolated, and the codon table, and returns an edited nucleotide sequence that contains the pattern (if possible).

in: nucleotide sequence (string),
    nucleotide pattern (string),
    codon table (hash reference)
out: nucleotide sequence (string) OR null

_codon_change_type

COPYRIGHT AND LICENSE

Copyright (c) 2015, Sarah Richardson All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

* The names of Johns Hopkins, the Joint Genome Institute, the Lawrence Berkeley National Laboratory, the Department of Energy, and the GeneDesign developers may not be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.