The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

  GD_Juggle_Codons.pl

VERSION

  Version 5.56

DESCRIPTION

  Given at least one protein-coding gene as input, the Juggle_Codons script can
  use several algorithms to modify the sequence without altering its
  translation. It is thus possible to generate a sequence that is optimized for
  expression, as different as possible from the original sequence, or some
  combination of the two.

  If no algorithm is specified, the balanced algorithm will be used. These are
  the algorithms provided by default with GeneDesign; you can make your own; see
  developer docs.

  Output will be named according to the name of the input file, and will be
  tagged with _CJ.

  Algorithms:
    high: The high algorithm replaces every codon in the input sequence with
        the most translationally optimal codon as specified by the input RSCU
        tables or known RSCU tables (if organism is specified). If the codon is
        already the ideal codon it is left alone.
    balanced: The balanced algorithm uses the rscu data to determine a
         likelihood of codon replacement.
    most_different_sequence: The most different sequence algorithm attempts to
        change as many bases as possible within the codon, preferring
        transversions over transitions.
    least_different_RSCU: The least different RSCU algorithm attempts to replace
        as many codons as possible while minimizing disruption of the original
        average RSCU value for the sequence. It will not make a replacement if
        the absolute change in RSCU value is greater than 1.
    random: The random algorithm makes random replacements.

USAGE

  -r OR -org must be provided. If both are given the table will be treated as
      another organism, named after the table's filename.

  Generate high and most different sequences given the yeast rscu table
    ./GD_Juggle_Codons.pl -i sequences.FASTA -org yeast\
                                                 -a most_different_sequence,high

  Use my rscu table to generate balanced sequences
    ./GD_Juggle_Codons.pl -i seqs.FASTA -r /my/dir/myrscu.rscu -a balanced

  Use my rscu table to pipeline balanced sequences
    ./GD_Juggle_Codons.pl -st ATCGATCCC -r /my/dir/myrscu.rscu -a balanced

ARGUMENTS

Required arguments:

  -org, --organism : an organism whose RSCU table can be found in the config
      directory, or several separated by commas
    AND/OR
  -r,   --rscu : path to an RSCU table generated by GD_Generate_RSCU_Table.pl

Optional arguments:

  -a,   --algorithm : which algorithms to use (see above), comma separated
          defaults to balanced
  -i,   --input : a file containing nucleotide sequences
  -st.  --string : a string containing DNA only - the program will return a
          DNA only string. this is intended for pipelining.
  -out, --output : path to an output directory
  -f,   --format : default genbank
  -sp,  --split : output all sequences as separate files
  -h,   --help : Display this message

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.