diff --git a/crates/applications/stacked_cores/scripts/plot_58xx.py b/crates/applications/stacked_cores/scripts/plot_58xx.py new file mode 100755 index 0000000..c559b59 --- /dev/null +++ b/crates/applications/stacked_cores/scripts/plot_58xx.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python3 + +from natsort import natsorted + +from stacked_cores_52xx import * +from stacked_cores_52xx_plotters import * + + +def extract_58xx_tx(meas_rows: list) -> tuple: + """ + extracts a flat tuple of input/output M mappings from a 58xx run + """ + + return ( + meas_rows[0].m[0], # input (neg) + meas_rows[0].m[2], # I/O (pos) + meas_rows[0].m[3], # I/O (neg) + meas_rows[0].m[5], # input (pos) + meas_rows[1].m[2], # output (pos) + meas_rows[1].m[3], # output (neg) + 0.5 * (meas_rows[1].m[2] - meas_rows[1].m[3]) # output (diff) + ) + + +buf_gates = read_db(lambda name: name.startswith("58-")) + +sweep_buf_inputs = lambda points=101: [(-m, m, -m, m, None, None, None) for m in sweep_1d(points)] +sweep_mpos = lambda mneg, points=101: [(mneg, m, mneg, m, None, None, None) for m in sweep_1d(points)] + + +for name, meas in natsorted(buf_gates.items()): + # sweep Mneg = -Mpos + # trace = eval_series(meas, sweep_buf_inputs(41), extract_58xx_tx, y_idx=6) + # plot(f"{name}", "Mpos", trace) + # plot_slope(f"slope {name}", "Mpos", trace) + + # sweep M0 with M1 fixed constant (to check for some `max(M+, M-)`-like effect + trace = eval_series(meas, sweep_mpos(-5000, 41), extract_58xx_tx, y_idx=6) + plot(f"{name}", "Mneg=-5000", trace) + plot_slope(f"slope {name}", "Mneg=-5000", trace) + trace = eval_series(meas, sweep_mpos(5000, 41), extract_58xx_tx, y_idx=6) + plot(f"{name}", "Mneg=5000", trace) + plot_slope(f"slope {name}", "Mneg=5000", trace) 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 b2a1a71..669bea8 100644 --- a/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py +++ b/crates/applications/stacked_cores/scripts/stacked_cores_52xx_db.py @@ -2597,26 +2597,138 @@ DB = { MeasRow(4e-09, [ 16825, -17294, -17292, 16243, -17747, -17703]), MeasRow(6e-09, [-27897, -5218, -16601, 14065, -12827, -27939]), ], + (-0.060, -0.060,): [ + MeasRow(4e-09, [ -5092, -17433, -4412, -4484, -17435, -5190]), + MeasRow(6e-09, [-27905, -9769, -5037, -5081, -9860, -27902]), + ], + (-0.040, -0.070,): [ + MeasRow(4e-09, [ -8560, -17434, 2047, -8423, -17437, 1724]), + MeasRow(6e-09, [-27909, -10542, 1050, -8810, -8342, -27895]), + ], + (-0.020, -0.080,): [ + MeasRow(4e-09, [-12000, -17434, 4962, -12190, -17437, 5551]), + MeasRow(6e-09, [-27911, -11335, 3817, -12335, -7550, -27896]), + ], + (-0.010, -0.090,): [ + MeasRow(4e-09, [-15347, -17441, 6161, -15535, -17446, 6011]), + MeasRow(6e-09, [-27927, -12154, 5034, -15358, -7519, -27898]), + ], ( 0.000, 0.000,): [ MeasRow(4e-09, [ 6637, -17439, 3593, 3649, -17442, 6579]), MeasRow(6e-09, [-27891, -6977, 2102, 2136, -7044, -27889]), ], + ( 0.010, -0.110,): [ + MeasRow(4e-09, [-17064, -17662, 8613, -17251, -17679, 6770]), + MeasRow(6e-09, [-27929, -12725, 7365, -16423, -7600, -27897]), + ], + ( 0.010, -0.100,): [ + MeasRow(4e-09, [-16619, -17578, 8090, -16768, -17587, 6789]), + MeasRow(6e-09, [-27934, -12565, 6883, -16177, -7506, -27896]), + ], + ( 0.010, -0.010,): [ + MeasRow(4e-09, [ 6228, -17439, 4693, 2510, -17441, 6930]), + MeasRow(6e-09, [-27892, -7046, 3083, 1140, -7004, -27888]), + ], + ( 0.020, -0.020,): [ + MeasRow(4e-09, [ 5760, -17439, 5617, 1481, -17441, 7277]), + MeasRow(6e-09, [-27893, -7142, 3913, 256, -6971, -27887]), + ], + ( 0.030, -0.110,): [ + MeasRow(4e-09, [-17064, -17663, 10372, -17254, -17676, 7527]), + MeasRow(6e-09, [-27930, -12694, 8929, -16420, -7462, -27894]), + ], + ( 0.030, -0.030,): [ + MeasRow(4e-09, [ 4798, -17440, 6514, 457, -17441, 7647]), + MeasRow(6e-09, [-27892, -7354, 4735, -616, -6932, -27886]), + ], + ( 0.040, -0.040,): [ + MeasRow(4e-09, [ 1809, -17439, 7520, -647, -17441, 8057]), + MeasRow(6e-09, [-27893, -8020, 5749, -1586, -6866, -27884]), + ], ( 0.050, -0.050,): [ MeasRow(4e-09, [ -1607, -17438, 8665, -2199, -17441, 8526]), MeasRow(6e-09, [-27898, -8784, 6898, -2966, -6786, -27884]), ], + ( 0.060, -0.140,): [ + MeasRow(4e-09, [-17370, -17715, 14259, -17395, -17639, 8956]), + MeasRow(6e-09, [-27931, -12712, 12289, -16558, -7176, -27893]), + ], + ( 0.060, -0.120,): [ + MeasRow(4e-09, [-17297, -17700, 13641, -17399, -17662, 8983]), + MeasRow(6e-09, [-27931, -12695, 11760, -16539, -7183, -27893]), + ], + ( 0.060, -0.060,): [ + MeasRow(4e-09, [ -5088, -17437, 9985, -5434, -17439, 9062]), + MeasRow(6e-09, [-27901, -9583, 8170, -5900, -6728, -27886]), + ], + ( 0.070, -0.070,): [ + MeasRow(4e-09, [ -8556, -17437, 11859, -8900, -17438, 9734]), + MeasRow(6e-09, [-27908, -10378, 9919, -9065, -6657, -27891]), + ], + ( 0.080, -0.130,): [ + MeasRow(4e-09, [-17347, -17694, 15116, -17282, -17582, 12127]), + MeasRow(6e-09, [-27931, -12672, 13046, -16515, -6442, -27898]), + ], + ( 0.080, -0.080,): [ + MeasRow(4e-09, [-11998, -17428, 14545, -12387, -17438, 12132]), + MeasRow(6e-09, [-27911, -11147, 12355, -12246, -6229, -27894]), + ], + ( 0.090, -0.130,): [ + MeasRow(4e-09, [-17342, -17683, 15551, -17204, -17532, 14744]), + MeasRow(6e-09, [-27930, -12666, 13443, -16484, -5841, -27889]), + ], + ( 0.100, -0.160,): [ + MeasRow(4e-09, [-17376, -17692, 15827, -17160, -17472, 15663]), + MeasRow(6e-09, [-27931, -12682, 13694, -16467, -5610, -27892]), + ], ( 0.100, -0.100,): [ MeasRow(4e-09, [-16591, -17514, 15978, -16376, -17384, 15672]), MeasRow(6e-09, [-27933, -12358, 13796, -15847, -5531, -27890]), ], + ( 0.110, -0.180,): [ + MeasRow(4e-09, [-17397, -17697, 15856, -17150, -17426, 16117]), + MeasRow(6e-09, [-27931, -12694, 13725, -16467, -5490, -27898]), + ], + ( 0.110, -0.140,): [ + MeasRow(4e-09, [-17352, -17675, 15901, -17109, -17410, 16121]), + MeasRow(6e-09, [-27930, -12661, 13761, -16437, -5476, -27898]), + ], + ( 0.120, -0.120,): [ + MeasRow(4e-09, [-17274, -17649, 16004, -17027, -17363, 16345]), + MeasRow(6e-09, [-27930, -12618, 13845, -16371, -5401, -27897]), + ], + ( 0.130, -0.150,): [ + MeasRow(4e-09, [-17360, -17673, 15985, -17080, -17366, 16391]), + MeasRow(6e-09, [-27931, -12660, 13834, -16418, -5394, -27896]), + ], + ( 0.130, -0.130,): [ + MeasRow(4e-09, [-17333, -17659, 16018, -17055, -17356, 16392]), + MeasRow(6e-09, [-27930, -12638, 13858, -16397, -5386, -27896]), + ], + ( 0.140, -0.160,): [ + MeasRow(4e-09, [-17370, -17675, 16015, -17079, -17359, 16411]), + MeasRow(6e-09, [-27930, -12663, 13859, -16418, -5384, -27896]), + ], ( 0.150, -0.150,): [ MeasRow(4e-09, [-17357, -17666, 16067, -17055, -17345, 16428]), MeasRow(6e-09, [-27931, -12651, 13903, -16400, -5368, -27896]), ], + ( 0.170, -0.170,): [ + MeasRow(4e-09, [-17378, -17671, 16107, -17057, -17335, 16456]), + MeasRow(6e-09, [-27931, -12662, 13940, -16406, -5356, -27896]), + ], + ( 0.180, -0.180,): [ + MeasRow(4e-09, [-17388, -17674, 16120, -17059, -17331, 16470]), + MeasRow(6e-09, [-27931, -12666, 13950, -16407, -5349, -27896]), + ], ( 0.200, -0.200,): [ MeasRow(4e-09, [-17407, -17678, 16143, -17064, -17325, 16495]), MeasRow(6e-09, [-27932, -12672, 13969, -16411, -5338, -27896]), ], + ( 0.230, -0.230,): [ + MeasRow(4e-09, [-17430, -17687, 16148, -17080, -17319, 16523]), + MeasRow(6e-09, [-27931, -12686, 13978, -16430, -5328, -27895]), + ], ( 0.250, -0.250,): [ MeasRow(4e-09, [-17443, -17691, 16151, -17090, -17315, 16539]), MeasRow(6e-09, [-27932, -12691, 13978, -16434, -5321, -27895]), @@ -2645,30 +2757,138 @@ DB = { MeasRow(4e-09, [ 16879, -18197, -17829, 15995, -18674, -18610]), MeasRow(6e-09, [-29641, -4802, -16866, 14323, -14315, -29648]), ], + (-0.060, -0.060,): [ + MeasRow(4e-09, [ 3987, -18442, 2755, 2899, -18439, 4100]), + MeasRow(6e-09, [-29641, -7996, 1774, 1734, -7825, -29644]), + ], + (-0.040, -0.070,): [ + MeasRow(4e-09, [ 2934, -18443, 4360, 1619, -18438, 5099]), + MeasRow(6e-09, [-29643, -8123, 2839, 921, -7687, -29645]), + ], + (-0.020, -0.080,): [ + MeasRow(4e-09, [ 1478, -18444, 5794, 510, -18436, 5894]), + MeasRow(6e-09, [-29642, -8439, 3983, -18, -7511, -29646]), + ], + (-0.010, -0.090,): [ + MeasRow(4e-09, [ -98, -18444, 6361, -471, -18436, 6267]), + MeasRow(6e-09, [-29642, -8861, 4501, -930, -7427, -29646]), + ], ( 0.000, 0.000,): [ MeasRow(4e-09, [ 6732, -18446, 4443, 4576, -18442, 6850]), MeasRow(6e-09, [-29643, -7140, 3161, 3092, -6953, -29645]), ], + ( 0.010, -0.110,): [ + MeasRow(4e-09, [ -3412, -18442, 7242, -3635, -18433, 7024]), + MeasRow(6e-09, [-29642, -9783, 5389, -3942, -7259, -29645]), + ], + ( 0.010, -0.100,): [ + MeasRow(4e-09, [ -1741, -18444, 7204, -1993, -18434, 7027]), + MeasRow(6e-09, [-29642, -9299, 5280, -2371, -7241, -29645]), + ], + ( 0.010, -0.010,): [ + MeasRow(4e-09, [ 6404, -18446, 5329, 3685, -18441, 7176]), + MeasRow(6e-09, [-29643, -7114, 3671, 2573, -6981, -29645]), + ], ( 0.020, -0.020,): [ MeasRow(4e-09, [ 6078, -18447, 6210, 2817, -18440, 7505]), MeasRow(6e-09, [-29643, -7099, 4210, 2014, -6990, -29644]), ], + ( 0.030, -0.110,): [ + MeasRow(4e-09, [ -3409, -18442, 8010, -3641, -18433, 7777]), + MeasRow(6e-09, [-29642, -9750, 6050, -3948, -7059, -29644]), + ], + ( 0.030, -0.030,): [ + MeasRow(4e-09, [ 5720, -18448, 7071, 1989, -18440, 7842]), + MeasRow(6e-09, [-29643, -7128, 4832, 1351, -6951, -29644]), + ], + ( 0.040, -0.040,): [ + MeasRow(4e-09, [ 5329, -18449, 7855, 1276, -18439, 8189]), + MeasRow(6e-09, [-29642, -7194, 5465, 708, -6879, -29643]), + ], ( 0.050, -0.050,): [ MeasRow(4e-09, [ 4876, -18449, 8447, 813, -18438, 8548]), MeasRow(6e-09, [-29641, -7294, 5962, 287, -6796, -29643]), ], + ( 0.060, -0.140,): [ + MeasRow(4e-09, [ -8550, -18440, 9312, -8760, -18431, 8899]), + MeasRow(6e-09, [-29644, -11253, 7525, -8895, -6809, -29643]), + ], + ( 0.060, -0.120,): [ + MeasRow(4e-09, [ -5107, -18442, 9212, -5340, -18433, 8903]), + MeasRow(6e-09, [-29642, -10215, 7199, -5586, -6780, -29643]), + ], + ( 0.060, -0.060,): [ + MeasRow(4e-09, [ 4287, -18449, 8921, 526, -18437, 8917]), + MeasRow(6e-09, [-29641, -7443, 6380, 31, -6708, -29643]), + ], + ( 0.070, -0.070,): [ + MeasRow(4e-09, [ 3031, -18448, 9366, 275, -18436, 9290]), + MeasRow(6e-09, [-29642, -7795, 6830, -198, -6616, -29643]), + ], + ( 0.080, -0.130,): [ + MeasRow(4e-09, [ -6825, -18441, 10048, -7055, -18433, 9658]), + MeasRow(6e-09, [-29641, -10697, 8039, -7241, -6599, -29643]), + ], + ( 0.080, -0.080,): [ + MeasRow(4e-09, [ 1526, -18446, 9801, -2, -18437, 9666]), + MeasRow(6e-09, [-29642, -8218, 7285, -459, -6523, -29643]), + ], + ( 0.090, -0.130,): [ + MeasRow(4e-09, [ -6824, -18441, 10445, -7059, -18433, 10040]), + MeasRow(6e-09, [-29642, -10682, 8383, -7243, -6499, -29643]), + ], + ( 0.100, -0.160,): [ + MeasRow(4e-09, [-11983, -18440, 11120, -12200, -18432, 10422]), + MeasRow(6e-09, [-29640, -12255, 9389, -12225, -6437, -29644]), + ], ( 0.100, -0.100,): [ MeasRow(4e-09, [ -1722, -18444, 10666, -2030, -18437, 10429]), MeasRow(6e-09, [-29642, -9141, 8216, -2394, -6350, -29644]), ], + ( 0.110, -0.180,): [ + MeasRow(4e-09, [-15297, -18458, 12172, -15498, -18457, 10807]), + MeasRow(6e-09, [-29644, -13272, 10611, -15255, -6376, -29645]), + ], + ( 0.110, -0.140,): [ + MeasRow(4e-09, [ -8545, -18440, 11339, -8783, -18433, 10815]), + MeasRow(6e-09, [-29644, -11181, 9301, -8908, -6310, -29645]), + ], + ( 0.120, -0.120,): [ + MeasRow(4e-09, [ -5100, -18441, 11581, -5363, -18435, 11212]), + MeasRow(6e-09, [-29642, -10118, 9237, -5598, -6178, -29646]), + ], + ( 0.130, -0.150,): [ + MeasRow(4e-09, [-10264, -18435, 12680, -10528, -18432, 11611]), + MeasRow(6e-09, [-29642, -11658, 10610, -10595, -6116, -29646]), + ], + ( 0.130, -0.130,): [ + MeasRow(4e-09, [ -6819, -18440, 12173, -7081, -18434, 11614]), + MeasRow(6e-09, [-29642, -10612, 9878, -7255, -6088, -29646]), + ], + ( 0.140, -0.160,): [ + MeasRow(4e-09, [-11979, -18402, 13590, -12285, -18432, 12023]), + MeasRow(6e-09, [-29640, -12140, 11565, -12295, -6022, -29647]), + ], ( 0.150, -0.150,): [ MeasRow(4e-09, [-10262, -18382, 13902, -10595, -18431, 12445]), MeasRow(6e-09, [-29642, -11572, 11676, -10655, -5900, -29647]), ], + ( 0.170, -0.170,): [ + MeasRow(4e-09, [-13679, -18250, 15096, -14114, -18387, 13822]), + MeasRow(6e-09, [-29641, -12508, 13051, -14046, -5540, -29645]), + ], + ( 0.180, -0.180,): [ + MeasRow(4e-09, [-15275, -18195, 15449, -15544, -18335, 14558]), + MeasRow(6e-09, [-29644, -12953, 13529, -15347, -5324, -29642]), + ], ( 0.200, -0.200,): [ MeasRow(4e-09, [-16862, -18322, 15831, -16724, -18263, 15452]), MeasRow(6e-09, [-29648, -13543, 14018, -16155, -5058, -29641]), ], + ( 0.230, -0.230,): [ + MeasRow(4e-09, [-17823, -18575, 15870, -17303, -18194, 16128]), + MeasRow(6e-09, [-29643, -14042, 14154, -16536, -4855, -29647]), + ], ( 0.250, -0.250,): [ MeasRow(4e-09, [-18141, -18679, 15814, -17521, -18177, 16353]), MeasRow(6e-09, [-29641, -14223, 14133, -16680, -4793, -29647]), @@ -2687,30 +2907,138 @@ DB = { MeasRow(4e-09, [ 16191, -18730, -18443, 16092, -18727, -18335]), MeasRow(6e-09, [-30153, 5202, -17632, 14459, -12072, -30161]), ], + (-0.080, -0.080,): [ + MeasRow(4e-09, [ -8612, -18611, -6152, -6161, -18612, -8623]), + MeasRow(6e-09, [-30154, -7499, -8835, -8838, -7504, -30156]), + ], + (-0.060, -0.060,): [ + MeasRow(4e-09, [ -2381, -18621, -993, -999, -18622, -2390]), + MeasRow(6e-09, [-30154, -4436, -4708, -4706, -4443, -30156]), + ], + (-0.040, -0.080,): [ + MeasRow(4e-09, [ -8616, -18624, 4725, -7172, -18624, 3809]), + MeasRow(6e-09, [-30154, -7490, 2000, -12325, -1140, -30154]), + ], + (-0.040, -0.070,): [ + MeasRow(4e-09, [ -5500, -18625, 4546, -4310, -18627, 3808]), + MeasRow(6e-09, [-30154, -5951, 1243, -9348, -1222, -30154]), + ], + (-0.040, -0.040,): [ + MeasRow(4e-09, [ 3809, -18635, 3974, 3972, -18637, 3803]), + MeasRow(6e-09, [-30153, -1384, -793, -789, -1390, -30155]), + ], + (-0.020, -0.080,): [ + MeasRow(4e-09, [ -8616, -18629, 8047, -7670, -18633, 9763]), + MeasRow(6e-09, [-30154, -7486, 5629, -14102, 1953, -30153]), + ], + (-0.010, -0.090,): [ + MeasRow(4e-09, [-11709, -18629, 8588, -10577, -18635, 12426]), + MeasRow(6e-09, [-30153, -9044, 7044, -15975, 3442, -30156]), + ], ( 0.000, 0.000,): [ MeasRow(4e-09, [ 13609, -18575, 8041, 8043, -18577, 13609]), MeasRow(6e-09, [-30152, 3450, 1800, 1808, 3449, -30153]), ], + ( 0.010, -0.130,): [ + MeasRow(4e-09, [-17961, -19318, 9688, -18307, -19096, 14090]), + MeasRow(6e-09, [-30155, -12596, 9294, -17404, 3885, -30153]), + ], + ( 0.010, -0.110,): [ + MeasRow(4e-09, [-16817, -18874, 9470, -16083, -18529, 13929]), + MeasRow(6e-09, [-30160, -11716, 8969, -17056, 4387, -30153]), + ], + ( 0.010, -0.100,): [ + MeasRow(4e-09, [-14735, -18641, 9358, -13453, -18473, 13924]), + MeasRow(6e-09, [-30156, -10534, 8508, -16644, 4435, -30153]), + ], + ( 0.010, -0.010,): [ + MeasRow(4e-09, [ 12430, -18653, 8440, 7627, -18488, 13942]), + MeasRow(6e-09, [-30155, 2801, 2389, 1271, 3724, -30153]), + ], ( 0.020, -0.020,): [ MeasRow(4e-09, [ 9766, -18650, 8832, 7157, -18418, 14168]), MeasRow(6e-09, [-30151, 1465, 3248, 520, 4006, -30153]), ], + ( 0.030, -0.110,): [ + MeasRow(4e-09, [-16816, -18872, 10108, -16081, -18431, 14291]), + MeasRow(6e-09, [-30160, -11704, 9571, -17065, 4646, -30154]), + ], + ( 0.030, -0.030,): [ + MeasRow(4e-09, [ 6845, -18646, 9226, 5903, -18377, 14297]), + MeasRow(6e-09, [-30154, 19, 4114, -955, 4195, -30154]), + ], + ( 0.040, -0.040,): [ + MeasRow(4e-09, [ 3815, -18641, 9635, 3512, -18337, 14412]), + MeasRow(6e-09, [-30153, -1440, 5006, -3493, 4346, -30154]), + ], ( 0.050, -0.050,): [ MeasRow(4e-09, [ 731, -18636, 10064, 810, -18298, 14520]), MeasRow(6e-09, [-30154, -2918, 6019, -6355, 4506, -30155]), ], + ( 0.060, -0.180,): [ + MeasRow(4e-09, [-18334, -19425, 12510, -19155, -19283, 14856]), + MeasRow(6e-09, [-30154, -12786, 11785, -17564, 4021, -30155]), + ], + ( 0.060, -0.140,): [ + MeasRow(4e-09, [-18147, -19369, 11863, -18763, -19134, 14848]), + MeasRow(6e-09, [-30154, -12673, 11237, -17481, 4157, -30155]), + ], + ( 0.060, -0.120,): [ + MeasRow(4e-09, [-17575, -19125, 11659, -17448, -18652, 14735]), + MeasRow(6e-09, [-30159, -12228, 11051, -17286, 4605, -30155]), + ], + ( 0.060, -0.060,): [ + MeasRow(4e-09, [ -2375, -18631, 10516, -2011, -18259, 14623]), + MeasRow(6e-09, [-30155, -4420, 7074, -9328, 4660, -30155]), + ], ( 0.070, -0.070,): [ MeasRow(4e-09, [ -5494, -18627, 11092, -4890, -18222, 14723]), MeasRow(6e-09, [-30154, -5928, 8233, -12313, 4804, -30155]), ], + ( 0.080, -0.130,): [ + MeasRow(4e-09, [-17890, -19196, 13279, -18130, -18826, 14982]), + MeasRow(6e-09, [-30156, -12382, 12378, -17378, 4518, -30156]), + ], + ( 0.080, -0.080,): [ + MeasRow(4e-09, [ -8611, -18603, 12323, -7830, -18187, 14823]), + MeasRow(6e-09, [-30155, -7415, 9993, -15093, 4932, -30155]), + ], + ( 0.090, -0.130,): [ + MeasRow(4e-09, [-17854, -19128, 13924, -18055, -18768, 15066]), + MeasRow(6e-09, [-30156, -12291, 12863, -17361, 4604, -30156]), + ], + ( 0.100, -0.160,): [ + MeasRow(4e-09, [-18156, -19158, 14409, -18690, -18987, 15167]), + MeasRow(6e-09, [-30153, -12424, 13217, -17491, 4445, -30156]), + ], ( 0.100, -0.100,): [ MeasRow(4e-09, [-14722, -18387, 14634, -13798, -18121, 15026]), MeasRow(6e-09, [-30156, -10189, 13249, -16702, 5188, -30156]), ], + ( 0.110, -0.180,): [ + MeasRow(4e-09, [-18154, -19057, 14958, -18588, -18942, 15241]), + MeasRow(6e-09, [-30154, -12318, 13609, -17503, 4537, -30156]), + ], + ( 0.110, -0.140,): [ + MeasRow(4e-09, [-17970, -19024, 14829, -18288, -18816, 15247]), + MeasRow(6e-09, [-30154, -12216, 13507, -17394, 4631, -30156]), + ], ( 0.120, -0.120,): [ MeasRow(4e-09, [-17357, -18619, 15599, -17127, -18366, 15301]), MeasRow(6e-09, [-30159, -11582, 14044, -17203, 5080, -30156]), ], + ( 0.130, -0.150,): [ + MeasRow(4e-09, [-18004, -18871, 15499, -18235, -18775, 15410]), + MeasRow(6e-09, [-30153, -12075, 14010, -17417, 4763, -30156]), + ], + ( 0.130, -0.130,): [ + MeasRow(4e-09, [-17699, -18712, 15711, -17595, -18539, 15402]), + MeasRow(6e-09, [-30156, -11806, 14147, -17277, 4967, -30156]), + ], + ( 0.140, -0.160,): [ + MeasRow(4e-09, [-18048, -18853, 15615, -18259, -18775, 15490]), + MeasRow(6e-09, [-30153, -12077, 14107, -17442, 4808, -30156]), + ], ( 0.150, -0.150,): [ MeasRow(4e-09, [-17988, -18799, 15713, -18141, -18720, 15553]), MeasRow(6e-09, [-30153, -12000, 14176, -17407, 4882, -30156]), @@ -2719,6 +3047,10 @@ DB = { MeasRow(4e-09, [-18068, -18810, 15740, -18233, -18742, 15638]), MeasRow(6e-09, [-30154, -12043, 14204, -17457, 4914, -30156]), ], + ( 0.180, -0.180,): [ + MeasRow(4e-09, [-18087, -18812, 15747, -18254, -18746, 15669]), + MeasRow(6e-09, [-30154, -12053, 14211, -17473, 4927, -30155]), + ], ( 0.200, -0.200,): [ MeasRow(4e-09, [-18114, -18812, 15760, -18284, -18753, 15716]), MeasRow(6e-09, [-30154, -12064, 14223, -17497, 4947, -30155]), @@ -2727,6 +3059,10 @@ DB = { MeasRow(4e-09, [-18129, -18809, 15776, -18297, -18755, 15754]), MeasRow(6e-09, [-30155, -12069, 14235, -17508, 4965, -30155]), ], + ( 0.230, -0.230,): [ + MeasRow(4e-09, [-18134, -18807, 15783, -18301, -18756, 15770]), + MeasRow(6e-09, [-30155, -12070, 14240, -17513, 4974, -30155]), + ], ( 0.250, -0.250,): [ MeasRow(4e-09, [-18144, -18803, 15799, -18309, -18756, 15798]), MeasRow(6e-09, [-30154, -12071, 14252, -17521, 4989, -30155]), diff --git a/crates/applications/stacked_cores/scripts/stacked_cores_52xx_plotters.py b/crates/applications/stacked_cores/scripts/stacked_cores_52xx_plotters.py index 4c5cf41..354c4fd 100644 --- a/crates/applications/stacked_cores/scripts/stacked_cores_52xx_plotters.py +++ b/crates/applications/stacked_cores/scripts/stacked_cores_52xx_plotters.py @@ -4,7 +4,7 @@ import plotly.express as px from pandas import DataFrame import scipy.optimize as opt -unit_to_m = lambda u: -17000 + 34000 * u +unit_to_m = lambda u: -18000 + 36000 * u sweep_1d = lambda points=101: [unit_to_m(x/(points-1)) for x in range(points)] def plot(name: str, x_name: str, y_series: list): @@ -18,7 +18,7 @@ def plot_slope(name: str, x_name: str, y_series: list): plot(name, x_name, slope) def extract_slope(y_series: list): - dist = 2 * 34000 / (len(y_series) - 1) + dist = 2 * 36000 / (len(y_series) - 1) known = [ (next - prev)/dist for (prev, next) in zip(y_series[:-2], y_series[2:]) ] return [known[0]] + known + [known[-1]] diff --git a/crates/applications/stacked_cores/src/main.rs b/crates/applications/stacked_cores/src/main.rs index cc9efae..3d93163 100644 --- a/crates/applications/stacked_cores/src/main.rs +++ b/crates/applications/stacked_cores/src/main.rs @@ -6605,7 +6605,27 @@ fn main() { // more detailed sweep ( 0.05, -0.05), ( 0.15, -0.15), - ( 0.25, -0.25), + // ( 0.25, -0.25), + ][..], + &[ + // because M1, M5 are init LOW, (0, 0) results in the neighbors being init > 0. + // so try to find the set point where they can be (0, 0) + (-0.06, -0.06), + // (-0.08, -0.08), + // (-0.04, -0.04), + (-0.04, -0.07), // +0.02, -0.01 + (-0.02, -0.08), // +0.04, -0.02 + (-0.01, -0.09), // +0.05, -0.03 + ( 0.01, -0.10), // +0.07, -0.04 + ( 0.01, -0.11), // +0.07, -0.05 + ( 0.03, -0.11), // +0.09, -0.05 + ( 0.06, -0.12), // +0.12, -0.06 + ( 0.08, -0.13), // +0.14, -0.07 + ( 0.09, -0.13), // +0.15, -0.07 + ( 0.10, -0.16), // +0.16, -0.10 + ( 0.11, -0.14), // +0.17, -0.08 + ( 0.13, -0.15), // +0.19, -0.09 + ( 0.14, -0.16), // +0.20, -0.10 ][..], &[ // even more verbosity @@ -6619,7 +6639,7 @@ fn main() { ( 0.07, -0.07), ( 0.12, -0.12), ( 0.17, -0.17), - ( 0.22, -0.22), + // ( 0.22, -0.22), ][..], &[ ( 0.01, -0.01), @@ -6641,12 +6661,14 @@ fn main() { // special case of A=0 is L*(2 + 1) // L=13, A=0 gives 39 - // this has runs actually increasing M2-M3 // Y(-18700, 15800) = ( 15300, -17300) + // slope: 0.92 (2e3, 2e4, ps(2000), ps(100), 13, 0, um(400), 5e9), // Y(-18600, 16900) = ( 14300, -16900) + // slope: 0.91 (2e3, 2e4, ps(2000), ps(100), 8, 1, um(400), 5e9), // Y(-17700, 16800) = ( 14100, -16600) + // slope: 0.91 (2e3, 2e4, ps(2000), ps(100), 4, 2, um(400), 2e10), // Y(-18900, 17000) = ( 13700, -16900)