41 base = load_config(CFG)
42 fitted = copy.deepcopy(base)
44 for side, k_supply
in ((
"oxidizer", 0.63), (
"fuel", 0.85)):
45 fitted.feed_system[side].K0 = base.feed_system[side].K0 + k_supply
46 folded = copy.deepcopy(fitted)
47 declared = copy.deepcopy(fitted)
48 for side, k_supply
in ((
"oxidizer", 0.63), (
"fuel", 0.85)):
49 declared.feed_system[side].supply_K = k_supply
51 pc_f, F_f, gm_folded =
_eval(folded)
52 pc_d, F_d, gm_declared =
_eval(declared)
53 assert pc_d == pytest.approx(pc_f, rel=1e-12)
and F_d == pytest.approx(F_f, rel=1e-12)
54 assert gm_declared < gm_folded
57 assert base.feed_system[
"oxidizer"].supply_K == 0.0
58 zero = copy.deepcopy(folded)
59 for side
in (
"oxidizer",
"fuel"):
60 zero.feed_system[side].supply_K = 0.0
61 assert _eval(zero)[2] == gm_folded