38 lines
2.3 KiB
Markdown
38 lines
2.3 KiB
Markdown
# Gravity work accounting on direction rejection
|
|
|
|
The combined polynomial-enthalpy and reduced-gravity strategy checks descent
|
|
twice: once when selecting the enthalpy repair, and again after lifting the
|
|
repaired retained direction into gravity coordinates. A successful gravity
|
|
relift performs real auxiliary work even when the second check rejects the
|
|
direction before line search.
|
|
|
|
Previously, the successful-relift diagnostics were copied only after the second
|
|
check. Its early rejection could therefore leave solve counts, iteration counts,
|
|
timings, and the last inner residual at their earlier linear-solve snapshot.
|
|
The snapshot now occurs immediately after successful direction capture and
|
|
before the final descent check. Linear-report coordinates retain their existing
|
|
meaning; this changes no tolerance, direction, state, or acceptance decision.
|
|
|
|
The immutable `b21fa40` rotating `positivity-reduced` artifact records 20 gravity
|
|
solves and a positive final merit slope. Those counters can omit a successful
|
|
last relift: they do not distinguish rejection during enthalpy repair from
|
|
rejection after relifting. Its `direction_repairs` count also includes a chosen
|
|
positive repair fraction whose candidate subsequently fails descent. Historical
|
|
artifacts must retain these qualifications rather than being retroactively
|
|
interpreted as complete work counters.
|
|
|
|
The final `c82e68d` replay passes 30 provenance, trajectory, state, and report
|
|
checks. Its accepted-state file is bitwise identical; trial records and all
|
|
non-timing Newton fields match exactly. With the corrected source, its solve
|
|
and iteration counts remain 20 / 681. This establishes that the actual case
|
|
returns during enthalpy repair, before another gravity relift. The positive
|
|
slope therefore identifies a non-descent repair family. This replay does not
|
|
exercise the separate post-relift non-descent branch found by source review.
|
|
|
|
The source fix builds and passes the complete targeted regression selection
|
|
(43 serial cases / 1,886 assertions and 37 supported cases per MPI rank).
|
|
`models_v3_direction/direction_regression_comparison.json` records pinned old
|
|
and new source revisions, immutable executable/input hashes, every comparison,
|
|
and the conditional failure localization. It emits no localization if its
|
|
checks fail. The numerical controls and acceptance decisions are unchanged.
|