|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Functions | |
| None | _set (dict d, str dotted, value) |
| dict | blank_config (str injector, str propellant) |
| Path | build_case_config (dict case, Path out_dir) |
| dict | run_case (dict case, Path out_dir, int workers, int timeout) |
| None | main () |
Variables | |
| ROOT = Path(__file__).resolve().parents[1] | |
Run Layer 1 on many cases at once and collect the results.
python3 scripts/layer1_sweep.py cases.json --out runs/ --parallel 3 --workers 3
``cases.json`` is a list of cases::
{"name": "6500N_seed1", "config": "configs/ethalox_6500N.yaml",
"set": {"design_requirements.layer1_random_seed": 1, "design_requirements.target_thrust": 6500}}
``config`` may also be ``"blank:impinging:ethalox"``: the canonical impinging config with the
ethalox preset switched in, exactly what a user gets from a new design in the UI.
Each case runs ``scripts/layer1_run.py`` in its own process (``ED_L1_WORKERS`` = --workers), so
a crash or hang in one case cannot take the sweep down. Writes, per case, ``<name>.json`` (summary),
``<name>_config.yaml`` (the optimised design), ``<name>.log``, and one ``summary.json`` for all.
|
protected |
Definition at line 35 of file layer1_sweep.py.
Referenced by build_case_config().
| dict layer1_sweep.blank_config | ( | str | injector, |
| str | propellant ) |
What the UI hands a user who starts a new design: the canonical config for the injector type, with the propellant preset switched in.
Definition at line 44 of file layer1_sweep.py.
Referenced by build_case_config().
| Path layer1_sweep.build_case_config | ( | dict | case, |
| Path | out_dir ) |
Definition at line 52 of file layer1_sweep.py.
References _set(), and blank_config().
Referenced by run_case().
| None layer1_sweep.main | ( | ) |
| dict layer1_sweep.run_case | ( | dict | case, |
| Path | out_dir, | ||
| int | workers, | ||
| int | timeout ) |
Definition at line 67 of file layer1_sweep.py.
References build_case_config(), and time.time().
| layer1_sweep.ROOT = Path(__file__).resolve().parents[1] |
Definition at line 31 of file layer1_sweep.py.