diff --git a/config/grid/ibm_rochester.txt b/config/grid/ibm_rochester.txt new file mode 100644 index 00000000..0fe11f00 --- /dev/null +++ b/config/grid/ibm_rochester.txt @@ -0,0 +1,10 @@ +001111100 +001000100 +111111111 +100010001 +111111111 +001000100 +111111111 +100010001 +111111111 +001000100 diff --git a/config/grid/rigetti_aspen.txt b/config/grid/rigetti_aspen.txt new file mode 100644 index 00000000..0b511c34 --- /dev/null +++ b/config/grid/rigetti_aspen.txt @@ -0,0 +1,4 @@ +1111 +1111 +1111 +1111 diff --git a/config/patterns/ibm_rochester.txt b/config/patterns/ibm_rochester.txt index 6d86229d..7ba8b532 100644 --- a/config/patterns/ibm_rochester.txt +++ b/config/patterns/ibm_rochester.txt @@ -1,14 +1,25 @@ { - 'A': {(0, 1), (2, 3), (4, 6), (5, 9), (7, 8), (10, 11), (12, 13), - (14, 15), (16, 19), (18, 27), (20, 21), (23, 24), (25, 26), - (28, 32), (30, 31), (33, 34), (36, 37), (38, 41), (39, 42), - (43, 44), (45, 46), (47, 48), (49, 50)}, - 'B': {(0, 5), (1, 2), (3, 4), (6, 13), (7, 16), (9, 10), (11, 12), - (15, 18), (17, 23), (19, 20), (21, 22), (24, 25), (26, 27), - (29, 36), (30, 39), (32, 33), (34, 35), (37, 38), (40, 46), - (41, 50), (42, 43), (44, 45), (48, 49)}, - 'C': {(0, 5), (1, 2), (3, 4), (7, 16), (8, 9), (11, 17), (13, 14), - (15, 18), (19, 20), (21, 28), (22, 23), (25, 29), (26, 27), - (30, 39), (31, 32), (34, 40), (35, 36), (37, 38), (41, 50), - (42, 43), (44, 51), (46, 47), (48, 52)}, + 'A': + [ + (54, 55), (42, 43), (63, 72), (40, 41), (18, 19), + (35, 44), (47, 56), (25, 26), (27, 36), (6, 15), + (60, 61), (37, 38), (4, 5), (73, 74), (2, 3), + (23, 24), (62, 71), (75, 76), (21, 22), (77, 78), + (57, 58), (11, 20), (79, 80) + ], + 'B': + [ + (74, 75), (31, 40), (22, 23), (61, 62), (36, 37), + (5, 6), (26, 35), (72, 73), (71, 80), (54, 63), + (58, 59), (20, 21), (18, 27), (56, 57), (51, 60), + (41, 42), (78, 79), (43, 44), (67, 76), (38, 39), + (15, 24), (2, 11), (3, 4) + ], + 'C': [ + (61, 62), (36, 37), (5, 6), (26, 35), (58, 67), + (72, 73), (71, 80), (54, 63), (22, 31), (76, 77), + (18, 27), (3, 4), (39, 40), (78, 87), (42, 51), + (74, 83), (55, 56), (19, 20), (38, 47), (43, 44), + (2, 11), (24, 25), (59, 60) + ] } diff --git a/config/patterns/rigetti_aspen.txt b/config/patterns/rigetti_aspen.txt index ff4a8824..4a4033d2 100644 --- a/config/patterns/rigetti_aspen.txt +++ b/config/patterns/rigetti_aspen.txt @@ -1,5 +1,5 @@ { - 'A': {(0, 7), (1, 14), (15, 8), (9, 10), (11, 12), (13, 2), (3, 4), (5, 6)}, - 'B': {(0, 1), (14, 15), (8, 9), (10, 11), (12, 13), (2, 3), (4, 5), (6, 7)}, - 'C': {(0, 7), (1, 2), (14, 13), (15, 8), (9, 10), (11, 12), (3, 4), (5, 6)}, + 'A' : [ (0,1), (5,9), (12,13), (4,8), (2,3), (7,11), (14,15), (6,10) ], + 'B' : [ (1,5), (9,13), (8,12), (0,4), (2,6), (10,14), (11,15), (3,7) ], + 'C' : [ (0,1), (5,6), (2,3), (7,11), (14,15), (9,10), (12,13), (4,8) ] } diff --git a/config/patterns/test.txt b/config/patterns/test.txt index 58941578..831050ae 100644 --- a/config/patterns/test.txt +++ b/config/patterns/test.txt @@ -1,4 +1,4 @@ { - 'A': {(0, 2), (1, 3)}, - 'B': {(0, 1), (2, 3)} + 'A': [(0, 2), (1, 3)], + 'B': [(0, 1), (2, 3)] } diff --git a/python/circuits/generator.py b/python/circuits/generator.py index 7fba7cc3..160861b1 100644 --- a/python/circuits/generator.py +++ b/python/circuits/generator.py @@ -216,11 +216,13 @@ def main(args): arg_parser = argparse.ArgumentParser() arg_parser.add_argument('--pattern-file', + '-p', type=str, required=True, help=f'pattern filename') arg_parser.add_argument( '--sequence', + '-s', type=str, required=True, help=f'sequence of device-specific coupler activation patterns') @@ -237,6 +239,7 @@ def main(args): required=True, help='name of the two-qubit gate known to qsim, e.g. cz, fs') arg_parser.add_argument('--depth', + '-d', type=int, required=True, help='number of layers of two-qubit gates')