Tier 2: the plant model
This page is generated.
cargo xtask validate --tiers 1,2,3 --smokewrote it from commitb6ef4ee-dirty. Every number on it was captured from that run's own output. To change what it says, change what the suite measures and run the command again.
Both implementations are forced into an identical state, evaluated once, and compared on all fifty derivative components. Sampling is from three pools: states along the nominal closed-loop trajectory, random perturbations of those states, and adversarial states placed at every discontinuity and clamp in the model.
Every comparison runs twice. The vendored libm disagrees with gfortran's by an
ULP on about a tenth of exp and pow calls, so the default build can only be
held to 1e-12; the libm-system build removes the transcendental from the
comparison and is held to bit equality. Both runs are below, and the libm
column says which is which.
The tolerance is relative to the scale of the terms rather than to the result. A balance is inflow minus outflow, and near steady state those nearly cancel, so an error that is 1e-16 of either term can be 1e-4 of their difference.
Reduced volume. This run passed --smoke, so the sweeps are the short ones the CI
gate uses rather than the full ones PLAN.org specifies. The case counts in the
tables below are what actually ran. Drop --smoke for the gate volume.
Produced with rustc 1.97.1 (8bab26f4f 2026-07-14), gfortran 15.2.0. The oracle's compiler flags are fixed in
crates/tepsim-oracle/build.rs and asserted by a test; changing them invalidates
every number on this page, which is why it is a logged re-baseline and not an edit.
What ran
20 test binaries: 94 test(s) passed, 0 failed, 0 ignored.
| target | libm | passed | failed | ignored |
|---|---|---|---|---|
tier2_unpack | vendored | 3 | 0 | 0 |
tier2_equilibrium | vendored | 3 | 0 | 0 |
tier2_kinetics | vendored | 3 | 0 | 0 |
tier2_streams | vendored | 3 | 0 | 0 |
tier2_flows | vendored | 5 | 0 | 0 |
tier2_stripper | vendored | 4 | 0 | 0 |
tier2_heat | vendored | 4 | 0 | 0 |
tier2_measurements | vendored | 4 | 0 | 0 |
tier2_balances | vendored | 4 | 0 | 0 |
tier4_closed_loop | platform | 5 | 0 | 0 |
tier5_invariants | platform | 9 | 0 | 0 |
tier5_runs | platform | 10 | 0 | 0 |
tier2_equilibrium | platform | 3 | 0 | 0 |
tier2_kinetics | platform | 4 | 0 | 0 |
tier2_streams | platform | 4 | 0 | 0 |
tier2_flows | platform | 6 | 0 | 0 |
tier2_stripper | platform | 5 | 0 | 0 |
tier2_heat | platform | 5 | 0 | 0 |
tier2_measurements | platform | 5 | 0 | 0 |
tier2_balances | platform | 5 | 0 | 0 |
Figures
tier1 YP(1..50), relative to the derivative (reported), and nothing else. Any other dot crossing the line is a failure. The bit-equality half of the claim is falsified separately, by any dot leaving the = 0 lane under the platform libm, where the two sides call the same exp. Drawn by cargo xtask validate --tiers 1,2,3 --smoke at commit b6ef4ee-dirty; the measurement it repeats was first recorded in B-0026 (LOG.org).libm, where both sides call the same exp, the distribution is one bar at zero, and every comparison in the tier is identical to the last bit. Under the vendored libm a tail appears, and it is the transcendentals rather than the algebra. The claim is false the moment the platform group grows a second bar. Drawn by cargo xtask validate --tiers 1,2,3 --smoke at commit b6ef4ee-dirty; the measurement it repeats was first recorded in B-0026 (LOG.org).Measurements
143 block(s), lifted from the transcripts below. The columns are whatever fields the run printed, so a new field in the reporter becomes a new column here rather than data this page drops.
The test column matters as much as the numbers, because not every row is the port
being measured. Some tests deliberately mis-type a constant, or solve from the wrong
guess, to show what that would cost; a row from one of those is supposed to be
enormous, and its test name says so. The what column carries a tier1 prefix in
every tier, because it is the shared comparison reporter's own label rather than a
claim about which tier printed it.
| target | from test | what | cases | max rel err | max ulp | ulp percentiles | ulp histogram | non-finite | worst XMEAS | worst XMV | within XNS | first split, port | first split, fortran | worst over the run | worst at the end |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
tier2_unpack | solving_from_a_fixed_guess_instead_of_the_seed_breaks_bit_equality | tier1 TCV with the carried seed | 100 | 0.000e0 at nominal#0[4] | 0 at nominal#0[4] | p50=0 p90=0 p99=0 p100=0 | 0:100 | 0 seen, 0 mismatched | |||||||
tier2_unpack | solving_from_a_fixed_guess_instead_of_the_seed_breaks_bit_equality | tier1 TCV from a fixed guess | 100 | 9.901e-16 at nominal#25[4] | 6 at nominal#25[4] | p50=1 p90=4 p99=6 p100=6 | 0:24 1:28 2:18 3:19 4:7 5:1 6:3 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack UCLR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack UCLS | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack UCLC | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack UCVV | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack UTLR/UTLS/UTLC/UTVV | 9700 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:9700 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack XLR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack XLS | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack XLC | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack XVV | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack ESR/ESS/ESC/ESV | 9700 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:9700 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack TCR/TCS/TCC/TCV | 9700 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:9700 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack TKR/TKS/TKV | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack DLR/DLS/DLC | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_unpack | the_unpacking_matches_the_fortran_over_all_three_pools | tier1 unpack VLR/VLS/VLC | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium VVR/VVS | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PPR | 19400 | 2.802e-16 at perturbed#1264[4] | 2 at nominal#21[4] | p50=0 p90=0 p99=1 p100=2 | 0:17917 1:1305 2:178 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PPS | 19400 | 2.784e-16 at perturbed#609[8] | 2 at nominal#26[8] | p50=0 p90=0 p99=1 p100=2 | 0:18322 1:899 2:179 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PTR/PTS/PTV | 7275 | 3.578e-16 at perturbed#576[2] | 2 at nominal#188[1] | p50=0 p90=0 p99=1 p100=2 | 0:7130 1:133 2:12 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium XVR | 19400 | 4.843e-16 at perturbed#88[4] | 3 at nominal#44[7] | p50=0 p90=0 p99=2 p100=3 | 0:17705 1:1305 2:368 3:22 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium XVS | 19400 | 4.302e-16 at perturbed#1121[7] | 3 at nominal#287[3] | p50=0 p90=0 p99=2 p100=3 | 0:18174 1:978 2:238 3:10 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UTVR/UTVS | 4850 | 4.443e-16 at perturbed#169[2] | 3 at nominal#303[2] | p50=0 p90=0 p99=1 p100=3 | 0:4733 1:82 2:32 3:3 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UCVR | 19400 | 5.077e-16 at perturbed#1281[8] | 4 at perturbed#1281[8] | p50=0 p90=0 p99=2 p100=4 | 0:18105 1:920 2:330 3:44 4:1 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UCVS | 19400 | 6.230e-16 at perturbed#169[6] | 3 at perturbed#169[6] | p50=0 p90=0 p99=1 p100=3 | 0:18585 1:713 2:98 3:4 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_ideal_gas_partial_pressures_are_bit_identical_under_the_vendored_libm | tier1 PPR/PPS for A, B and C | 1200 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:1200 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_ideal_gas_partial_pressures_are_bit_identical_under_the_vendored_libm | tier1 PTV | 200 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:200 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_inert_has_no_net_production_in_either_implementation | tier1 CRXR(2), never assigned | 200 | 0.000e0 at nominal#0[2] | 0 at nominal#0[2] | p50=0 p90=0 p99=0 p100=0 | 0:200 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics RR | 9700 | 8.492e-16 at perturbed#618[2] | 7 at perturbed#1279[1] | p50=0 p90=2 p99=3 p100=7 | 0:7255 1:1447 2:732 3:235 4:22 5:7 6:1 7:1 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics CRXR | 19400 | 8.492e-16 at perturbed#618[8] | 7 at perturbed#1279[4] | p50=0 p90=2 p99=3 p100=7 | 0:14063 1:3030 2:1763 3:450 4:72 5:16 6:4 7:2 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics RH | 2425 | 7.419e-16 at perturbed#293[1] | 6 at perturbed#293[1] | p50=0 p90=2 p99=3 p100=6 | 0:1594 1:472 2:299 3:50 4:8 5:1 6:1 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams XST (10 streams x 8) | 194000 | 4.736e-16 at perturbed#1378[44] | 4 at perturbed#1923[47] | p50=0 p90=0 p99=1 p100=4 | 0:189849 1:3316 2:804 3:30 4:1 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams XMWS (the 6 that exist) | 14550 | 4.370e-16 at perturbed#791[4] | 3 at perturbed#431[4] | p50=0 p90=0 p99=1 p100=3 | 0:14073 1:392 2:79 3:6 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams TST | 24250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:24250 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams HST | 24250 | 5.050e-16 at perturbed#1923[6] | 4 at perturbed#1923[6] | p50=0 p90=0 p99=1 p100=4 | 0:23683 1:461 2:94 3:10 4:2 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FTM (the 10 assembled streams) | 24250 | 2.246e-14 at perturbed#1790[7] | 125 at perturbed#1453[6] | p50=0 p90=0 p99=5 p100>=16 | 0:23639 1:224 2:85 3:47 4:12 5:13 6:17 7:17 8:10 9:7 10:5 11:6 12:3 13:2 15:1 >=16:162 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FCM (10 streams x 8) | 194000 | 2.268e-14 at perturbed#1790[53] | 178 at perturbed#1106[43] | p50=0 p90=0 p99=4 p100>=16 | 0:187622 1:2738 2:1090 3:426 4:288 5:119 6:88 7:62 8:43 9:57 10:38 11:31 12:25 13:47 14:66 15:90 >=16:1170 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FWR/FWS/AGSP | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows CPDH | 2425 | 2.034e-15 at perturbed#1790[1] | 18 at perturbed#1790[1] | p50=0 p90=0 p99=2 p100>=16 | 0:2312 1:71 2:20 3:6 4:5 5:6 6:1 7:3 >=16:1 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows HST(9) after the compressor bump | 2425 | 6.522e-15 at perturbed#1790[1] | 42 at perturbed#1790[1] | p50=0 p90=0 p99=2 p100>=16 | 0:2253 1:133 2:24 3:10 4:1 5:1 6:1 9:1 >=16:1 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_steam_coefficient_matches_through_the_condenser_duty | tier1 UAC, via QUC | 300 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:300 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper SFR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FTM (5, 12): the column's own outlets | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FTM (7): the reactor-inlet alias | 2425 | 1.484e-15 at perturbed#817[1] | 12 at perturbed#591[1] | p50=0 p90=0 p99=5 p100=12 | 0:2322 1:1 2:19 3:46 4:5 5:8 6:15 7:6 8:1 12:2 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FCM (5, 12): the column's own outlets | 38800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:38800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FCM (7): the reactor-inlet alias | 19400 | 1.610e-15 at perturbed#817[3] | 13 at perturbed#591[8] | p50=0 p90=0 p99=4 p100=13 | 0:18576 1:6 2:100 3:313 4:228 5:103 6:33 7:15 8:11 9:8 10:1 11:3 12:2 13:1 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper XST (5, 12): the column's own outlets | 38800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:38800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper XST (7): the reactor-inlet alias | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper TST (5, 7, 12) | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper HST (5, 12): the column's own outlets | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper HST (7): the reactor-inlet alias | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat UAR | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUR | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUS | 2425 | 9.572e-13 at perturbed#50[1] | 8009 at perturbed#50[1] | p50=0 p90=0 p99>=16 p100>=16 | 0:2196 1:23 2:14 3:10 4:21 5:9 6:3 7:10 8:4 9:2 10:3 11:1 12:3 13:3 14:6 15:1 >=16:116 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUC | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_measurements | the_measurements_match_the_fortran_over_all_three_pools | tier1 XMEAS(1..22), noise-free | 53350 | 8.774e-15 at perturbed#1851[5] | 78 at perturbed#1851[5] | p50=0 p90=0 p99=1 p100>=16 | 0:52801 1:226 2:132 3:58 4:44 5:23 6:7 7:7 8:3 9:4 13:1 14:3 >=16:41 | 0 seen, 0 mismatched | |||||||
tier2_measurements | the_shutdown_detector_agrees_with_the_fortran_on_every_state | tier1 ISD as 0 or 1 | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), relative to the derivative (reported) | 120600 | 1.393e-4 at nominal#303[2] | 738734374912 at nominal#303[2] | p50=0 p90=2 p99>=16 p100>=16 | 0:107101 1:935 2:1289 3:101 4:1512 5:22 6:176 7:14 8:1354 9:19 10:35 11:7 12:166 13:4 14:21 15:11 >=16:7833 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), relative to the scale of the terms (the gate) | 120600 | 6.093e-14 at perturbed#300[7] | 738734374912 at nominal#303[2] | p50=0 p90=2 p99>=16 p100>=16 | 0:107101 1:935 2:1289 3:101 4:1512 5:22 6:176 7:14 8:1354 9:19 10:35 11:7 12:166 13:4 14:21 15:11 >=16:7833 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), plant frozen | 650 | 0.000e0 at perturbed#369[1] | 0 at perturbed#369[1] | p50=0 p90=0 p99=0 p100=0 | 0:650 | 0 seen, 0 mismatched | |||||||
tier2_balances | tier2_acceptance_table | tier1 YP(1..50), relative to the scale of the terms (the gate) | 120600 | 6.093e-14 at perturbed#300[7] | 206158430208 at nominal#296[2] | p50=0 p90=2 p99>=16 p100>=16 | 0:107280 1:890 2:1293 3:113 4:1468 5:32 6:163 7:17 8:1240 9:19 10:42 11:11 12:166 13:7 14:26 15:11 >=16:7822 | 0 seen, 0 mismatched | |||||||
tier4_closed_loop | the_closed_loop_plant_matches_the_fortran_driver | closed loop, platform libm, 10 h (36000 steps) | 0.000e0 at XMEAS(0) | 0.000e0 %range at XMV(0) | 10.000 h of 10, ending at 0.000e0 x XNS(0) | ||||||||||
tier4_closed_loop | the_forced_disturbance_changes_the_plant_measurably | D-011, 10 h, faithful against fixed: | Some((29390, 22)) | Some((29390, 22)) | 1.092e-1 at XMEAS(37) | 3.262e-2 at XMEAS(38) | |||||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium VVR/VVS | 1450 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:1450 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium PPR | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium PPS | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium PTR/PTS/PTV | 2175 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2175 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium XVR | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium XVS | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium UTVR/UTVS | 1450 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:1450 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium UCVR | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_algebra_is_bit_identical_once_exp_agrees | tier1 equilibrium UCVS | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium VVR/VVS | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PPR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PPS | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium PTR/PTS/PTV | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium XVR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium XVS | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UTVR/UTVS | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UCVR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_equilibrium | the_equilibrium_matches_the_fortran_over_all_three_pools | tier1 equilibrium UCVS | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 kinetics RR | 2900 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2900 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 kinetics CRXR | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 kinetics RH | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_inert_has_no_net_production_in_either_implementation | tier1 CRXR(2), never assigned | 200 | 0.000e0 at nominal#0[2] | 0 at nominal#0[2] | p50=0 p90=0 p99=0 p100=0 | 0:200 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics RR | 9700 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:9700 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics CRXR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_kinetics | the_kinetics_match_the_fortran_over_all_three_pools | tier1 kinetics RH | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 streams XST (10 streams x 8) | 58000 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:58000 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 streams XMWS (the 6 that exist) | 4350 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4350 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 streams TST | 7250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7250 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 streams HST | 7250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7250 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams XST (10 streams x 8) | 194000 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:194000 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams XMWS (the 6 that exist) | 14550 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:14550 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams TST | 24250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:24250 | 0 seen, 0 mismatched | |||||||
tier2_streams | the_stream_table_matches_the_fortran_over_all_three_pools | tier1 streams HST | 24250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:24250 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 flows FTM (the 10 assembled streams) | 7250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7250 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 flows FCM (10 streams x 8) | 58000 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:58000 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 flows FWR/FWS/AGSP | 2175 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2175 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 flows CPDH | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 flows HST(9) after the compressor bump | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FTM (the 10 assembled streams) | 24250 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:24250 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FCM (10 streams x 8) | 194000 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:194000 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows FWR/FWS/AGSP | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows CPDH | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_flow_network_matches_the_fortran_over_all_three_pools | tier1 flows HST(9) after the compressor bump | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_flows | the_steam_coefficient_matches_through_the_condenser_duty | tier1 UAC, via QUC | 300 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:300 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper SFR | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper FTM (5, 12): the column's own outlets | 1450 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:1450 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper FTM (7): the reactor-inlet alias | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper FCM (5, 12): the column's own outlets | 11600 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:11600 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper FCM (7): the reactor-inlet alias | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper XST (5, 12): the column's own outlets | 11600 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:11600 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper XST (7): the reactor-inlet alias | 5800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:5800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper TST (5, 7, 12) | 2175 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2175 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper HST (5, 12): the column's own outlets | 1450 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:1450 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 stripper HST (7): the reactor-inlet alias | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper SFR | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FTM (5, 12): the column's own outlets | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FTM (7): the reactor-inlet alias | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FCM (5, 12): the column's own outlets | 38800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:38800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper FCM (7): the reactor-inlet alias | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper XST (5, 12): the column's own outlets | 38800 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:38800 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper XST (7): the reactor-inlet alias | 19400 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:19400 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper TST (5, 7, 12) | 7275 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:7275 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper HST (5, 12): the column's own outlets | 4850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:4850 | 0 seen, 0 mismatched | |||||||
tier2_stripper | the_stripper_matches_the_fortran_over_all_three_pools | tier1 stripper HST (7): the reactor-inlet alias | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat UAR | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUR | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUS | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | heat_transfer_matches_the_fortran_over_all_three_pools | tier1 heat QUC | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_heat | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 heat UAR | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_heat | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 heat QUR | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_heat | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 heat QUS | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_heat | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 heat QUC | 725 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:725 | 0 seen, 0 mismatched | |||||||
tier2_measurements | the_algebra_is_bit_identical_once_exp_and_pow_agree | tier1 XMEAS(1..22), noise-free | 15950 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:15950 | 0 seen, 0 mismatched | |||||||
tier2_measurements | the_measurements_match_the_fortran_over_all_three_pools | tier1 XMEAS(1..22), noise-free | 53350 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:53350 | 0 seen, 0 mismatched | |||||||
tier2_measurements | the_shutdown_detector_agrees_with_the_fortran_on_every_state | tier1 ISD as 0 or 1 | 2425 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:2425 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), relative to the derivative (reported) | 120600 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:120600 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), relative to the scale of the terms (the gate) | 120600 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:120600 | 0 seen, 0 mismatched | |||||||
tier2_balances | all_fifty_derivatives_match_the_fortran_over_all_three_pools | tier1 YP(1..50), plant frozen | 650 | 0.000e0 at perturbed#369[1] | 0 at perturbed#369[1] | p50=0 p90=0 p99=0 p100=0 | 0:650 | 0 seen, 0 mismatched | |||||||
tier2_balances | the_whole_right_hand_side_is_bit_identical_once_exp_and_pow_agree | tier1 YP(1..50), relative to the derivative (reported) | 35850 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:35850 | 0 seen, 0 mismatched | |||||||
tier2_balances | tier2_acceptance_table | tier1 YP(1..50), relative to the scale of the terms (the gate) | 120600 | 0.000e0 at nominal#0[1] | 0 at nominal#0[1] | p50=0 p90=0 p99=0 p100=0 | 0:120600 | 0 seen, 0 mismatched |
Transcripts
Each block below is a test binary's own output, verbatim, with the command that produced it. The summary above is derived from these; they are not derived from it.
tier2_unpack, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_unpack -- --nocapture --test-threads 1
running 3 tests
test solving_from_a_fixed_guess_instead_of_the_seed_breaks_bit_equality ... tier1 TCV with the carried seed
cases : 100
max rel err : 0.000e0 at nominal#0[4]
max ulp : 0 at nominal#0[4]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:100
non-finite : 0 seen, 0 mismatched
tier1 TCV from a fixed guess
cases : 100
max rel err : 9.901e-16 at nominal#25[4]
max ulp : 6 at nominal#25[4]
ulp percentiles: p50=1 p90=4 p99=6 p100=6
ulp histogram : 0:24 1:28 2:18 3:19 4:7 5:1 6:3
non-finite : 0 seen, 0 mismatched
ok
test the_unpacking_is_bit_identical_to_the_fortran ... ok
test the_unpacking_matches_the_fortran_over_all_three_pools ... tier1 unpack UCLR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack UCLS
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack UCLC
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack UCVV
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack UTLR/UTLS/UTLC/UTVV
cases : 9700
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:9700
non-finite : 0 seen, 0 mismatched
tier1 unpack XLR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack XLS
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack XLC
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack XVV
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 unpack ESR/ESS/ESC/ESV
cases : 9700
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:9700
non-finite : 0 seen, 0 mismatched
tier1 unpack TCR/TCS/TCC/TCV
cases : 9700
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:9700
non-finite : 0 seen, 0 mismatched
tier1 unpack TKR/TKS/TKV
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 unpack DLR/DLS/DLC
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 unpack VLR/VLS/VLC
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
tier2_equilibrium, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_equilibrium -- --nocapture --test-threads 1
running 3 tests
test the_equilibrium_matches_the_fortran_over_all_three_pools ... exp comes from the vendored libm
tier1 equilibrium VVR/VVS
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPR
cases : 19400
max rel err : 2.802e-16 at perturbed#1264[4]
max ulp : 2 at nominal#21[4]
ulp percentiles: p50=0 p90=0 p99=1 p100=2
ulp histogram : 0:17917 1:1305 2:178
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPS
cases : 19400
max rel err : 2.784e-16 at perturbed#609[8]
max ulp : 2 at nominal#26[8]
ulp percentiles: p50=0 p90=0 p99=1 p100=2
ulp histogram : 0:18322 1:899 2:179
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PTR/PTS/PTV
cases : 7275
max rel err : 3.578e-16 at perturbed#576[2]
max ulp : 2 at nominal#188[1]
ulp percentiles: p50=0 p90=0 p99=1 p100=2
ulp histogram : 0:7130 1:133 2:12
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVR
cases : 19400
max rel err : 4.843e-16 at perturbed#88[4]
max ulp : 3 at nominal#44[7]
ulp percentiles: p50=0 p90=0 p99=2 p100=3
ulp histogram : 0:17705 1:1305 2:368 3:22
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVS
cases : 19400
max rel err : 4.302e-16 at perturbed#1121[7]
max ulp : 3 at nominal#287[3]
ulp percentiles: p50=0 p90=0 p99=2 p100=3
ulp histogram : 0:18174 1:978 2:238 3:10
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UTVR/UTVS
cases : 4850
max rel err : 4.443e-16 at perturbed#169[2]
max ulp : 3 at nominal#303[2]
ulp percentiles: p50=0 p90=0 p99=1 p100=3
ulp histogram : 0:4733 1:82 2:32 3:3
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVR
cases : 19400
max rel err : 5.077e-16 at perturbed#1281[8]
max ulp : 4 at perturbed#1281[8]
ulp percentiles: p50=0 p90=0 p99=2 p100=4
ulp histogram : 0:18105 1:920 2:330 3:44 4:1
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVS
cases : 19400
max rel err : 6.230e-16 at perturbed#169[6]
max ulp : 3 at perturbed#169[6]
ulp percentiles: p50=0 p90=0 p99=1 p100=3
ulp histogram : 0:18585 1:713 2:98 3:4
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_ideal_gas_partial_pressures_are_bit_identical_under_the_vendored_libm ... tier1 PPR/PPS for A, B and C
cases : 1200
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:1200
non-finite : 0 seen, 0 mismatched
tier1 PTV
cases : 200
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:200
non-finite : 0 seen, 0 mismatched
ok
test the_vendored_and_platform_exp_differ_only_by_rounding ... exp over the Antoine range [0.5868, 13.0825]: 15000 arguments, 1507 differ (10.047%), worst -1 ulp
ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
tier2_kinetics, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_kinetics -- --nocapture --test-threads 1
running 3 tests
test the_inert_has_no_net_production_in_either_implementation ... tier1 CRXR(2), never assigned
cases : 200
max rel err : 0.000e0 at nominal#0[2]
max ulp : 0 at nominal#0[2]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:200
non-finite : 0 seen, 0 mismatched
ok
test the_kinetics_match_the_fortran_over_all_three_pools ... exp and pow come from the vendored libm
tier1 kinetics RR
cases : 9700
max rel err : 8.492e-16 at perturbed#618[2]
max ulp : 7 at perturbed#1279[1]
ulp percentiles: p50=0 p90=2 p99=3 p100=7
ulp histogram : 0:7255 1:1447 2:732 3:235 4:22 5:7 6:1 7:1
non-finite : 0 seen, 0 mismatched
tier1 kinetics CRXR
cases : 19400
max rel err : 8.492e-16 at perturbed#618[8]
max ulp : 7 at perturbed#1279[4]
ulp percentiles: p50=0 p90=2 p99=3 p100=7
ulp histogram : 0:14063 1:3030 2:1763 3:450 4:72 5:16 6:4 7:2
non-finite : 0 seen, 0 mismatched
tier1 kinetics RH
cases : 2425
max rel err : 7.419e-16 at perturbed#293[1]
max ulp : 6 at perturbed#293[1]
ulp percentiles: p50=0 p90=2 p99=3 p100=6
ulp histogram : 0:1594 1:472 2:299 3:50 4:8 5:1 6:1
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_vendored_and_platform_pow_differ_only_by_rounding ... pow over [0.25, 5000] at orders 1.1544 and 0.3735: 40000 cases, 3992 differ (9.980%), worst -1 ulp
ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.09s
tier2_streams, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_streams -- --nocapture --test-threads 1
running 3 tests
test the_compressor_makes_the_recycle_enthalpy_differ_from_the_purge ... HST(9) differs from HST(10) on 200 of 200 nominal states
ok
test the_stream_table_matches_the_fortran_over_all_three_pools ... exp and pow come from the vendored libm
tier1 streams XST (10 streams x 8)
cases : 194000
max rel err : 4.736e-16 at perturbed#1378[44]
max ulp : 4 at perturbed#1923[47]
ulp percentiles: p50=0 p90=0 p99=1 p100=4
ulp histogram : 0:189849 1:3316 2:804 3:30 4:1
non-finite : 0 seen, 0 mismatched
tier1 streams XMWS (the 6 that exist)
cases : 14550
max rel err : 4.370e-16 at perturbed#791[4]
max ulp : 3 at perturbed#431[4]
ulp percentiles: p50=0 p90=0 p99=1 p100=3
ulp histogram : 0:14073 1:392 2:79 3:6
non-finite : 0 seen, 0 mismatched
tier1 streams TST
cases : 24250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:24250
non-finite : 0 seen, 0 mismatched
tier1 streams HST
cases : 24250
max rel err : 5.050e-16 at perturbed#1923[6]
max ulp : 4 at perturbed#1923[6]
ulp percentiles: p50=0 p90=0 p99=1 p100=4
ulp histogram : 0:23683 1:461 2:94 3:10 4:2
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_unweighed_streams_are_zero_in_both_implementations ... 7 unweighed streams, all zero over 200 states
ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
tier2_flows, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_flows -- --nocapture --test-threads 1
running 5 tests
test component_flows_sum_to_the_stream_total ... ok
test no_sampled_state_reaches_the_purge_clamp ... lowest PTS over the whole pool: 19153.09 mmHg against a 760 threshold
ok
test the_compressor_ratio_clamps_are_exercised_by_the_adversarial_pool ... VLR at the 10% heat-transfer breakpoint None
VLR at the 50% heat-transfer breakpoint None
TCC at the lower stripping-factor branch None
TCC below the lower stripping-factor branch None
TCC at the upper stripping-factor branch None
TCC approaching the 177 C pole None
TCR at the shutdown limit None
TCR above the shutdown limit None
FTM(11) at the stripping-factor threshold None
VLR at the upper shutdown limit None
VLR at the lower shutdown limit None
VLS at the upper shutdown limit None
VLS at the lower shutdown limit None
VLC at the upper shutdown limit None
VLC at the lower shutdown limit None
PTR at the reactor pressure shutdown limit None
PTV = PTR, the mixing-to-reactor flow clamp None
PTR = PTS, the reactor-to-separator flow clamp None
PTV = PTS, the recycle flow clamp Low
PR = 1, the compressor reverse-flow clamp Low
PR = CPPRMX, the compressor maximum-ratio clamp None
PR above CPPRMX, inside the clamped region High
VLR below the lower shutdown limit None
VLS below the lower shutdown limit None
VLC below the lower shutdown limit None
ok
test the_flow_network_matches_the_fortran_over_all_three_pools ... exp, pow and sqrt come from the vendored libm
tier1 flows FTM (the 10 assembled streams)
cases : 24250
max rel err : 2.246e-14 at perturbed#1790[7]
max ulp : 125 at perturbed#1453[6]
ulp percentiles: p50=0 p90=0 p99=5 p100>=16
ulp histogram : 0:23639 1:224 2:85 3:47 4:12 5:13 6:17 7:17 8:10 9:7 10:5 11:6 12:3 13:2 15:1 >=16:162
non-finite : 0 seen, 0 mismatched
tier1 flows FCM (10 streams x 8)
cases : 194000
max rel err : 2.268e-14 at perturbed#1790[53]
max ulp : 178 at perturbed#1106[43]
ulp percentiles: p50=0 p90=0 p99=4 p100>=16
ulp histogram : 0:187622 1:2738 2:1090 3:426 4:288 5:119 6:88 7:62 8:43 9:57 10:38 11:31 12:25 13:47 14:66 15:90 >=16:1170
non-finite : 0 seen, 0 mismatched
tier1 flows FWR/FWS/AGSP
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 flows CPDH
cases : 2425
max rel err : 2.034e-15 at perturbed#1790[1]
max ulp : 18 at perturbed#1790[1]
ulp percentiles: p50=0 p90=0 p99=2 p100>=16
ulp histogram : 0:2312 1:71 2:20 3:6 4:5 5:6 6:1 7:3 >=16:1
non-finite : 0 seen, 0 mismatched
tier1 flows HST(9) after the compressor bump
cases : 2425
max rel err : 6.522e-15 at perturbed#1790[1]
max ulp : 42 at perturbed#1790[1]
ulp percentiles: p50=0 p90=0 p99=2 p100>=16
ulp histogram : 0:2253 1:133 2:24 3:10 4:1 5:1 6:1 9:1 >=16:1
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_steam_coefficient_matches_through_the_condenser_duty ... tier1 UAC, via QUC
cases : 300
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:300
non-finite : 0 seen, 0 mismatched
300 states below 100 C, 0 at or above and excluded
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.16s
tier2_stripper, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_stripper -- --nocapture --test-threads 1
running 4 tests
test every_stripper_branch_is_exercised_by_the_pool ... VLR at the 10% heat-transfer breakpoint Hyperbolic
VLR at the 50% heat-transfer breakpoint Hyperbolic
TCC at the lower stripping-factor branch Hyperbolic
TCC below the lower stripping-factor branch Pinned
TCC at the upper stripping-factor branch Hyperbolic
TCC approaching the 177 C pole Linear
TCR at the shutdown limit Hyperbolic
TCR above the shutdown limit Hyperbolic
FTM(11) at the stripping-factor threshold Idle
VLR at the upper shutdown limit Hyperbolic
VLR at the lower shutdown limit Hyperbolic
VLS at the upper shutdown limit Hyperbolic
VLS at the lower shutdown limit Hyperbolic
VLC at the upper shutdown limit Hyperbolic
VLC at the lower shutdown limit Hyperbolic
PTR at the reactor pressure shutdown limit Hyperbolic
PTV = PTR, the mixing-to-reactor flow clamp Hyperbolic
PTR = PTS, the reactor-to-separator flow clamp Hyperbolic
PTV = PTS, the recycle flow clamp Hyperbolic
PR = 1, the compressor reverse-flow clamp Hyperbolic
PR = CPPRMX, the compressor maximum-ratio clamp Hyperbolic
PR above CPPRMX, inside the clamped region Hyperbolic
VLR below the lower shutdown limit Hyperbolic
VLS below the lower shutdown limit Hyperbolic
VLC below the lower shutdown limit Hyperbolic
branches reached: {"hyperbolic", "idle", "linear", "pinned"}
ok
test the_non_condensible_factors_never_move_in_the_fortran_either ... SFR(1..3) fixed at [0.9950000047683716, 0.9909999966621399, 0.9900000095367432] across 300 nominal and 20 adversarial states
ok
test the_reactor_inlet_is_an_alias_in_the_fortran_too ... ok
test the_stripper_matches_the_fortran_over_all_three_pools ... transcendentals come from the vendored libm
tier1 stripper SFR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (5, 12): the column's own outlets
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (7): the reactor-inlet alias
cases : 2425
max rel err : 1.484e-15 at perturbed#817[1]
max ulp : 12 at perturbed#591[1]
ulp percentiles: p50=0 p90=0 p99=5 p100=12
ulp histogram : 0:2322 1:1 2:19 3:46 4:5 5:8 6:15 7:6 8:1 12:2
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (5, 12): the column's own outlets
cases : 38800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:38800
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (7): the reactor-inlet alias
cases : 19400
max rel err : 1.610e-15 at perturbed#817[3]
max ulp : 13 at perturbed#591[8]
ulp percentiles: p50=0 p90=0 p99=4 p100=13
ulp histogram : 0:18576 1:6 2:100 3:313 4:228 5:103 6:33 7:15 8:11 9:8 10:1 11:3 12:2 13:1
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (5, 12): the column's own outlets
cases : 38800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:38800
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (7): the reactor-inlet alias
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 stripper TST (5, 7, 12)
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (5, 12): the column's own outlets
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (7): the reactor-inlet alias
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
tier2_heat, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_heat -- --nocapture --test-threads 1
running 4 tests
test both_sides_of_the_steam_cutoff_are_exercised ... steam on: 423 states, off: 2 states
ok
test every_level_branch_is_exercised_by_the_pool ... VLR at the 10% heat-transfer breakpoint dry
VLR at the 50% heat-transfer breakpoint ramp
TCC at the lower stripping-factor branch fully wetted
TCC below the lower stripping-factor branch fully wetted
TCC at the upper stripping-factor branch fully wetted
TCC approaching the 177 C pole fully wetted
TCR at the shutdown limit fully wetted
TCR above the shutdown limit fully wetted
FTM(11) at the stripping-factor threshold fully wetted
VLR at the upper shutdown limit fully wetted
VLR at the lower shutdown limit dry
VLS at the upper shutdown limit fully wetted
VLS at the lower shutdown limit fully wetted
VLC at the upper shutdown limit fully wetted
VLC at the lower shutdown limit fully wetted
PTR at the reactor pressure shutdown limit fully wetted
PTV = PTR, the mixing-to-reactor flow clamp fully wetted
PTR = PTS, the reactor-to-separator flow clamp fully wetted
PTV = PTS, the recycle flow clamp fully wetted
PR = 1, the compressor reverse-flow clamp fully wetted
PR = CPPRMX, the compressor maximum-ratio clamp fully wetted
PR above CPPRMX, inside the clamped region fully wetted
VLR below the lower shutdown limit dry
VLS below the lower shutdown limit fully wetted
VLC below the lower shutdown limit fully wetted
level branches reached: {"dry", "fully wetted", "ramp"}
ok
test heat_transfer_matches_the_fortran_over_all_three_pools ... transcendentals come from the vendored libm
tier1 heat UAR
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 heat QUR
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 heat QUS
cases : 2425
max rel err : 9.572e-13 at perturbed#50[1]
max ulp : 8009 at perturbed#50[1]
ulp percentiles: p50=0 p90=0 p99>=16 p100>=16
ulp histogram : 0:2196 1:23 2:14 3:10 4:21 5:9 6:3 7:10 8:4 9:2 10:3 11:1 12:3 13:3 14:6 15:1 >=16:116
non-finite : 0 seen, 0 mismatched
tier1 heat QUC
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_condenser_driving_difference_is_large_enough_to_discriminate ... smallest gap between TST(8) and TCS as the driving temperature: 40.2906 C
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
tier2_measurements, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_measurements -- --nocapture --test-threads 1
running 4 tests
test the_measurements_match_the_fortran_over_all_three_pools ... transcendentals come from the vendored libm
tier1 XMEAS(1..22), noise-free
cases : 53350
max rel err : 8.774e-15 at perturbed#1851[5]
max ulp : 78 at perturbed#1851[5]
ulp percentiles: p50=0 p90=0 p99=1 p100>=16
ulp histogram : 0:52801 1:226 2:132 3:58 4:44 5:23 6:7 7:7 8:3 9:4 13:1 14:3 >=16:41
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_pool_reaches_several_distinct_shutdown_causes ... TCR at the shutdown limit ["reactor pressure high"]
TCR above the shutdown limit ["reactor pressure high", "reactor temperature high"]
VLR at the upper shutdown limit ["reactor pressure high", "reactor level high"]
VLS at the upper shutdown limit ["separator level high"]
VLC at the upper shutdown limit ["stripper level high"]
VLR below the lower shutdown limit ["reactor level low"]
VLS below the lower shutdown limit ["separator level low"]
VLC below the lower shutdown limit ["stripper level low"]
shutdown causes reached: {"reactor level high", "reactor level low", "reactor pressure high", "reactor temperature high", "separator level high", "separator level low", "stripper level high", "stripper level low"}
ok
test the_shutdown_detector_agrees_with_the_fortran_on_every_state ... tier1 ISD as 0 or 1
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
12 states trip, 2413 do not
ok
test time_zero_is_what_suppresses_the_noise ... 22 of 22 measurements differ with the clock running
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
tier2_balances, vendored libm
cargo test -p tepsim-oracle --features oracle --release --test tier2_balances -- --nocapture --test-threads 1
running 4 tests
test all_fifty_derivatives_match_the_fortran_over_all_three_pools ... transcendentals come from the vendored libm
tier1 YP(1..50), relative to the derivative (reported)
cases : 120600
max rel err : 1.393e-4 at nominal#303[2]
max ulp : 738734374912 at nominal#303[2]
ulp percentiles: p50=0 p90=2 p99>=16 p100>=16
ulp histogram : 0:107101 1:935 2:1289 3:101 4:1512 5:22 6:176 7:14 8:1354 9:19 10:35 11:7 12:166 13:4 14:21 15:11 >=16:7833
non-finite : 0 seen, 0 mismatched
tier1 YP(1..50), relative to the scale of the terms (the gate)
cases : 120600
max rel err : 6.093e-14 at perturbed#300[7]
max ulp : 738734374912 at nominal#303[2]
ulp percentiles: p50=0 p90=2 p99>=16 p100>=16
ulp histogram : 0:107101 1:935 2:1289 3:101 4:1512 5:22 6:176 7:14 8:1354 9:19 10:35 11:7 12:166 13:4 14:21 15:11 >=16:7833
non-finite : 0 seen, 0 mismatched
tier1 YP(1..50), plant frozen
cases : 650
max rel err : 0.000e0 at perturbed#369[1]
max ulp : 0 at perturbed#369[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:650
non-finite : 0 seen, 0 mismatched
2412 states running, 13 frozen, 0 skipped
ok
test every_derivative_slot_actually_moves_somewhere_in_the_pool ... 50 of 50 slots move somewhere in the pool
ok
test the_quirk_fix_changes_only_the_frozen_states ... the fix changes 8 tripping boundaries and leaves 17 alone
ok
test tier2_acceptance_table ... Tier 2 acceptance, 2412 running states
gate: error / scale-of-terms < 1e-12
YP err/scale err/value ratio
1 2.537e-14 8.181e-8 3224593x
2 3.826e-14 3.401e-5 889000607x
3 2.187e-14 7.030e-8 3214801x
4 5.557e-15 2.377e-8 4277976x
5 2.688e-14 5.845e-8 2174388x
6 4.370e-14 2.889e-7 6610686x
7 6.093e-14 1.920e-5 315124861x
8 5.039e-14 8.304e-7 16478948x
9 3.115e-14 1.445e-8 463960x
10 2.910e-14 3.896e-8 1338742x
11 2.899e-14 2.981e-7 10282117x
12 2.918e-14 2.702e-8 925989x
13 2.755e-14 3.689e-8 1339161x
14 3.113e-14 1.779e-7 5713202x
15 3.415e-14 1.068e-7 3128911x
16 5.759e-14 1.020e-6 17702099x
17 4.644e-14 7.407e-9 159498x
18 5.136e-14 2.280e-8 444028x
19 0.000e0 0.000e0 1x
20 0.000e0 0.000e0 1x
21 0.000e0 0.000e0 1x
22 0.000e0 0.000e0 1x
23 0.000e0 0.000e0 1x
24 0.000e0 0.000e0 1x
25 0.000e0 0.000e0 1x
26 0.000e0 0.000e0 1x
27 0.000e0 0.000e0 1x
28 5.276e-15 3.361e-8 6370459x
29 7.713e-15 1.852e-7 24013923x
30 4.567e-15 3.551e-8 7774685x
31 1.241e-15 4.665e-9 3760128x
32 5.087e-15 3.403e-8 6689516x
33 7.093e-15 3.078e-7 43390364x
34 6.921e-15 2.810e-8 4059475x
35 7.220e-15 6.372e-9 882549x
36 5.298e-15 9.721e-7 183496207x
37 0.000e0 0.000e0 1x
38 7.969e-15 5.112e-7 64146903x
39 0.000e0 0.000e0 1x
40 0.000e0 0.000e0 1x
41 0.000e0 0.000e0 1x
42 0.000e0 0.000e0 1x
43 0.000e0 0.000e0 1x
44 0.000e0 0.000e0 1x
45 0.000e0 0.000e0 1x
46 0.000e0 0.000e0 1x
47 0.000e0 0.000e0 1x
48 0.000e0 0.000e0 1x
49 0.000e0 0.000e0 1x
50 0.000e0 0.000e0 1x
worst component: YP(7) at 6.093e-14 of its own scale
tier1 YP(1..50), relative to the scale of the terms (the gate)
cases : 120600
max rel err : 6.093e-14 at perturbed#300[7]
max ulp : 206158430208 at nominal#296[2]
ulp percentiles: p50=0 p90=2 p99>=16 p100>=16
ulp histogram : 0:107280 1:890 2:1293 3:113 4:1468 5:32 6:163 7:17 8:1240 9:19 10:42 11:11 12:166 13:7 14:26 15:11 >=16:7822
non-finite : 0 seen, 0 mismatched
28 of 50 components cancel by more than 100x
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
tier4_closed_loop, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier4_closed_loop -- --nocapture --test-threads 1
running 5 tests
test the_closed_loop_plant_matches_the_fortran_driver ... closed loop, platform libm, 10 h (36000 steps)
worst XMEAS : 0.000e0 at XMEAS(0)
worst XMV : 0.000e0 %range at XMV(0)
within XNS : 10.000 h of 10, ending at 0.000e0 x XNS(0)
first split : never
ok
test the_controlled_plant_runs_the_full_horizon_without_tripping ... 10 h (36000 steps): fortran up, port closed-loop up, port open-loop tripped at step 11017 (3.060 h) on Some(ReactorPressureHigh)
ok
test the_controllers_read_the_previous_steps_measurements ... XMV(7) on the first fire: previous-step 34.147823842, current-step 35.623679189, fortran 34.147823842
ok
test the_driver_forces_idv12_at_the_eight_hour_mark ... ok
test the_forced_disturbance_changes_the_plant_measurably ... D-011, 10 h, faithful against fixed:
first split, port : Some((29390, 22))
first split, fortran: Some((29390, 22))
worst over the run : 1.092e-1 at XMEAS(37)
worst at the end : 3.262e-2 at XMEAS(38)
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 4.29s
tier5_invariants, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier5_invariants -- --nocapture --test-threads 1
running 9 tests
test each_reaction_balances_on_paper ... ok
test every_component_balances_on_moles ... I-4 on the Fortran over 1 h: worst 7.436e-15 relative, on F at step 627; largest reaction term seen 457.5 lbmol/h
ok
test every_component_balances_on_moles_in_the_port ... I-4 on the port at the nominal state: worst 2.892e-15 relative, on F
ok
test the_fortran_conserves_mass_across_the_reaction ... I-1 on the Fortran: 200 states, worst residual 4.664e-16 of the term scale, at pool index 130
ok
test the_inert_has_no_reaction_term ... I-3: CRXR(2) is zero across 100 reacting states
ok
test the_plant_balances_mass_away_from_steady_state ... I-2 along 2 h open loop: worst 6.556e-16 relative at step 6570, where the accumulation term is 0.1 lb/h
accumulation 0.0613 lb/h against a residual of about 2.10e-11 lb/h: a factor of 2.9e9
ok
test the_port_conserves_mass_across_the_reaction ... I-1 on the port: 200 states, worst residual 4.664e-16 of the term scale, at pool index 22
ok
test the_ported_plant_balances_mass ... I-2 on the port at the nominal state: residual 6.693535e-12 lb/h against 32191.8 lb/h, 2.079e-16 relative
ok
test the_whole_plant_balances_mass ... I-2 on the Fortran at the nominal state: residual 6.693535e-12 lb/h against a throughput of 32191.8 lb/h, 2.079e-16 relative
ok
test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s
tier5_runs, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier5_runs -- --nocapture --test-threads 1
running 10 tests
test a_run_is_reproducible_from_its_scenario_and_seed ... ok
test both_sources_produce_the_same_shape ... 2 h gives 40 samples of 53 variables
ok
test different_seeds_give_different_runs ... five nominal seeds: worst relative spread 1.366e1
ok
test every_disturbance_moves_the_plant ... IDV(1) worst departure from nominal 2.456e0
IDV(2) worst departure from nominal 5.964e-1
IDV(3) worst departure from nominal 4.076e-3
IDV(4) worst departure from nominal 1.396e-1
IDV(5) worst departure from nominal 3.522e-1
IDV(6) worst departure from nominal 3.467e0
IDV(7) worst departure from nominal 7.595e-1
IDV(8) worst departure from nominal 3.927e-1
IDV(9) worst departure from nominal 3.531e-3
IDV(10) worst departure from nominal 1.801e-2
IDV(11) worst departure from nominal 1.798e-1
IDV(12) worst departure from nominal 1.413e-1
IDV(13) worst departure from nominal 1.956e-1
IDV(14) worst departure from nominal 2.626e-1
IDV(15) worst departure from nominal 9.839e-3
IDV(16) worst departure from nominal 7.772e-2
IDV(17) worst departure from nominal 7.203e-2
IDV(18) worst departure from nominal 3.782e-1
IDV(19) worst departure from nominal 7.098e-2
IDV(20) worst departure from nominal 9.324e-2
ok
test every_seed_is_a_valid_generator_word ... ok
test the_battery_sizes_are_what_they_claim ... full battery: 2100 runs per source, 960 samples each, about 27 min per source at 766 ms per 48 h run
ok
test the_published_seed_table_is_transcribed_correctly ... published seeds: 34 of 54 exceed 2^32, 27 of 54 are even
ok
test the_sticking_valve_divergence_is_the_transcendentals ... IDV(14), XMV(10): worst absolute difference 0.000e0 with the platform libm
ok
test the_two_sources_agree_over_a_whole_run ... nominal: worst 0.000e0 at sample 0 variable 1 (platform libm)
IDV(1): worst 0.000e0 at sample 0 variable 1 (platform libm)
IDV(13): worst 0.000e0 at sample 0 variable 1 (platform libm)
IDV(14): worst 0.000e0 at sample 0 variable 1 (platform libm)
IDV(19): worst 0.000e0 at sample 0 variable 1 (platform libm)
ok
test there_are_twenty_faults_and_twenty_one_scenarios ... ok
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.87s
tier2_equilibrium, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_equilibrium -- --nocapture --test-threads 1
running 3 tests
test the_algebra_is_bit_identical_once_exp_agrees ... tier1 equilibrium VVR/VVS
cases : 1450
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:1450
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPR
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPS
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PTR/PTS/PTV
cases : 2175
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2175
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVR
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVS
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UTVR/UTVS
cases : 1450
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:1450
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVR
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVS
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
ok
test the_equilibrium_matches_the_fortran_over_all_three_pools ... exp comes from the platform libm
tier1 equilibrium VVR/VVS
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PPS
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 equilibrium PTR/PTS/PTV
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 equilibrium XVS
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UTVR/UTVS
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 equilibrium UCVS
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_vendored_and_platform_exp_differ_only_by_rounding ... exp over the Antoine range [0.5868, 13.0825]: 15000 arguments, 0 differ (0.000%), worst 0 ulp
ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
tier2_kinetics, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_kinetics -- --nocapture --test-threads 1
running 4 tests
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 kinetics RR
cases : 2900
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2900
non-finite : 0 seen, 0 mismatched
tier1 kinetics CRXR
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 kinetics RH
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
ok
test the_inert_has_no_net_production_in_either_implementation ... tier1 CRXR(2), never assigned
cases : 200
max rel err : 0.000e0 at nominal#0[2]
max ulp : 0 at nominal#0[2]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:200
non-finite : 0 seen, 0 mismatched
ok
test the_kinetics_match_the_fortran_over_all_three_pools ... exp and pow come from the platform libm
tier1 kinetics RR
cases : 9700
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:9700
non-finite : 0 seen, 0 mismatched
tier1 kinetics CRXR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 kinetics RH
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_vendored_and_platform_pow_differ_only_by_rounding ... pow over [0.25, 5000] at orders 1.1544 and 0.3735: 40000 cases, 0 differ (0.000%), worst 0 ulp
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.12s
tier2_streams, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_streams -- --nocapture --test-threads 1
running 4 tests
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 streams XST (10 streams x 8)
cases : 58000
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:58000
non-finite : 0 seen, 0 mismatched
tier1 streams XMWS (the 6 that exist)
cases : 4350
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4350
non-finite : 0 seen, 0 mismatched
tier1 streams TST
cases : 7250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7250
non-finite : 0 seen, 0 mismatched
tier1 streams HST
cases : 7250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7250
non-finite : 0 seen, 0 mismatched
ok
test the_compressor_makes_the_recycle_enthalpy_differ_from_the_purge ... HST(9) differs from HST(10) on 200 of 200 nominal states
ok
test the_stream_table_matches_the_fortran_over_all_three_pools ... exp and pow come from the platform libm
tier1 streams XST (10 streams x 8)
cases : 194000
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:194000
non-finite : 0 seen, 0 mismatched
tier1 streams XMWS (the 6 that exist)
cases : 14550
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:14550
non-finite : 0 seen, 0 mismatched
tier1 streams TST
cases : 24250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:24250
non-finite : 0 seen, 0 mismatched
tier1 streams HST
cases : 24250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:24250
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_unweighed_streams_are_zero_in_both_implementations ... 7 unweighed streams, all zero over 200 states
ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
tier2_flows, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_flows -- --nocapture --test-threads 1
running 6 tests
test component_flows_sum_to_the_stream_total ... ok
test no_sampled_state_reaches_the_purge_clamp ... lowest PTS over the whole pool: 19153.09 mmHg against a 760 threshold
ok
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 flows FTM (the 10 assembled streams)
cases : 7250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7250
non-finite : 0 seen, 0 mismatched
tier1 flows FCM (10 streams x 8)
cases : 58000
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:58000
non-finite : 0 seen, 0 mismatched
tier1 flows FWR/FWS/AGSP
cases : 2175
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2175
non-finite : 0 seen, 0 mismatched
tier1 flows CPDH
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
tier1 flows HST(9) after the compressor bump
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
ok
test the_compressor_ratio_clamps_are_exercised_by_the_adversarial_pool ... VLR at the 10% heat-transfer breakpoint None
VLR at the 50% heat-transfer breakpoint None
TCC at the lower stripping-factor branch None
TCC below the lower stripping-factor branch None
TCC at the upper stripping-factor branch None
TCC approaching the 177 C pole None
TCR at the shutdown limit None
TCR above the shutdown limit None
FTM(11) at the stripping-factor threshold None
VLR at the upper shutdown limit None
VLR at the lower shutdown limit None
VLS at the upper shutdown limit None
VLS at the lower shutdown limit None
VLC at the upper shutdown limit None
VLC at the lower shutdown limit None
PTR at the reactor pressure shutdown limit None
PTV = PTR, the mixing-to-reactor flow clamp None
PTR = PTS, the reactor-to-separator flow clamp None
PTV = PTS, the recycle flow clamp Low
PR = 1, the compressor reverse-flow clamp Low
PR = CPPRMX, the compressor maximum-ratio clamp None
PR above CPPRMX, inside the clamped region High
VLR below the lower shutdown limit None
VLS below the lower shutdown limit None
VLC below the lower shutdown limit None
ok
test the_flow_network_matches_the_fortran_over_all_three_pools ... exp, pow and sqrt come from the platform libm
tier1 flows FTM (the 10 assembled streams)
cases : 24250
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:24250
non-finite : 0 seen, 0 mismatched
tier1 flows FCM (10 streams x 8)
cases : 194000
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:194000
non-finite : 0 seen, 0 mismatched
tier1 flows FWR/FWS/AGSP
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 flows CPDH
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 flows HST(9) after the compressor bump
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_steam_coefficient_matches_through_the_condenser_duty ... tier1 UAC, via QUC
cases : 300
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:300
non-finite : 0 seen, 0 mismatched
300 states below 100 C, 0 at or above and excluded
ok
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
tier2_stripper, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_stripper -- --nocapture --test-threads 1
running 5 tests
test every_stripper_branch_is_exercised_by_the_pool ... VLR at the 10% heat-transfer breakpoint Hyperbolic
VLR at the 50% heat-transfer breakpoint Hyperbolic
TCC at the lower stripping-factor branch Hyperbolic
TCC below the lower stripping-factor branch Pinned
TCC at the upper stripping-factor branch Hyperbolic
TCC approaching the 177 C pole Linear
TCR at the shutdown limit Hyperbolic
TCR above the shutdown limit Hyperbolic
FTM(11) at the stripping-factor threshold Idle
VLR at the upper shutdown limit Hyperbolic
VLR at the lower shutdown limit Hyperbolic
VLS at the upper shutdown limit Hyperbolic
VLS at the lower shutdown limit Hyperbolic
VLC at the upper shutdown limit Hyperbolic
VLC at the lower shutdown limit Hyperbolic
PTR at the reactor pressure shutdown limit Hyperbolic
PTV = PTR, the mixing-to-reactor flow clamp Hyperbolic
PTR = PTS, the reactor-to-separator flow clamp Hyperbolic
PTV = PTS, the recycle flow clamp Hyperbolic
PR = 1, the compressor reverse-flow clamp Hyperbolic
PR = CPPRMX, the compressor maximum-ratio clamp Hyperbolic
PR above CPPRMX, inside the clamped region Hyperbolic
VLR below the lower shutdown limit Hyperbolic
VLS below the lower shutdown limit Hyperbolic
VLC below the lower shutdown limit Hyperbolic
branches reached: {"hyperbolic", "idle", "linear", "pinned"}
ok
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 stripper SFR
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (5, 12): the column's own outlets
cases : 1450
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:1450
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (7): the reactor-inlet alias
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (5, 12): the column's own outlets
cases : 11600
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:11600
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (7): the reactor-inlet alias
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (5, 12): the column's own outlets
cases : 11600
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:11600
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (7): the reactor-inlet alias
cases : 5800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:5800
non-finite : 0 seen, 0 mismatched
tier1 stripper TST (5, 7, 12)
cases : 2175
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2175
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (5, 12): the column's own outlets
cases : 1450
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:1450
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (7): the reactor-inlet alias
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
ok
test the_non_condensible_factors_never_move_in_the_fortran_either ... SFR(1..3) fixed at [0.9950000047683716, 0.9909999966621399, 0.9900000095367432] across 300 nominal and 20 adversarial states
ok
test the_reactor_inlet_is_an_alias_in_the_fortran_too ... ok
test the_stripper_matches_the_fortran_over_all_three_pools ... transcendentals come from the platform libm
tier1 stripper SFR
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (5, 12): the column's own outlets
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 stripper FTM (7): the reactor-inlet alias
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (5, 12): the column's own outlets
cases : 38800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:38800
non-finite : 0 seen, 0 mismatched
tier1 stripper FCM (7): the reactor-inlet alias
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (5, 12): the column's own outlets
cases : 38800
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:38800
non-finite : 0 seen, 0 mismatched
tier1 stripper XST (7): the reactor-inlet alias
cases : 19400
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:19400
non-finite : 0 seen, 0 mismatched
tier1 stripper TST (5, 7, 12)
cases : 7275
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:7275
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (5, 12): the column's own outlets
cases : 4850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:4850
non-finite : 0 seen, 0 mismatched
tier1 stripper HST (7): the reactor-inlet alias
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
tier2_heat, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_heat -- --nocapture --test-threads 1
running 5 tests
test both_sides_of_the_steam_cutoff_are_exercised ... steam on: 423 states, off: 2 states
ok
test every_level_branch_is_exercised_by_the_pool ... VLR at the 10% heat-transfer breakpoint dry
VLR at the 50% heat-transfer breakpoint ramp
TCC at the lower stripping-factor branch fully wetted
TCC below the lower stripping-factor branch fully wetted
TCC at the upper stripping-factor branch fully wetted
TCC approaching the 177 C pole fully wetted
TCR at the shutdown limit fully wetted
TCR above the shutdown limit fully wetted
FTM(11) at the stripping-factor threshold fully wetted
VLR at the upper shutdown limit fully wetted
VLR at the lower shutdown limit dry
VLS at the upper shutdown limit fully wetted
VLS at the lower shutdown limit fully wetted
VLC at the upper shutdown limit fully wetted
VLC at the lower shutdown limit fully wetted
PTR at the reactor pressure shutdown limit fully wetted
PTV = PTR, the mixing-to-reactor flow clamp fully wetted
PTR = PTS, the reactor-to-separator flow clamp fully wetted
PTV = PTS, the recycle flow clamp fully wetted
PR = 1, the compressor reverse-flow clamp fully wetted
PR = CPPRMX, the compressor maximum-ratio clamp fully wetted
PR above CPPRMX, inside the clamped region fully wetted
VLR below the lower shutdown limit dry
VLS below the lower shutdown limit fully wetted
VLC below the lower shutdown limit fully wetted
level branches reached: {"dry", "fully wetted", "ramp"}
ok
test heat_transfer_matches_the_fortran_over_all_three_pools ... transcendentals come from the platform libm
tier1 heat UAR
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 heat QUR
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 heat QUS
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
tier1 heat QUC
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 heat UAR
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
tier1 heat QUR
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
tier1 heat QUS
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
tier1 heat QUC
cases : 725
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:725
non-finite : 0 seen, 0 mismatched
ok
test the_condenser_driving_difference_is_large_enough_to_discriminate ... smallest gap between TST(8) and TCS as the driving temperature: 40.2906 C
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
tier2_measurements, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_measurements -- --nocapture --test-threads 1
running 5 tests
test the_algebra_is_bit_identical_once_exp_and_pow_agree ... tier1 XMEAS(1..22), noise-free
cases : 15950
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:15950
non-finite : 0 seen, 0 mismatched
ok
test the_measurements_match_the_fortran_over_all_three_pools ... transcendentals come from the platform libm
tier1 XMEAS(1..22), noise-free
cases : 53350
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:53350
non-finite : 0 seen, 0 mismatched
states skipped because the port would not converge: 0
ok
test the_pool_reaches_several_distinct_shutdown_causes ... TCR at the shutdown limit ["reactor pressure high"]
TCR above the shutdown limit ["reactor pressure high", "reactor temperature high"]
VLR at the upper shutdown limit ["reactor pressure high", "reactor level high"]
VLS at the upper shutdown limit ["separator level high"]
VLC at the upper shutdown limit ["stripper level high"]
VLR below the lower shutdown limit ["reactor level low"]
VLS below the lower shutdown limit ["separator level low"]
VLC below the lower shutdown limit ["stripper level low"]
shutdown causes reached: {"reactor level high", "reactor level low", "reactor pressure high", "reactor temperature high", "separator level high", "separator level low", "stripper level high", "stripper level low"}
ok
test the_shutdown_detector_agrees_with_the_fortran_on_every_state ... tier1 ISD as 0 or 1
cases : 2425
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:2425
non-finite : 0 seen, 0 mismatched
12 states trip, 2413 do not
ok
test time_zero_is_what_suppresses_the_noise ... 22 of 22 measurements differ with the clock running
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
tier2_balances, platform libm
cargo test -p tepsim-oracle --features oracle,libm-system --release --test tier2_balances -- --nocapture --test-threads 1
running 5 tests
test all_fifty_derivatives_match_the_fortran_over_all_three_pools ... transcendentals come from the platform libm
tier1 YP(1..50), relative to the derivative (reported)
cases : 120600
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:120600
non-finite : 0 seen, 0 mismatched
tier1 YP(1..50), relative to the scale of the terms (the gate)
cases : 120600
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:120600
non-finite : 0 seen, 0 mismatched
tier1 YP(1..50), plant frozen
cases : 650
max rel err : 0.000e0 at perturbed#369[1]
max ulp : 0 at perturbed#369[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:650
non-finite : 0 seen, 0 mismatched
2412 states running, 13 frozen, 0 skipped
ok
test every_derivative_slot_actually_moves_somewhere_in_the_pool ... 50 of 50 slots move somewhere in the pool
ok
test the_quirk_fix_changes_only_the_frozen_states ... the fix changes 8 tripping boundaries and leaves 17 alone
ok
test the_whole_right_hand_side_is_bit_identical_once_exp_and_pow_agree ... tier1 YP(1..50), relative to the derivative (reported)
cases : 35850
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:35850
non-finite : 0 seen, 0 mismatched
ok
test tier2_acceptance_table ... Tier 2 acceptance, 2412 running states
gate: error / scale-of-terms < 1e-12
YP err/scale err/value ratio
1 0.000e0 0.000e0 1x
2 0.000e0 0.000e0 1x
3 0.000e0 0.000e0 1x
4 0.000e0 0.000e0 1x
5 0.000e0 0.000e0 1x
6 0.000e0 0.000e0 1x
7 0.000e0 0.000e0 1x
8 0.000e0 0.000e0 1x
9 0.000e0 0.000e0 1x
10 0.000e0 0.000e0 1x
11 0.000e0 0.000e0 1x
12 0.000e0 0.000e0 1x
13 0.000e0 0.000e0 1x
14 0.000e0 0.000e0 1x
15 0.000e0 0.000e0 1x
16 0.000e0 0.000e0 1x
17 0.000e0 0.000e0 1x
18 0.000e0 0.000e0 1x
19 0.000e0 0.000e0 1x
20 0.000e0 0.000e0 1x
21 0.000e0 0.000e0 1x
22 0.000e0 0.000e0 1x
23 0.000e0 0.000e0 1x
24 0.000e0 0.000e0 1x
25 0.000e0 0.000e0 1x
26 0.000e0 0.000e0 1x
27 0.000e0 0.000e0 1x
28 0.000e0 0.000e0 1x
29 0.000e0 0.000e0 1x
30 0.000e0 0.000e0 1x
31 0.000e0 0.000e0 1x
32 0.000e0 0.000e0 1x
33 0.000e0 0.000e0 1x
34 0.000e0 0.000e0 1x
35 0.000e0 0.000e0 1x
36 0.000e0 0.000e0 1x
37 0.000e0 0.000e0 1x
38 0.000e0 0.000e0 1x
39 0.000e0 0.000e0 1x
40 0.000e0 0.000e0 1x
41 0.000e0 0.000e0 1x
42 0.000e0 0.000e0 1x
43 0.000e0 0.000e0 1x
44 0.000e0 0.000e0 1x
45 0.000e0 0.000e0 1x
46 0.000e0 0.000e0 1x
47 0.000e0 0.000e0 1x
48 0.000e0 0.000e0 1x
49 0.000e0 0.000e0 1x
50 0.000e0 0.000e0 1x
worst component: YP(0) at 0.000e0 of its own scale
tier1 YP(1..50), relative to the scale of the terms (the gate)
cases : 120600
max rel err : 0.000e0 at nominal#0[1]
max ulp : 0 at nominal#0[1]
ulp percentiles: p50=0 p90=0 p99=0 p100=0
ulp histogram : 0:120600
non-finite : 0 seen, 0 mismatched
0 of 50 components cancel by more than 100x
ok
test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.23s