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.