Files
sim-numerics/PREREG_step_extrapolation_2026-09-21.md

4.3 KiB
Raw Permalink Blame History

PREREG A — похожесть соседних шагов как множитель (экстраполяция)

Составлено до прогона. Валерий: «похожесть с предыдущими шагами можно развить дальше» → «пред-регистрируй и проверяй A».

Основание

На плоских функциях метод ходит циклом из 4 вычислений: два недолёта с отношением сжатия (1−1/m)^m, перескок, почти пустой шаг (results_diag_contraction_sequence.txt). В фазе недолёта итерация ползёт с одной стороны, и соседние шаги — почти постоянная доля друг друга.

Правило (без констант)

Пусть dₙ — предложенный шаг из текущей точки, dₙ₋₁ = x − x_prev — предыдущее перемещение.

S = min(|dₙ|, |dₙ₋₁|) / max(|dₙ|, |dₙ₋₁|),   если dₙ и dₙ₋₁ одного знака; иначе S = 0
шаг A = dₙ / (1 − S)

Оставшийся путь при геометрическом ряде — dₙ·S/(1−S), отсюда множитель 1/(1−S). Для xᵐ под шагом Ньютона S = 1 − 1/m, множитель = m, шаг A = m·f/f′ попадает в корень. На простом корне шаги сжимаются сверхлинейно, S → 0, шаг A = dₙ: метод не меняется.

Известное родство: ускорение Эйткена, модифицированный Ньютон для кратного корня. Отличие от опровергнутых derived3_m (m из параболы, слепа — 5.8%) и rho (дёргался у корня): m читается из двух шагов, у корня S → 0.

Проверка (метод не меняется)

На трассах предложенного метода и чтения (3), в каждом состоянии с известным предыдущим шагом: точка приземления шага A, одно дополнительное вычисление f в ней, обновление скобки, половинения скобки. То же для нашего шага и для деления пополам — из того же состояния. Шаг A, вышедший за скобку, считается недопустимым (реальный метод его спроецировал бы), доля таких случаев сообщается.

Группы — те же, что во всех проверках этой линии: APS, CHA fun1, CHA плоские fun3–6, CHA прочие.

Критерии

# что ПРОЙДЕНО, если
A1 плоские: средние половинения на вычисление, шаг A против нашего шага, парно по состояниям с S > 0 A больше
A2 APS: то же A не меньше (вреда нет)
A3 плоские: шаг A против деления пополам (1 половинение) сообщается; ≥ 1 — значит, A обгоняет деление
A4 доля состояний с S > 0 на APS сообщается (чем реже, тем инертнее)

Фальсификатор: A1 ложна — экстраполяция не бьёт наш шаг там, где мы проигрываем; правило не строится. A2 ложна — вредит там, где мы выигрываем; строить без отдельного решения нельзя.

Ограничение, объявленное заранее: проверка меряет один шаг из каждого состояния. Разрыв цикла меняет дальнейшую траекторию, поэтому итог по вычислениям на весь прогон покажет только реализация в методе — отдельная пред-регистрация, если A пройдёт.