app: stacked_cores: 48-xx: add some runs
This commit is contained in:
@@ -52,6 +52,10 @@ class SimParams:
|
|||||||
def is_discharge_high(self) -> bool:
|
def is_discharge_high(self) -> bool:
|
||||||
return False # see 41-xx
|
return False # see 41-xx
|
||||||
|
|
||||||
|
@property
|
||||||
|
def t_init(self) -> float:
|
||||||
|
return 2e-9
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def t_last(self) -> float:
|
def t_last(self) -> float:
|
||||||
return 3e-9
|
return 3e-9
|
||||||
@@ -199,6 +203,14 @@ class SimParams48(SimParams):
|
|||||||
self.clock_length_ps = int(clock_length_ps)
|
self.clock_length_ps = int(clock_length_ps)
|
||||||
self.clock_decay_ps = int(clock_decay_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
|
@property
|
||||||
def machine_name(self) -> str:
|
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"
|
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),
|
(SimParams47(4, 2, 600, "5e10"), None, 20000),
|
||||||
|
|
||||||
# control conductivity, coupling cond, clock decay (ps), clock duration, coupling loops, asymmetric s0 loops, radius, drive current
|
# 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, 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 }
|
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:
|
if human:
|
||||||
globals()[human] = pw
|
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:
|
try:
|
||||||
new_value = subprocess.check_output(
|
new_value = subprocess.check_output(
|
||||||
[
|
[
|
||||||
"./stacked_cores_39xx.py",
|
"./stacked_cores_39xx.py",
|
||||||
f"../../../../out/applications/stacked_cores/{real}",
|
f"../../../../out/applications/stacked_cores/{real}",
|
||||||
"2e-9",
|
str(t_init),
|
||||||
str(t_last),
|
str(t_last),
|
||||||
] + ([str(t_mid)] if t_mid is not None else [])
|
] + ([str(t_mid)] if t_mid is not None else [])
|
||||||
).decode()
|
).decode()
|
||||||
@@ -448,7 +466,7 @@ def try_measure(real: str, t_last: float, t_mid: float = None):
|
|||||||
|
|
||||||
def update_all():
|
def update_all():
|
||||||
for (params, _human, _norm) in sims:
|
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):
|
def dump(path: str):
|
||||||
orig = open(path).read()
|
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", """
|
set_meas("48-0.0004rad-500ctl_cond-10000coupling_cond-1000ps-50ps-9ctl-9coupling-3_1_winding-1e10-drive", """
|
||||||
Piecewise(
|
Piecewise(
|
||||||
[
|
[
|
||||||
[ -18828, 1410 ], # -1.00
|
[ -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
|
[ 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()
|
if __name__ == '__main__': main()
|
||||||
|
@@ -5113,10 +5113,59 @@ fn main() {
|
|||||||
0.35,
|
0.35,
|
||||||
-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 [
|
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),
|
(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),
|
(5e2, 5e3, ps(1000), ps(50), 9, 1, um(400), 1e10),
|
||||||
] {
|
] {
|
||||||
for &init_flt in init_set {
|
for &init_flt in init_set {
|
||||||
|
Reference in New Issue
Block a user