app: stacked_cores: 48-xx: add some runs

This commit is contained in:
2022-10-17 06:51:48 -07:00
parent 7c0151220c
commit 6f57e17bef
2 changed files with 138 additions and 9 deletions

View File

@@ -52,6 +52,10 @@ class SimParams:
def is_discharge_high(self) -> bool:
return False # see 41-xx
@property
def t_init(self) -> float:
return 2e-9
@property
def t_last(self) -> float:
return 3e-9
@@ -199,6 +203,14 @@ class SimParams48(SimParams):
self.clock_length_ps = int(clock_length_ps)
self.clock_decay_ps = int(clock_decay_ps)
@property
def t_init(self) -> float:
return 2e-12 * self.clock_length_ps
@property
def t_last(self) -> float:
return 3e-12 * self.clock_length_ps
@property
def machine_name(self) -> str:
return f"{self.run}-{self.um_str}rad-{self.control_cond}ctl_cond-{self.coupling_cond}coupling_cond-{self.clock_length_ps}ps-{self.clock_decay_ps}ps-{self.couplings}ctl-{self.couplings}coupling-{self.wrappings}_1_winding-{self.drive_str}-drive"
@@ -380,9 +392,15 @@ sims = [
(SimParams47(4, 2, 600, "5e10"), None, 20000),
# control conductivity, coupling cond, clock decay (ps), clock duration, coupling loops, asymmetric s0 loops, radius, drive current
(SimParams48(5e2, 1e4, 1000, 50, 9, 1, 400, "1e10"), None, 20000),
(SimParams48(5e2, 1e4, 1000, 50, 9, 1, 400, "5e9"), None, 20000),
(SimParams48(5e2, 5e3, 1000, 50, 9, 1, 400, "1e10"), None, 20000),
(SimParams48(5e2, 1e4, 1000, 50, 9, 1, 400, "3e9"), None, 20000),
(SimParams48(5e2, 1e4, 1000, 50, 9, 1, 400, "5e9"), None, 20000),
(SimParams48(5e2, 1e4, 1000, 50, 9, 1, 400, "1e10"), None, 20000),
(SimParams48(1e3, 1e4, 2000, 100, 9, 1, 400, "3e9"), None, 20000),
(SimParams48(1e3, 1e4, 2000, 100, 9, 1, 400, "5e9"), None, 20000),
(SimParams48(1e3, 1e4, 2000, 100, 9, 1, 400, "1e10"), None, 20000),
(SimParams48(2e3, 2e4, 4000, 200, 9, 1, 400, "3e9"), None, 20000),
(SimParams48(5e3, 5e4,10000, 500, 9, 1, 400, "3e9"), None, 20000),
]
measurements = { real.machine_name: [human, norm, None, None] for (real, human, norm) in sims }
@@ -430,13 +448,13 @@ def set_meas(real: str, expr: str):
if human:
globals()[human] = pw
def try_measure(real: str, t_last: float, t_mid: float = None):
def try_measure(real: str, t_init: float, t_last: float, t_mid: float = None):
try:
new_value = subprocess.check_output(
[
"./stacked_cores_39xx.py",
f"../../../../out/applications/stacked_cores/{real}",
"2e-9",
str(t_init),
str(t_last),
] + ([str(t_mid)] if t_mid is not None else [])
).decode()
@@ -448,7 +466,7 @@ def try_measure(real: str, t_last: float, t_mid: float = None):
def update_all():
for (params, _human, _norm) in sims:
try_measure(params.machine_name, t_last=params.t_last, t_mid=params.t_mid)
try_measure(params.machine_name, t_init=params.t_init, t_last=params.t_last, t_mid=params.t_mid)
def dump(path: str):
orig = open(path).read()
@@ -4047,13 +4065,75 @@ Piecewise(
)
""")
set_meas("48-0.0004rad-500ctl_cond-5000coupling_cond-1000ps-50ps-9ctl-9coupling-3_1_winding-1e10-drive", """
Piecewise(
[
[ -17210, 1376 ], # -1.00
[ 16931, 16791 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-500ctl_cond-10000coupling_cond-1000ps-50ps-9ctl-9coupling-3_1_winding-3e9-drive", """
Piecewise(
[
[ -18331, -6085 ], # -1.00
[ 17160, 6840 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-500ctl_cond-10000coupling_cond-1000ps-50ps-9ctl-9coupling-3_1_winding-5e9-drive", """
Piecewise(
[
[ -18553, -1270 ], # -1.00
[ 17271, 16313 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-500ctl_cond-10000coupling_cond-1000ps-50ps-9ctl-9coupling-3_1_winding-1e10-drive", """
Piecewise(
[
[ -18828, 1410 ], # -1.00
[ -18549, 1845 ], # -0.35
[ -17921, 2757 ], # -0.20
[ -4275, 16419 ], # -0.10
[ 11309, 16820 ], # 0.00
[ 13053, 16822 ], # 0.10
[ 16668, 16825 ], # 0.20
[ 17106, 16825 ], # 0.35
[ 17405, 16824 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-1000ctl_cond-10000coupling_cond-2000ps-100ps-9ctl-9coupling-3_1_winding-3e9-drive", """
Piecewise(
[
[ -16999, -3777 ], # -1.00
[ 16812, 10556 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-1000ctl_cond-10000coupling_cond-2000ps-100ps-9ctl-9coupling-3_1_winding-5e9-drive", """
Piecewise(
[
[ -17090, -1037 ], # -1.00
[ 16874, 16650 ], # 1.00
]
)
""")
set_meas("48-0.0004rad-1000ctl_cond-10000coupling_cond-2000ps-100ps-9ctl-9coupling-3_1_winding-1e10-drive", """
Piecewise(
[
[ -17206, 2148 ], # -1.00
[ 11896, 16811 ], # 0.00
[ 16938, 16814 ], # 1.00
]
)
""")
if __name__ == '__main__': main()

View File

@@ -5113,10 +5113,59 @@ fn main() {
0.35,
-0.35,
][..],
&[
-0.05,
-0.15,
-0.25,
0.05,
-0.07,
-0.12,
-0.17,
-0.02,
0.07,
0.12,
][..],
&[
// exhaustive
-0.01,
-0.02,
-0.03,
-0.04,
-0.06,
-0.07,
-0.08,
-0.09,
-0.11,
-0.12,
-0.13,
-0.14,
-0.16,
-0.17,
-0.18,
-0.19,
-0.21,
-0.22,
-0.23,
-0.24,
0.01,
0.02,
0.03,
0.04,
][..],
] {
for (ctl_cond, coupling_cond, clock_duration, clock_decay, coupling_loops, s0_loops, s_major, cur_flt) in [
(5e2, 1e4, ps(1000), ps(50), 9, 1, um(400), 1e10),
(1e3, 1e4, ps(2000), ps(100), 9, 1, um(400), 3e9),
(1e3, 1e4, ps(2000), ps(100), 9, 1, um(400), 5e9),
(5e2, 1e4, ps(1000), ps(50), 9, 1, um(400), 5e9),
(2e3, 2e4, ps(4000), ps(200), 9, 1, um(400), 3e9),
(5e3, 5e4, ps(10000),ps(500), 9, 1, um(400), 3e9),
// boring current variants of the above
(1e3, 1e4, ps(2000), ps(100), 9, 1, um(400), 1e10),
// (5e2, 1e4, ps(1000), ps(50), 9, 1, um(400), 3e9),
// (5e2, 1e4, ps(1000), ps(50), 9, 1, um(400), 1e10),
// original
(5e2, 5e3, ps(1000), ps(50), 9, 1, um(400), 1e10),
] {
for &init_flt in init_set {