81 ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter)
82 ap.add_argument(
"--config", type=str, required=
True, help=
"Engine YAML path")
83 ap.add_argument(
"--po-psi", type=float, required=
True, help=
"LOX tank pressure [psi]")
84 ap.add_argument(
"--pf-psi", type=float, required=
True, help=
"Fuel tank pressure [psi]")
85 ap.add_argument(
"--silent", action=
"store_true", help=
"Quiet runner.evaluate logging")
86 args = ap.parse_args()
88 cfg = load_config(args.config)
90 po_pa = float(args.po_psi) / PSI_PER_PA
91 pf_pa = float(args.pf_psi) / PSI_PER_PA
93 ev = runner.evaluate(po_pa, pf_pa, silent=args.silent)
94 diag = ev.get(
"diagnostics")
or {}
95 inj = ev.get(
"injector_pressure")
or {}
98 dpo_inj = inj.get(
"delta_p_injector_O", diag.get(
"delta_p_injector_O"))
99 dpf_inj = inj.get(
"delta_p_injector_F", diag.get(
"delta_p_injector_F"))
100 dpo_fd = inj.get(
"delta_p_feed_O", diag.get(
"delta_p_feed_O"))
101 dpf_fd = inj.get(
"delta_p_feed_F", diag.get(
"delta_p_feed_F"))
103 print(
"\nPressure budget (from evaluate diagnostics)")
104 print(f
"Config: {args.config}")