[us-commits] [ehb54/ultrascan3] ad06eb: extrap-c0: default reciprocal->additive (wave unfi...
emre brookes
noreply at github.com
Thu Jul 23 16:26:35 MDT 2026
Branch: refs/heads/ehb54-issue-920
Home: https://github.com/ehb54/ultrascan3
Commit: ad06ebcf32fff89fd4162a573227d937f14925ff
https://github.com/ehb54/ultrascan3/commit/ad06ebcf32fff89fd4162a573227d937f14925ff
Author: ehb54 <brookes at uthscsa.edu>
Date: 2026-07-23 (Thu, 23 Jul 2026)
Changed paths:
M us_somo/develop/include/us_hydrodyn_saxs.h
M us_somo/develop/include/us_hydrodyn_saxs_iqq_extrap_c0_conc.h
M us_somo/develop/src/us_hydrodyn_saxs_iqq_extrap_c0.cpp
M us_somo/develop/src/us_hydrodyn_saxs_iqq_extrap_c0_conc.cpp
M us_somo/develop/src/us_hydrodyn_saxs_iqq_extrap_c0_script.cpp
M us_somo/somo/doc/manual/somo/somo_saxs_extrap_c0.html
Log Message:
-----------
extrap-c0: default reciprocal->additive (wave unfixable), reciprocal wave warning, virial2/GUI cleanup
The reciprocal+GCV concentration model develops a coherent low-q "wave" in the extrapolated
profile on few-concentration series, and it has no robust lambda cure: GCV selects lambda to fit
the c/I axis, but I(0)=1/u, and the nonlinear inversion decouples "good lambda for the fit" from
"good lambda for I(0)". Proven with a faithful GCV replica plus a lambda-sweep run through SOMO
(new gcv_lambda diagnostic directive, reading GNOM waviness off datgnom): alpha-syn is clean only
at edof ~= n / ~5 / 1 and wavy across edof 10-169, while SASBDB needs edof ~60-130 (Xylanase
R^2=0.065 otherwise) -- the good bands do not intersect, so no lambda-selection rule works.
Full analysis: extrap_c0_paper/results/reciprocal_lambda_fix_final.txt.
- Default concentration model reciprocal -> additive (dialog, CLI, header, fallback, tooltip,
manual). Additive is clean on every dataset tested; reciprocal stays available (dropdown +
gparam saxs_extrap_c0_model). Reciprocal's MW advantage is unvalidated (no absolute-scale data)
while its wave cost is now demonstrated on real data.
- Reciprocal-only low-q wave warning: a Wald-Wolfowitz runs test on the EXCESS low-q coherence of
the reciprocal profile over an additive GCV baseline (a single-curve test cannot separate the
artifact from genuine globular form-factor structure; the Guinier R^2 does not catch the wave).
- virial2 uses a per-q quadratic and ignores GCV, so the wave cannot occur there (verified: GNOM
z ~ -1.8 where reciprocal is -11, 0 warnings); skip the wasted GCV solve and its spurious
"Zimm GCV applied" log line for virial2.
- GUI: gray out the GCV checkbox for virial2, the fit-broadening field for non-additive models,
and the recompute-input mode when its checkbox is off (settable-but-ignored groupings).
- New gcv_lambda control-file directive (default 0 = automatic GCV; diagnostic/power-user knob).
Behavior-preserving on pinned-model runs: all 9 regression baselines byte-identical.
Co-Authored-By: Claude Fable 5 <noreply at anthropic.com>
To unsubscribe from these emails, change your notification settings at https://github.com/ehb54/ultrascan3/settings/notifications
More information about the us-commits
mailing list