diff options
| author | YurenHao0426 <Blackhao0426@gmail.com> | 2026-08-29 18:10:59 -0500 |
|---|---|---|
| committer | YurenHao0426 <Blackhao0426@gmail.com> | 2026-08-29 18:10:59 -0500 |
| commit | 3d50ea64ac48b4b64e5ca9d14fb59f2c2710fa6d (patch) | |
| tree | 533f1a8317b34772ec2f68121ff71bfb98502ea1 /experiments/coupled_ladder_scaling.py | |
| parent | 6f1043c5b7da90e2cbbf684daa3aecf28a06238f (diff) | |
results: freeze size-matched overclamp selector
Diffstat (limited to 'experiments/coupled_ladder_scaling.py')
| -rw-r--r-- | experiments/coupled_ladder_scaling.py | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/experiments/coupled_ladder_scaling.py b/experiments/coupled_ladder_scaling.py index bb6f090..680b855 100644 --- a/experiments/coupled_ladder_scaling.py +++ b/experiments/coupled_ladder_scaling.py @@ -267,6 +267,11 @@ def parse_args() -> argparse.Namespace: parser.add_argument("--calibration-observations", type=int, default=16) parser.add_argument( "--overclamp-time-seconds-per-v", type=float, default=0.0025) + parser.add_argument( + "--overclamp-times", + default=None, + help="optional side:time mapping that overrides the scalar value", + ) parser.add_argument("--gain-standard-deviation", type=float, default=0.01) parser.add_argument( "--twin-mismatch-standard-deviation-v", type=float, default=0.001) @@ -288,6 +293,17 @@ def main() -> None: if missing_times: raise ValueError( f"learning times are missing sizes {sorted(missing_times)}") + if args.overclamp_times is None: + overclamp_times = { + side: args.overclamp_time_seconds_per_v for side in sizes + } + else: + overclamp_times = parse_mapping(args.overclamp_times, float) + missing_overclamp_times = set(sizes) - set(overclamp_times) + if missing_overclamp_times: + raise ValueError( + "overclamp times are missing sizes " + f"{sorted(missing_overclamp_times)}") methods = tuple(args.methods.split(",")) unknown_methods = set(methods) - set(METHODS) if unknown_methods: @@ -305,8 +321,7 @@ def main() -> None: "record_every": args.record_every, "learning_time_seconds": learning_times[side], "calibration_observations": args.calibration_observations, - "overclamp_time_seconds_per_v": ( - args.overclamp_time_seconds_per_v), + "overclamp_time_seconds_per_v": overclamp_times[side], "gain_standard_deviation": args.gain_standard_deviation, "twin_mismatch_standard_deviation_v": ( args.twin_mismatch_standard_deviation_v), @@ -348,8 +363,7 @@ def main() -> None: "record_every": args.record_every, "learning_time_seconds_by_side": learning_times, "calibration_observations": args.calibration_observations, - "overclamp_time_seconds_per_v": ( - args.overclamp_time_seconds_per_v), + "overclamp_time_seconds_per_v_by_side": overclamp_times, "component_imperfection": { "gain_standard_deviation": args.gain_standard_deviation, "twin_mismatch_standard_deviation_v": ( |
