public void SetUp() { histo = new HistogramChar(); }
public void TearDown() { this.histo = null; }
/// <summary> /// Recognizes the alphabet of the given character sequence. The method uses /// a simple heuristics which might fail especially when the sequence is /// short. Please note, that a DNA or RNA sequence can contain more than /// the symbols of the four bases. /// </summary> /// <param name="characters"> Character sequence. </param> /// <returns> Returns an alphabet. </returns> static public Alphabet Recognize(IEnumerable<char> characters) { HistogramChar histo = new HistogramChar(); histo.Inc(characters); if (( histo.Get('F') + histo.Get('E') + histo.Get('P') + histo.Get('Q') + histo.Get('I') + histo.Get('L') + histo.Get('F') + histo.Get('E') + histo.Get('p') + histo.Get('q') + histo.Get('i') + histo.Get('l')) > 0) return (AlphabetAA.Instance()); if (histo.GetRelative('U') > 0.1 || histo.GetRelative('u') > 0.1) return (AlphabetRNA.Instance()); if (histo.GetRelative('a') > 0.1 || histo.GetRelative('A') > 0.1) return (AlphabetDNA.Instance()); return (AlphabetAA.Instance()); }