X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=binaries%2Fsrc%2Fglobplot%2Fbiopython-1.50%2FBio%2FEncodings%2FIUPACEncoding.py;fp=binaries%2Fsrc%2Fglobplot%2Fbiopython-1.50%2FBio%2FEncodings%2FIUPACEncoding.py;h=a4089a3d5b51b38b47ae0d01711a14a7885448eb;hb=119df1cedad3d4760e6fd458713da2488eff79cc;hp=0000000000000000000000000000000000000000;hpb=d3806a66f002b93f6dc03447b6628f943a3ba90c;p=jabaws.git diff --git a/binaries/src/globplot/biopython-1.50/Bio/Encodings/IUPACEncoding.py b/binaries/src/globplot/biopython-1.50/Bio/Encodings/IUPACEncoding.py new file mode 100644 index 0000000..a4089a3 --- /dev/null +++ b/binaries/src/globplot/biopython-1.50/Bio/Encodings/IUPACEncoding.py @@ -0,0 +1,126 @@ +# Set up the IUPAC alphabet properties + + +from Bio.PropertyManager import default_manager +from Bio import Alphabet +from Bio.Alphabet import IUPAC +from Bio.Data import IUPACData + +from Bio import Transcribe, Translate + +set_prop = default_manager.class_property + +# weight tables +set_prop[IUPAC.IUPACUnambiguousDNA]["weight_table"] = \ + IUPACData.unambiguous_dna_weights +set_prop[IUPAC.IUPACAmbiguousDNA]["weight_table"] = \ + IUPACData.avg_ambiguous_dna_weights +set_prop[IUPAC.IUPACUnambiguousRNA]["weight_table"] = \ + IUPACData.unambiguous_rna_weights +set_prop[IUPAC.IUPACAmbiguousRNA]["weight_table"] = \ + IUPACData.avg_ambiguous_rna_weights +set_prop[IUPAC.IUPACProtein]["weight_table"] = \ + IUPACData.protein_weights +set_prop[IUPAC.ExtendedIUPACProtein]["weight_table"] = \ + IUPACData.avg_extended_protein_weights + +set_prop[IUPAC.IUPACUnambiguousDNA]["weight_range_table"] = \ + IUPACData.unambiguous_dna_weight_ranges +set_prop[IUPAC.IUPACAmbiguousDNA]["weight_range_table"] = \ + IUPACData.ambiguous_dna_weight_ranges +set_prop[IUPAC.IUPACUnambiguousRNA]["weight_range_table"] = \ + IUPACData.unambiguous_rna_weight_ranges +set_prop[IUPAC.IUPACAmbiguousRNA]["weight_range_table"] = \ + IUPACData.ambiguous_rna_weight_ranges +set_prop[IUPAC.IUPACProtein]["weight_range_table"] = \ + IUPACData.protein_weight_ranges +set_prop[IUPAC.ExtendedIUPACProtein]["weight_range_table"] = \ + IUPACData.extended_protein_weight_ranges + + + +# transcriber objects + +set_prop[Alphabet.DNAAlphabet]["transcriber"] = \ + Transcribe.generic_transcriber + +set_prop[IUPAC.IUPACAmbiguousDNA]["transcriber"] = \ + Transcribe.ambiguous_transcriber + +set_prop[IUPAC.IUPACUnambiguousDNA]["transcriber"] = \ + Transcribe.unambiguous_transcriber + + +set_prop[Alphabet.RNAAlphabet]["transcriber"] = \ + Transcribe.generic_transcriber + +set_prop[IUPAC.IUPACAmbiguousRNA]["transcriber"] = \ + Transcribe.ambiguous_transcriber + +set_prop[IUPAC.IUPACUnambiguousRNA]["transcriber"] = \ + Transcribe.unambiguous_transcriber + + +# translator objects +for name, obj in Translate.unambiguous_dna_by_name.items(): + property = "translator.name." + name + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + set_prop[obj.table.protein_alphabet.__class__][property] = obj + +for name, obj in Translate.unambiguous_rna_by_name.items(): + property = "translator.name." + name + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "rna_translator.name." + name + set_prop[obj.table.protein_alphabet.__class__][property] = obj + + +for id, obj in Translate.unambiguous_dna_by_id.items(): + property = "translator.id.%d" % id + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + set_prop[obj.table.protein_alphabet.__class__][property] = obj + if id == 1: + set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj + set_prop[obj.table.protein_alphabet.__class__]["translator"] = obj + + +for id, obj in Translate.unambiguous_rna_by_id.items(): + property = "translator.id.%d" % id + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "rna_translator.id.%d" % id + set_prop[obj.table.protein_alphabet.__class__][property] = obj + if id == 1: + set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj + set_prop[obj.table.protein_alphabet.__class__]["rna_translator"] = obj + +# ambiguous translator objects +for name, obj in Translate.ambiguous_dna_by_name.items(): + property = "translator.name." + name + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "ambiguous_translator.name." + name + set_prop[obj.table.protein_alphabet.__class__][property] = obj + +for name, obj in Translate.ambiguous_rna_by_name.items(): + property = "translator.name." + name + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "ambiguous_rna_translator.name." + name + set_prop[obj.table.protein_alphabet.__class__][property] = obj + + +for id, obj in Translate.ambiguous_dna_by_id.items(): + property = "translator.id.%d" % id + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "ambiguous_translator.id.%d" % id + set_prop[obj.table.protein_alphabet.__class__][property] = obj + if id == 1: + set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj + set_prop[obj.table.protein_alphabet.__class__]["ambiguous_translator"] = obj + + +for id, obj in Translate.ambiguous_rna_by_id.items(): + property = "translator.id.%d" % id + set_prop[obj.table.nucleotide_alphabet.__class__][property] = obj + property = "ambiguous_rna_translator.id.%d" % id + set_prop[obj.table.protein_alphabet.__class__][property] = obj + if id == 1: + set_prop[obj.table.nucleotide_alphabet.__class__]["translator"] = obj + set_prop[obj.table.protein_alphabet.__class__]["ambiguous_rna_translator"] = obj