class ProteinTranslate::ProteinTranslate

Clase para traduciar una cadena en ARN a los codones y proteinas correspondientes

Attributes

equivalence[R]
stop[R]

Public Class Methods

new() click to toggle source
# File lib/ProteinTranslate/protein.rb, line 11
def initialize

        #Hash que contiene las equivalencias entre
        #codones y las respectivas proteĆ­nas
        @equivalence = {
                "AUG" => "Methionine",
                "UUU" => "Phenylalanine",
                "UUC" => "Phenylalanine",
                "UUA" => "Leucine",
                "UUG" => "Leucine",
                "UCU" => "Serine",
                "UCC" => "Serine",
                "UCA" => "Serine",
                "UCG" => "Serine",
                "UAU" => "Tyrosine",
                "UAC" => "Tyrosine",
                "UGU" => "Cysteine",
                "UGC" => "Cysteine",
                "UGG"=> "Tryptophan"
        }

        #Array que contiene los valores que si son detectados
        #en la cadena indican que se pueden terminar la traduccion
        @stop = ["UAA", "UAG", "UGA"]
end

Public Instance Methods

divideStringInCondons(cadena) click to toggle source

Metodo que recibe una cadena y devuelve un array de codons que la conforman

# File lib/ProteinTranslate/protein.rb, line 39
def divideStringInCondons(cadena)
        array = Array.new
        i = 0
        while i <= cadena.length-3
                if (@stop.include?("#{cadena[i,3]}"))
                        break
                end
                array << cadena[i,3]
                i += 3
        end
        array
end
translateString(cadena) click to toggle source

Metodo que recibe una cadena y devuelve un array con las proteinas que la conforman Previamente se convierten en codones

# File lib/ProteinTranslate/protein.rb, line 55
def translateString(cadena)
        array = divideStringInCondons(cadena)
        proteina = Array.new
        i = 0
                array.each do |value|
                        if(@equivalence.has_key?("#{value}"))
                                proteina[i] = @equivalence["#{value}"]
                                i += 1
                        end
                end
        proteina
end