From cca6a7c8cd3a43fab637812c65e803cccd2ab174 Mon Sep 17 00:00:00 2001 From: colin Date: Fri, 18 Nov 2022 23:54:34 +0000 Subject: [PATCH] app: stacked_cores: complete more 61-xx runs --- .../scripts/stacked_cores_52xx_db.py | 154 ++++++++++++++++++ crates/applications/stacked_cores/src/main.rs | 83 +++++----- 2 files changed, 199 insertions(+), 38 deletions(-) diff --git a/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py b/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py index 9fce01e..cc4edeb 100644 --- a/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py +++ b/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py @@ -3801,6 +3801,74 @@ DB = { ], }), '61-buf-pos_out-2_1windings_in-0_0windings_out-1windings_couple-0.0004rad-2000ctl_cond-20000coupling_cond-2000ps-100ps-8coupling-2e10-drive-': ParameterizedMeas({ + (-0.100, -0.100,): [ + MeasRow(4e-09, [ 16862, -18032, -18498, -18500, -18031, 16866]), + MeasRow(6e-09, [ 13648, -6586, -30892, -30893, -6634, 13817]), + ], + ( 0.000, 0.000,): [ + MeasRow(4e-09, [ 16862, -17183, 12512, 12514, -17181, 16865]), + MeasRow(6e-09, [ 14264, 14023, -30874, -30874, 13993, 14420]), + ], + ( 0.010, -0.080,): [ + MeasRow(4e-09, [ 16862, -17218, 13225, -18453, -17945, 16866]), + MeasRow(6e-09, [ 13898, 16563, -30873, -30884, -14061, 14153]), + ], + ( 0.010, -0.050,): [ + MeasRow(4e-09, [ 16862, -17178, 13222, -16941, -17559, 16866]), + MeasRow(6e-09, [ 13934, 16528, -30873, -30884, -12757, 14199]), + ], + ( 0.020, -0.080,): [ + MeasRow(4e-09, [ 16862, -17212, 13623, -18451, -17942, 16866]), + MeasRow(6e-09, [ 13895, 16593, -30873, -30885, -14097, 14151]), + ], + ( 0.020, -0.020,): [ + MeasRow(4e-09, [ 16862, -17174, 13623, 1966, -17163, 16865]), + MeasRow(6e-09, [ 14161, 16019, -30873, -30873, 4531, 14332]), + ], + ( 0.040, -0.100,): [ + MeasRow(4e-09, [ 16862, -17205, 14326, -18518, -17967, 16866]), + MeasRow(6e-09, [ 13876, 16647, -30870, -30885, -14216, 14135]), + ], + ( 0.050, -0.150,): [ + MeasRow(4e-09, [ 16862, -17191, 15114, -18632, -18001, 16865]), + MeasRow(6e-09, [ 13882, 16704, -30868, -30884, -14361, 14146]), + ], + ( 0.050, -0.100,): [ + MeasRow(4e-09, [ 16862, -17185, 15110, -18514, -17955, 16866]), + MeasRow(6e-09, [ 13871, 16702, -30868, -30885, -14259, 14134]), + ], + ( 0.050, -0.050,): [ + MeasRow(4e-09, [ 16862, -17141, 15098, -16926, -17533, 16866]), + MeasRow(6e-09, [ 13921, 16670, -30868, -30885, -12995, 14193]), + ], + ( 0.060, -0.120,): [ + MeasRow(4e-09, [ 16862, -17145, 16167, -18563, -17953, 16866]), + MeasRow(6e-09, [ 13863, 16749, -30871, -30885, -14327, 14131]), + ], + ( 0.070, -0.130,): [ + MeasRow(4e-09, [ 16862, -17129, 16417, -18586, -17955, 16866]), + MeasRow(6e-09, [ 13866, 16756, -30871, -30884, -14349, 14138]), + ], + ( 0.070, -0.070,): [ + MeasRow(4e-09, [ 16862, -17118, 16409, -18376, -17871, 16866]), + MeasRow(6e-09, [ 13867, 16755, -30871, -30885, -14173, 14135]), + ], + ( 0.080, -0.140,): [ + MeasRow(4e-09, [ 16862, -17119, 16514, -18608, -17958, 16866]), + MeasRow(6e-09, [ 13861, 16759, -30871, -30884, -14363, 14132]), + ], + ( 0.100, -0.100,): [ + MeasRow(4e-09, [ 16862, -17093, 16629, -18511, -17912, 16866]), + MeasRow(6e-09, [ 13847, 16763, -30871, -30885, -14279, 14116]), + ], + ( 0.100, 0.000,): [ + MeasRow(4e-09, [ 16862, -17044, 16601, 12452, -17086, 16866]), + MeasRow(6e-09, [ 14260, 15984, -30871, -30874, 12934, 14415]), + ], + ( 0.200, -0.200,): [ + MeasRow(4e-09, [ 16862, -17002, 16887, -18711, -17976, 16865]), + MeasRow(6e-09, [ 13858, 16773, -30870, -30885, -14424, 14132]), + ], ( 1.000, -1.000,): [ MeasRow(4e-09, [ 16863, -16729, 17385, -19143, -18169, 16866]), MeasRow(6e-09, [ 13832, 16789, -30869, -30886, -14705, 14109]), @@ -3840,6 +3908,12 @@ DB = { MeasRow(6e-09, [ -2905, 1055, -30287, -30296, -14558, 10198]), ], }), + '61-buf-pos_out-4_1windings_in-0_0windings_out-0windings_couple-0.0004rad-2000ctl_cond-20000coupling_cond-2000ps-100ps-7coupling-2e10-drive-': ParameterizedMeas({ + ( 1.000, -1.000,): [ + MeasRow(4e-09, [ 16862, -15918, 18152, -19512, -17756, 16864]), + MeasRow(6e-09, [ 14040, 16853, -30703, -30738, 6529, 14393]), + ], + }), '61-buf-pos_out-4_1windings_in-0_0windings_out-1windings_couple-0.0004rad-2000ctl_cond-20000coupling_cond-2000ps-100ps-6coupling-2e10-drive-': ParameterizedMeas({ ( 1.000, -1.000,): [ MeasRow(4e-09, [ 16866, -16456, 17771, -19027, -17659, 16868]), @@ -3847,10 +3921,90 @@ DB = { ], }), '61-buf-pos_out-4_1windings_in-0_0windings_out-2windings_couple-0.0004rad-2000ctl_cond-20000coupling_cond-2000ps-100ps-5coupling-2e10-drive-': ParameterizedMeas({ + (-0.100, -0.100,): [ + MeasRow(4e-09, [ 16872, -17437, -17739, -17742, -17438, 16869]), + MeasRow(6e-09, [ 12922, -9192, -30132, -30130, -9246, 13049]), + ], + (-0.050, -0.120,): [ + MeasRow(4e-09, [ 16872, -17059, -7684, -17859, -17410, 16869]), + MeasRow(6e-09, [ 13059, -1620, -30126, -30127, -11507, 13151]), + ], + (-0.040, -0.120,): [ + MeasRow(4e-09, [ 16872, -17062, -2968, -17859, -17409, 16869]), + MeasRow(6e-09, [ 13175, 1811, -30124, -30126, -12519, 13265]), + ], + (-0.020, -0.080,): [ + MeasRow(4e-09, [ 16872, -17046, 6130, -17148, -17290, 16869]), + MeasRow(6e-09, [ 13134, 8286, -30123, -30127, -13943, 13276]), + ], + (-0.010, -0.080,): [ + MeasRow(4e-09, [ 16872, -17048, 7716, -17148, -17290, 16869]), + MeasRow(6e-09, [ 13115, 9464, -30119, -30127, -14303, 13273]), + ], ( 0.000, 0.000,): [ MeasRow(4e-09, [ 16872, -17018, 8560, 8555, -17019, 16870]), MeasRow(6e-09, [ 13357, 2370, -30113, -30110, 2354, 13486]), ], + ( 0.010, -0.080,): [ + MeasRow(4e-09, [ 16872, -17050, 9254, -17148, -17290, 16869]), + MeasRow(6e-09, [ 13106, 10586, -30115, -30128, -14642, 13273]), + ], + ( 0.010, -0.050,): [ + MeasRow(4e-09, [ 16872, -17020, 9251, -7707, -17006, 16869]), + MeasRow(6e-09, [ 13300, 7522, -30112, -30119, -7940, 13303]), + ], + ( 0.020, -0.080,): [ + MeasRow(4e-09, [ 16872, -17051, 9846, -17148, -17290, 16869]), + MeasRow(6e-09, [ 13110, 11015, -30115, -30128, -14771, 13276]), + ], + ( 0.020, -0.020,): [ + MeasRow(4e-09, [ 16872, -17020, 9847, 6035, -17015, 16870]), + MeasRow(6e-09, [ 13385, 4189, -30113, -30115, 65, 13461]), + ], + ( 0.040, -0.100,): [ + MeasRow(4e-09, [ 16872, -17071, 11056, -17756, -17388, 16869]), + MeasRow(6e-09, [ 13111, 12056, -30121, -30129, -15451, 13280]), + ], + ( 0.050, -0.150,): [ + MeasRow(4e-09, [ 16872, -17080, 11826, -17938, -17429, 16869]), + MeasRow(6e-09, [ 13112, 12648, -30122, -30129, -15725, 13281]), + ], + ( 0.050, -0.100,): [ + MeasRow(4e-09, [ 16872, -17072, 11832, -17756, -17388, 16869]), + MeasRow(6e-09, [ 13112, 12599, -30122, -30129, -15600, 13280]), + ], + ( 0.050, -0.050,): [ + MeasRow(4e-09, [ 16872, -17022, 11845, -7704, -17005, 16869]), + MeasRow(6e-09, [ 13306, 9321, -30120, -30119, -8334, 13305]), + ], + ( 0.060, -0.120,): [ + MeasRow(4e-09, [ 16872, -17076, 13028, -17859, -17408, 16869]), + MeasRow(6e-09, [ 13112, 13456, -30120, -30130, -15861, 13280]), + ], + ( 0.070, -0.130,): [ + MeasRow(4e-09, [ 16873, -17070, 15108, -17882, -17408, 16869]), + MeasRow(6e-09, [ 13099, 14786, -30112, -30133, -16108, 13272]), + ], + ( 0.070, -0.070,): [ + MeasRow(4e-09, [ 16873, -17020, 15102, -16049, -17114, 16869]), + MeasRow(6e-09, [ 13110, 14293, -30112, -30130, -15033, 13265]), + ], + ( 0.080, -0.140,): [ + MeasRow(4e-09, [ 16873, -17055, 16171, -17903, -17400, 16869]), + MeasRow(6e-09, [ 13101, 15305, -30116, -30134, -16184, 13282]), + ], + ( 0.100, -0.100,): [ + MeasRow(4e-09, [ 16872, -17004, 16690, -17748, -17343, 16869]), + MeasRow(6e-09, [ 13103, 15478, -30115, -30133, -16142, 13284]), + ], + ( 0.100, 0.000,): [ + MeasRow(4e-09, [ 16872, -16955, 16674, 8571, -16966, 16870]), + MeasRow(6e-09, [ 13371, 8452, -30116, -30109, -1, 13454]), + ], + ( 0.200, -0.200,): [ + MeasRow(4e-09, [ 16872, -16942, 16965, -18015, -17393, 16869]), + MeasRow(6e-09, [ 13103, 15603, -30114, -30136, -16226, 13285]), + ], ( 1.000, -1.000,): [ MeasRow(4e-09, [ 16873, -16809, 17401, -18429, -17508, 16870]), MeasRow(6e-09, [ 13109, 15769, -30113, -30142, -16332, 13296]), diff --git a/crates/applications/stacked_cores/src/main.rs b/crates/applications/stacked_cores/src/main.rs index 4063ac2..90d2400 100644 --- a/crates/applications/stacked_cores/src/main.rs +++ b/crates/applications/stacked_cores/src/main.rs @@ -7102,60 +7102,63 @@ fn main() { // (-1.00, 1.00), // technically extraneous ( 0.20, -0.20), ( 0.10, -0.10), + (-0.10, -0.10), // try to get _real_ M=0 // (-1.00, -1.00), // uninitialized case ][..], - // &[ - // // negative side - // (-0.10, 0.10), - // (-0.20, 0.20), - // (-0.25, 0.25), - // (-0.05, 0.05), - // (-0.15, 0.15), - // (-0.02, 0.02), - // (-0.07, 0.07), - // (-0.12, 0.12), - // (-0.17, 0.17), - // (-0.22, 0.22), - // ][..], &[ // more detailed sweep - ( 0.30, -0.30), ( 0.05, -0.05), - ( 0.15, -0.15), - ( 0.25, -0.25), - ][..], - &[ - // even more verbosity ( 0.02, -0.02), ( 0.07, -0.07), - ( 0.12, -0.12), - ( 0.17, -0.17), - ( 0.22, -0.22), ][..], - &[ - // bias M2 to be 0.15 lower what we expect - (-0.20, 0.05), - (-0.10, -0.05), - (-0.25, 0.10), - (-0.05, -0.10), - ( 0.00, -0.15), - (-0.15, 0.00), - ( 0.10, -0.25), - ( 0.20, -0.35), - ], + // &[ + // // bias M2 to be 0.15 lower what we expect + // (-0.20, 0.05), + // (-0.10, -0.05), + // (-0.25, 0.10), + // (-0.05, -0.10), + // ( 0.00, -0.15), + // (-0.15, 0.00), + // ( 0.10, -0.25), + // ( 0.20, -0.35), + // ], &[ // test some asymmetries -- specifically where A1 is higher than expected + // ( 0.30, 0.00), + // ( 0.30, -0.20), + // ( 0.30, -0.10), + (-0.03, -0.02), + (-0.03, -0.01), + (-0.02, -0.01), + (-0.02, 0.00), + (-0.01, -0.02), + (-0.01, -0.03), + ( 0.00, -0.04), + ( 0.00, -0.03), + ( 0.10, 0.00), + ( 0.05, -0.10), + ( 0.05, -0.15), + ( 0.07, -0.13), + ( 0.02, -0.08), + ( 0.04, -0.10), + ( 0.06, -0.12), + ( 0.08, -0.14), + ( 0.01, -0.08), + ( 0.01, -0.05), + (-0.02, -0.08), + (-0.01, -0.08), + (-0.04, -0.12), + (-0.05, -0.12), + ][..], + &[ + // more asymmetries ( 0.20, 0.00), ( 0.20, -0.10), ( 0.20, 0.10), - ( 0.30, 0.00), - ( 0.30, -0.20), - ( 0.30, -0.10), - ( 0.10, 0.00), ( 0.00, -0.10), - (-0.10, -0.30), (-0.05, -0.20), + (-0.10, -0.30), ][..], &[ // unexpected scenarios @@ -7206,6 +7209,10 @@ fn main() { // ("pos", 2e3, 2e4, ps(2000), ps(100), 5, 2, 4, 1, 0, 0, um(400), 2e10), // // (17500, -18200) -> (10700, -15000) // ("pos", 2e3, 2e4, ps(2000), ps(100), 4, 2, 6, 1, 0, 0, um(400), 2e10), + + // completely decouple the output cores from eachother + // (18200, -19500) -> (16700, 6500) + // ("pos", 2e3, 2e4, ps(2000), ps(100), 7, 0, 4, 1, 0, 0, um(400), 2e10), ] { for &(init_flt_a, init_flt_b) in init_set { // each core is coupled to 1, 2, or 3 others + control slots