Mac binaries
[jabaws.git] / website / archive / binaries / mac / src / globplot / biopython-1.50 / Bio / Alphabet / Reduced.py
diff --git a/website/archive/binaries/mac/src/globplot/biopython-1.50/Bio/Alphabet/Reduced.py b/website/archive/binaries/mac/src/globplot/biopython-1.50/Bio/Alphabet/Reduced.py
new file mode 100644 (file)
index 0000000..dd90682
--- /dev/null
@@ -0,0 +1,181 @@
+# Copyright 2004 by Iddo Friedberg.
+# All rights reserved.
+# This code is part of the Biopython distribution and governed by its
+# license.  Please see the LICENSE file that should have been included
+# as part of this package.
+
+"""Reduced alphabets which lump together several amino-acids into one letter.
+
+Reduced (redundant or simplified) alphabets are used to represent protein sequences using an
+alternative alphabet which lumps together several amino-acids into one letter, based
+on physico-chemical traits. For example, all the aliphatics (I,L,V) are usually
+quite interchangeable, so many sequence studies group them into one letter
+
+Examples of reduced alphabets are available in:
+
+http://viscose.ifg.uni-muenster.de/html/alphabets.html
+
+Bio.utils.reduce_sequence is used to take a Protein alphabet, and reduce it using one of
+the tables here, or a user-defined table.
+"""
+
+from Bio import Alphabet
+
+# The Murphy tables are from here:
+#      Murphy L.R., Wallqvist A, Levy RM. (2000) Simplified amino acid alphabets for protein
+#      fold recognition and implications for folding. Protein Eng. 13(3):149-152
+
+murphy_15_tab = {"L": "L",
+             "V": "L",
+             "I": "L",
+             "M": "L",
+             "C": "C",
+             "A": "A",
+             "G": "G",
+             "S": "S",
+             "T": "T",
+             "P": "P",
+             "F": "F",
+             "Y": "F",
+             "W": "W",
+             "E": "E",
+             "D": "D",
+             "N": "N",
+             "Q": "Q",
+             "K": "K",
+             "R": "K",
+             "H": "H"}
+
+class Murphy15(Alphabet.ProteinAlphabet):
+   letters = "LCAGSTPFWEDNQKH"
+   size = 15
+murphy_15 = Murphy15()
+
+murphy_10_tab = {"L": "L",
+             "V": "L",
+             "I": "L",
+             "M": "L",
+             "C": "C",
+             "A": "A",
+             "G": "G",
+             "S": "S",
+             "T": "S",
+             "P": "P",
+             "F": "F",
+             "Y": "F",
+             "W": "F",
+             "E": "E",
+             "D": "E",
+             "N": "E",
+             "Q": "E",
+             "K": "K",
+             "R": "K",
+             "H": "H"}
+class Murphy10(Alphabet.ProteinAlphabet):
+   letters = "LCAGSPFEKH"
+   size = 10
+murphy_10 = Murphy10()
+
+murphy_8_tab  = {"L": "L",
+             "V": "L",
+             "I": "L",
+             "M": "L",
+             "C": "L",
+             "A": "A",
+             "G": "A",
+             "S": "S",
+             "T": "S",
+             "P": "P",
+             "F": "F",
+             "Y": "F",
+             "W": "F",
+             "E": "E",
+             "D": "E",
+             "N": "E",
+             "Q": "E",
+             "K": "K",
+             "R": "K",
+             "H": "H"}
+
+class Murphy8(Alphabet.ProteinAlphabet):
+   letters = "LASPFEKH"
+   size = 8
+murphy_8 = Murphy8()
+
+murphy_4_tab  = {"L": "L",
+             "V": "L",
+             "I": "L",
+             "M": "L",
+             "C": "L",
+             "A": "A",
+             "G": "A",
+             "S": "A",
+             "T": "A",
+             "P": "A",
+             "F": "F",
+             "Y": "F",
+             "W": "F",
+             "E": "E",
+             "D": "E",
+             "N": "E",
+             "Q": "E",
+             "K": "E",
+             "R": "E",
+             "H": "E"}
+
+class Murphy4(Alphabet.ProteinAlphabet):
+   letters = "LAFE"
+   size = 4
+murphy_4 = Murphy4()
+
+hp_model_tab = {"A": "P",   # Hydrophilic
+            "G": "P",
+            "T": "P",
+            "S": "P",
+            "N": "P",
+            "Q": "P",
+            "D": "P",
+            "E": "P",
+            "H": "P",
+            "R": "P",
+            "K": "P",
+            "P": "P",
+            "C": "H",  # Hydrophobic
+            "M": "H",
+            "F": "H",
+            "I": "H",
+            "L": "H",
+            "V": "H",
+            "W": "H",
+            "Y": "H"}
+
+class HPModel(Alphabet.ProteinAlphabet):
+   letters = "HP"
+   size = 2
+hp_model = HPModel()
+
+pc_5_table  = {"I": "A", # Aliphatic
+         "V": "A",
+         "L": "A",
+         "F": "R", # Aromatic
+         "Y": "R",
+         "W": "R",
+         "H": "R",
+         "K": "C", # Charged
+         "R": "C",
+         "D": "C",
+         "E": "C",
+         "G": "T", # Tiny
+         "A": "T",
+         "C": "T",
+         "S": "T",
+         "T": "D", # Diverse
+         "M": "D",
+         "Q": "D",
+         "N": "D",
+         "P": "D"}
+
+class PC5(Alphabet.ProteinAlphabet):
+   letters = "ARCTD"
+   size = 5
+hp_model = HPModel()