/// <summary> /// Run through all the iterations /// </summary> /// <param name="numIterations"></param> public void Run(int numIterations) { if (numIterations <= 0) { return; } // Do an initial run Viterbi viterbi = new Viterbi(this.Observations); viterbi.Run(); this.Iterations = new List <Viterbi>(); this.Iterations.Add(viterbi); for (int i = 1; i < numIterations; i++) { // Set up the new iteration viterbi = new Viterbi(this.Observations); // Overwrite the default emissions and transitions viterbi.Transitions = Iterations.Last().RetrainedTransitions; viterbi.Emissions = Iterations.Last().RetrainedEmissions; viterbi.Run(); this.Iterations.Add(viterbi); } }
private static void RunViterbi() { string genome = ReadGenome(@"data\GCF_000091665.1_ASM9166v1_genomic.fna"); Viterbi viterbi = new Viterbi(genome); viterbi.Run(); string text = viterbi.Print(); Console.WriteLine(text); File.WriteAllText("viterbi_results.txt", text); Console.WriteLine("Press any key..."); Console.ReadKey(); }