public FactoryEDO270(Type_Map map, bool[] pinc) : base(270, map, pinc) { synthetic = new bool[27]; for (int i = 0; i < 11; i++) { synthetic[(i * 10) % synthetic.Length] = true; } build_dichotomy(13); commas = new Comma[4]; pumps = new Pump[4]; commas[0] = new Comma(this, new int[] { 2, 2, 1, 3 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 0, 1, 0, 3, -1 }); pumps[1] = new Pump(commas[0]); commas[2] = new Comma(this, new int[] { 1, 2, -4 }); pumps[2] = new Pump(commas[0]); commas[3] = new Comma(this, new int[] { 2, 1, 1, 0, 1 }); pumps[3] = new Pump(commas[0]); PumpStructure ps1 = new PumpStructureTwoAcross(this, 1, 3); PumpStructure ps2 = new PumpStructureSimple(this, 2); pumpStructure = new PumpStructureRandom(this); }
public FactoryEDO59(Type_Map map, bool[] pinc) : base(59, map, pinc) { commas = new Comma[1]; pumps = new Pump[1]; commas[0] = new Comma(this, new int[] { 5, -3, 0 }); pumps[0] = new Pump(commas[0], new int[] { 21, 56, 37, 13, 48, 24, 5, 40 }); pumpStructure = new PumpStructureSimple(this, 0); for (int i = 0; i < edo; i++) { scale[i] = false; } for (int i = 0; i < 15; i++) { scale[(8 * i) % edo] = true; } /* * for (int i = 0; i < 42; i++) * { * scale[(31 * i) % edo] = true; * } */ /* * scale = new bool[59]; * for (int i = 0; i < 17; i++) * { * scale[(7 * i) % 59] = true; * } */ /* * scale[0] = true; * scale[6] = true; * scale[12] = true; * scale[18] = true; * scale[25] = true; */ dichotomy = new bool[1, edo]; dichotomy[0, 0] = true; dichotomy[0, 36] = true; dichotomy[0, 24] = true; dichotomy[0, 19] = true; dichotomy[0, 40] = true; dichotomy[0, 16] = true; dichotomy[0, 43] = true; }
public FactoryEDO32(Type_Map map, bool[] pinc) : base(32, map, pinc) { commas = new Comma[1]; pumps = new Pump[1]; commas[0] = new Comma(this, new int[] { 6, -5, 0 }); pumps[0] = new Pump(commas[0], new int[] { 22, 31, 8, 17, 26, 3 }); pumpStructure = new PumpStructureSimple(this, 0); for (int i = 0; i < edo; i++) { scale[i] = false; } for (int i = 0; i < 18; i++) { scale[(i * 9) % 32] = true; } }
public void olFactoryEDO5(int e, Type_Map tmap) { map = tmap; int ccnt = 3; comma3 = new int[ccnt]; comma5 = new int[ccnt]; comma7 = new int[ccnt]; scale = new bool[edo]; for (int i = 0; i < edo; i++) { scale[i] = true; } pumpStructure = new PumpStructureNull(this); switch (edo) { case 10: comma3[0] = 4; comma5[0] = 2; comma3[1] = 1; comma5[1] = -2; commas = new Comma[2]; pumps = new Pump[2]; commas[0] = new Comma(this, new int[] { 4, -2, -1 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 4, 2, 0 }); pumps[1] = new Pump(commas[1]); pumpStructure = new PumpStructureSimple(this, 0); break; case 12: comma3[0] = 4; comma5[0] = -1; comma3[1] = 0; comma5[1] = 3; commas = new Comma[2]; pumps = new Pump[2]; commas[0] = new Comma(this, new int[] { 4, -1, 0 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 0, 3, 0 }); pumps[1] = new Pump(commas[1]); PumpStructure a = new PumpStructureSimple(this, 0); PumpStructure b = new PumpStructureBig(this, 1); pumpStructure = new PumpStructureSum(this, a, b); break; case 15: commas = new Comma[2]; pumps = new Pump[2]; commas[0] = new Comma(this, new int[] { 5, 0, 0 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 0, 3, 0 }); pumps[1] = new Pump(commas[1]); pumpStructure = new PumpStructureSimple(this, 0); break; case 22: comma3[0] = 4; comma5[0] = 2; comma3[1] = 1; comma5[1] = -5; commas = new Comma[3]; pumps = new Pump[3]; commas[0] = new Comma(this, new int[] { 4, 2, 0 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 1, -5, 0 }); pumps[1] = new Pump(commas[1]); commas[2] = new Comma(this, new int[] { 5, -3, 0 }); pumps[2] = new Pump(commas[2]); pumpStructure = new PumpStructureSimple(this, 2); break; case 34: break; case 41: commas = new Comma[4]; pumps = new Pump[4]; commas[0] = new Comma(this, new int[] { -2, 2, 0, -1 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 6, 1, -6 }); commas[2] = new Comma(this, new int[] { -5, 0, 0, 2 }); commas[3] = new Comma(this, new int[] { 2, -5, 3 }); //pumps[1] = new Pump(commas[1], new int[] { 27, 36, 4, 13, 22, 31, 40 }); pumps[1] = new Pump(commas[3], new int[] { 0, 28, 20, 7, 31, 18, 10, 38, 21, 8 }); pumpStructure = new PumpStructureSimple(this, 1); for (int i = 0; i < edo; i++) { scale[i] = false; } /* * for (int i = 0; i < 14; i++) * { * scale[(9 * i) % edo] = true; * } */ scale[0] = true; scale[7] = true; scale[8] = true; scale[10] = true; scale[17] = true; scale[18] = true; scale[20] = true; scale[21] = true; scale[28] = true; scale[30] = true; scale[31] = true; scale[38] = true; scale[39] = true; /* * scale[0] = true; * scale[7] = true; * scale[12] = true; * scale[19] = true; * scale[24] = true; * scale[29] = true; * scale[36] = true; */ /* * scale = new bool[24]; * scale[0] = true; * scale[3] = true; * scale[6] = true; * scale[9] = true; * scale[13] = true; * scale[17] = true; * scale[20] = true; */ break; case 50: commas = new Comma[3]; pumps = new Pump[3]; commas[1] = new Comma(this, new int[] { 4, -1, 0 }); pumps[1] = new Pump(commas[1]); pumpStructure = new PumpStructureSimple(this, 1); break; case 53: break; case 65: commas = new Comma[4]; pumps = new Pump[4]; commas[0] = new Comma(this, new int[] { 15, 10 }); pumps[0] = new Pump(commas[0], new int[] { 0, 38, 11, 32, 5, 26, 64, 37, 58, 31, 52, 25, 63, 19, 57, 13, 51, 24, 45, 18, 39, 12, 50, 6, 44 }); pumpStructure = new PumpStructureSimple(this, 0); scale = new bool[13]; for (int i = 0; i < 5; i++) { scale[(6 * i) % 13] = true; } break; case 72: commas = new Comma[4]; pumps = new Pump[4]; commas[0] = new Comma(this, new int[] { -5, 0, 0, 2 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 0, -3, 3, -1 }); pumps[1] = new Pump(commas[1]); commas[2] = new Comma(this, new int[] { -2, -2, 1, 0 }); pumps[2] = new Pump(commas[2]); commas[3] = new Comma(this, new int[] { 5, -6 }); pumps[3] = new Pump(commas[3], new int[] { 0, 19, 38, 57, 4, 23, 42 }); //PumpStructure a12 = new PumpStructureBig(this, 0); //PumpStructure b12 = new PumpStructureSimple(this, 2); //pumpStructure = // a; // new PumpStructureSum(this, a12, b12); pumpStructure = new PumpStructureSimple(this, 3); scale = new bool[19]; scale[0] = true; scale[4] = true; scale[8] = true; scale[11] = true; scale[15] = true; break; case 84: commas = new Comma[1]; pumps = new Pump[1]; commas[0] = new Comma(this, new int[] { 3, 7 }); pumps[0] = new Pump(commas[0], new int[] { 0, 27, 54, 19, 46, 73, 38, 65, 8, 35 }); pumpStructure = new PumpStructureSimple(this, 0); for (int i = 0; i < edo; i++) { scale[i] = false; } for (int i = 0; i < 13; i++) { scale[(35 + 19 * i) % edo] = true; } break; case 140: comma3[0] = 0; comma5[0] = 3; comma7[0] = 5; comma3[1] = 5; comma5[1] = -6; for (int i = 0; i < edo; i++) { scale[i] = false; } for (int i = 0; i < 32; i++) { scale[(13 * i) % edo] = true; } break; case 159: commas = new Comma[3]; pumps = new Pump[3]; commas[0] = new Comma(this, new int[] { 0, 0, 9, 6 }); pumps[0] = new Pump(commas[0]); pumpStructure = new PumpStructureSimple(this, 0); break; case 270: commas = new Comma[3]; pumps = new Pump[3]; commas[0] = new Comma(this, new int[] { 6, 4, -3, -3 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 9, -8, 4, -2 }); pumps[1] = new Pump(commas[1]); commas[2] = new Comma(this, new int[] { 3, -2, 1, -2 }); pumps[2] = new Pump(commas[2]); pumpStructure = new PumpStructureSimple(this, 2); for (int i = 0; i < edo; i++) { scale[i] = false; } for (int i = 0; i < 44; i++) { scale[(43 * i) % edo] = true; } break; default: break; } icnt = 5 * edo; }
public FactoryEDO342(Type_Map map, bool[] pinc) : base(342, map, pinc) { build_dichotomy(11); commas = new Comma[4]; pumps = new Pump[4]; commas[0] = new Comma(this, new int[] { 2, 2, -7, 4 }); pumps[0] = new Pump(commas[0]); commas[1] = new Comma(this, new int[] { 8, 1 }); pumps[1] = new Pump(commas[1], new int[] { 0, 142, 284, 84, 226, 26, 168, 310, 110 }); commas[2] = new Comma(this, new int[] { -4, -3, -2, 2 }); pumps[2] = new Pump(commas[2], new int[] { 0, 142, 32, 98, 240, 55, 197, 87, 153, 310, 110 }); commas[3] = new Comma(this, new int[] { 3, 0, 0, -6 }); pumps[3] = new Pump(commas[3]); PumpStructure a342 = new PumpStructureSimple(this, 1); PumpStructure b342 = new PumpStructureBig(this, 2); pumpStructure = new PumpStructureSimple(this, 2); /* * scale = new bool[114]; * for(int i = 0; i < 5; i++) * { * scale[(i * 43) % 114] = true; * } */ /* * for (int i = 0; i < edo; i++) * { * scale[i] = false; * } * * scale[0] = true; * scale[11] = true; * scale[32] = true; * scale[44] = true; * scale[55] = true; * scale[66] = true; * scale[87] = true; * scale[98] = true; * scale[110] = true; * scale[131] = true; * scale[142] = true; * scale[153] = true; * scale[174] = true; * scale[186] = true; * scale[197] = true; * scale[208] = true; * scale[229] = true; * scale[240] = true; * scale[252] = true; * scale[263] = true; * scale[284] = true; * scale[287] = true; * scale[298] = true; * scale[310] = true; * scale[331] = true; */ /* * for (int i = 0; i < 24; i++) * { * scale[(71 * i) % edo] = true; * } */ /* * dichotomy = new bool[edo]; * * dichotomy[0] = true; * dichotomy[200] = true; * dichotomy[142] = true; * dichotomy[58] = true; * dichotomy[284] = true; * dichotomy[43] = true; * dichotomy[299] = true; * dichotomy[157] = true; * dichotomy[185] = true; */ }
public FactoryEDO27(Type_Map map, bool[] pinc) : base(27, map, pinc) { commas = new Comma[6]; pumps = new Pump[6]; commas[0] = new Comma(this, new int[] { 2, -3, 1 }); pumps[0] = new Pump(commas[0], new int[] { 14, 21, 1 }); commas[1] = new Comma(this, new int[] { 5, -1, -2 }); pumps[1] = new Pump(commas[1]); commas[2] = new Comma(this, new int[] { 0, -3, 0 }); pumps[2] = new Pump(commas[2]); commas[3] = new Comma(this, new int[] { 9, -1 }); pumps[3] = new Pump(commas[3], new int[] { 9, 20, 4, 15, 26, 10, 21, 5, 16, 0 }); commas[4] = new Comma(this, new int[] { -1, 5, -5 }); pumps[4] = new Pump(commas[4], new int[] { 0, 13, 26, 12, 25, 11 }); commas[5] = new Comma(this, new int[] { -2, 0, -1 }); pumps[5] = new Pump(commas[5], new int[] { 0, 11, 22 }); //pumpStructure = new PumpStructureSimple(tpumps[3] = new Pump(commas[3], new int[] pumpStructure = new PumpStructureSimple(this, 3); //PumpStructure b27 = new PumpStructureBig(this, 5); //pumpStructure = new PumpStructureSum(this, a27, b27); for (int i = 0; i < edo; i++) { scale[i] = false; } /* * scale[0] = true; * scale[2] = true; * scale[9] = true; * scale[11] = true; * //scale[16] = true; * scale[18] = true; * //scale[22] = true; * scale[20] = true; */ for (int i = 0; i < 17; i++) { scale[(6 + 16 * i) % edo] = true; } dichotomy = new bool[1, edo]; dichotomy[0, 0] = true; dichotomy[0, 11] = true; dichotomy[0, 16] = true; dichotomy[0, 9] = true; dichotomy[0, 18] = true; dichotomy[0, 20] = true; dichotomy[0, 7] = true; }
public FactoryEDO171(Type_Map map, bool[] pinc) : base(171, map, pinc) { build_dichotomy2(9); commas = new Comma[10]; pumps = new Pump[10]; //comma3[0] = 19; //comma5[0] = -19; //comma7[0] = 0; commas[0] = new Comma(this, new int[] { 1, 2, -4 }); pumps[0] = new Pump(commas[0] // , new int[] //{0, 33, 66, 99, 154, 38, 71 } ); commas[1] = new Comma(this, new int[] { 0, 3, 5 }); pumps[1] = new Pump(commas[1], new int[] { 0, 33, 66, 99, 44, 77, 22, 55 }); //{44, 66, 88, 110, 132, 154, 5, 27, 49, 71, 93, 115 }); commas[2] = new Comma(this, new int[] { 7, -4, -1 }); int ofs = 26 * 36; pumps[2] = new Pump(commas[2], new int[] { 66, 111, 40, 85, 130, 59, 104, 33 }); //{33, 133, 78, 7, 123, 52, 168, 97, 42, 142, 71, 0 }); //{ 129, 74, 3, 103, 48, 148, 77, 22, 122, 67, 167, 96}); /* * { * (0+ofs)%edo, * (126+ofs)%edo, * (26+ofs)%edo, * (152+ofs)%edo, * (52+ofs)%edo, * (7+ofs)%edo, * (78+ofs)%edo, * (33+ofs)%edo, * }); */ commas[3] = new Comma(this, new int[] { 9, 0, -9 }); pumps[3] = new Pump(commas[3]); commas[4] = new Comma(this, new int[] { -8, -1, 0 }); pumps[4] = new Pump(commas[4], new int[] { 90, 19, 119, 48, 148, 77, 6, 106, 35 }); commas[5] = new Comma(this, new int[] { -2, -7, 3 }); pumps[5] = new Pump(commas[5], new int[] { 0, 55, 88, 143, 27, 127, 11, 44, 99, 154, 83, 116 }); commas[6] = new Comma(this, new int[] { 1, 5, 1 }); pumps[6] = new Pump(commas[6] //, new int[] //{110, 165, 49, 104, 159, 43} // { 0, 116, 61, 132, 77, 22, 138} //{129, 74, 19, 135, 35, 151, 96 } ); commas[7] = new Comma(this, new int[] { 36, -12, 1 }); pumps[7] = new Pump(commas[7], new int[] { 74, 148, 51, 125, 28, 102, 5, 79, 153, 56, 130, 33, 107 }); /* * commas[8] = new Comma(this, new int[] { 0, 6, 10 }); * pumps[8] = new Pump(commas[8], new int[] * {110, 121, 132, 143, 154, 165}); */ commas[9] = new Comma(this, new int[] { -1, 1, 9 }); pumps[9] = new Pump(commas[9], new int[] { 66, 99, 132, 165, 27, 60, 93, 126, 159, 21 }); PumpStructure a171 = new PumpStructureBig(this, 0); PumpStructure b171 = new PumpStructureSimple(this, 6); pumpStructure = new PumpStructureSimple(this, 2); //pumpStructure = new PumpStructureTwo(this, 0, 6); scale = new bool[19]; for (int i = 0; i < 8; i++) { scale[(7 * i) % scale.Length] = true; } /* * for (int i = 0; i < edo; i++) * { * scale[i] = false; * } * for (int i = 0; i < 47; i++) * { * scale[(11 * i) % scale.Length] = true; * } */ /* * scale[0] = true; * scale[6] = true; * scale[16] = true; * scale[22] = true; * scale[32] = true; * scale[38] = true; * scale[55] = true; * scale[61] = true; * scale[71] = true; * scale[77] = true; * scale[87] = true; * scale[93] = true; * scale[99] = true; * scale[116] = true; * scale[122] = true; * scale[132] = true; * scale[138] = true; * scale[148] = true; * scale[154] = true; */ /* * for (int i = 0; i < 53; i++) * { * scale[(100 * i) % edo] = true; * } */ /* * scale[0] = true; * scale[11] = true; * scale[22] = true; * scale[27] = true; * scale[44] = true; * scale[55] = true; * scale[66] = true; * scale[83] = true; * scale[88] = true; * scale[99] = true; * scale[116] = true; * scale[127] = true; * scale[138] = true; * scale[143] = true; * scale[154] = true; */ }