public TestAnneal( double targetTemp, Oligo oligo, int amplicon, double shiftRange, int lenMin, int lenMax, boolean forward, boolean sense, boolean modified) throws IOException { super( mage.Tools.FASTA.readFFN(Constants.blastdirectory, "genome.ffn"), targetTemp, oligo, amplicon, shiftRange, lenMin, lenMax, forward, sense, modified); // creationTracker = new int[matrix.length][matrix[0].length]; epochTracker = new Integer[matrix.length][matrix[0].length]; mcsTracker = new Integer[matrix.length][matrix[0].length]; scoreTracker = new Double[matrix.length][matrix[0].length]; }
public static void main(String[] args) throws Exception { String gen = mage.Tools.FASTA.readFFN(Constants.blastdirectory, "genome.ffn"); Oligo o = Oligo.InsertionFactory(gen, "TAG", 3090358, 2, true, "endA"); // Oligo o = Oligo.MismatchFactory(genome, "A", left_position, right_position, replichore, true, // genome) // test Move if (false) { TestAnneal ta = new TestAnneal(60.0, o, 400, .05, 16, 30, false, true, false); System.out.println("TestMove in Two dimensions, T = " + ta.initialT); ta.testGetMove(ta.initialT); float cooledT = ta.cool(ta.initialT); cooledT = ta.cool(cooledT); System.out.println("Partially cooled, T = " + cooledT); ta.testGetMove(cooledT); System.out.println("Fully Cooled, T = " + ta.finalT); ta.testGetMove(ta.finalT); ta = new TestAnneal(60.0, o, 400, 0, 16, 30, false, true, false); System.out.println("TestMove, No shifting"); ta.testGetMove(ta.initialT); // no shifting allowed ta = new TestAnneal(60.0, o, 400, .05, 20, 20, false, true, false); System.out.println("TestMove, Fixed length"); ta.testGetMove(ta.initialT); // fixed length } // test Cool if (false) { // Slowdown Anneal.setCoolingType(CoolingType.SLOWDOWN); TestAnneal ta = new TestAnneal(60.0, o, 400, .05, 16, 30, false, true, false); ta.testCool(); // Linear Anneal.setCoolingType(CoolingType.LINEAR); ta = new TestAnneal(60.0, o, 400, .05, 16, 30, false, true, false); ta.testCool(); } // test getOptimizedPrimer if (false) { TestAnneal ta = new TestAnneal(60.0, o, 400, .05, 10, 30, false, true, false); Anneal.random.setSeed(9999l); ta.testOptimize(); ta = new TestAnneal(60.0, o, 400, .05, 10, 30, false, true, false); Anneal.random.setSeed(8888l); ta.testOptimize(); ta = new TestAnneal(60.0, o, 400, .05, 10, 30, false, true, false); Anneal.random.setSeed(7777l); ta.testOptimize(); } // test accept if (false) { TestAnneal ta = new TestAnneal(60.0, o, 400, .05, 10, 30, false, true, false); System.out.println("Test Accept at initial temp"); Anneal.random.setSeed(999l); ta.testAccept(ta.initialT); ta.testAccept2(ta.initialT); System.out.println("Test Accept at final temp"); Anneal.random.setSeed(888l); // ta.testAccept(ta.finalT); } // test initial temp if (false) { TestAnneal ta = new TestAnneal(60.0, o, 400, .05, 10, 30, false, true, false); ta.testInitialTemp(); ta.testInitialTemp(); ta.testInitialTemp(); } // test a particular problem primer if (true) { String directory = Constants.blastdirectory + "nat/"; String genome = FASTA.readFFN(directory, "genome.FASTA"); Oligo.Directory = directory; Oligo.Genome = "genome.FASTA"; o = Oligo.MismatchFactory(genome, "A", 4572079, 4572079, 1, true, "avrII07"); TestAnneal ta = new TestAnneal(60.0, o, 500, .05, 10, 30, false, true, true); ta.testOptimize(); } }