[us-commits] [ehb54/ultrascan3] 311ae9: extrap_c0: add reciprocal (c/I) and 2nd-order viri...
emre brookes
noreply at github.com
Mon Jul 13 10:59:51 MDT 2026
Branch: refs/heads/ehb54-issue-920
Home: https://github.com/ehb54/ultrascan3
Commit: 311ae95c2da467a90a09cc73f8fd444bc67346b4
https://github.com/ehb54/ultrascan3/commit/311ae95c2da467a90a09cc73f8fd444bc67346b4
Author: ehb54 <brookes at uthscsa.edu>
Date: 2026-07-13 (Mon, 13 Jul 2026)
Changed paths:
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/somo/doc/manual/somo/somo_saxs_extrap_c0.html
Log Message:
-----------
extrap_c0: add reciprocal (c/I) and 2nd-order virial concentration models
The additive Zimm fit (I/c vs c) reads I(0)/MW systematically low when
interparticle interactions are strong, because the second-virial structure
factor makes I(q,c)/c a saturating (convex) function of c. Add two
alternative concentration models, selectable per extrapolation:
- reciprocal: c/I = u + v*c, I0 = 1/u (linear in c; unbiased MW)
- 2nd-virial: c/I = u + v*c + w*c^2, I0 = 1/u (robust at strong interaction)
Reciprocal-1st reuses the existing GCV penalized-slope core (and per-q /
2-point fallbacks) by fitting the c/I axis and inverting the intercept, with
SE propagated as SE(u)/u^2. Virial-2 adds a per-q weighted quadratic (3x3
normal equations, needs >=4 concentrations). Additive remains the default and
its path is unchanged; absolute-scale mode is unaffected.
Validated against a physical Percus-Yevick hard-sphere ground truth: at
realistic suppression (~1.5x) reciprocal is within ~1% vs additive's ~3% low
and almerge's ~6% low; the 2nd-order virial holds to ~5% even at 5x
suppression where the 1st-order over-corrects.
GUI: a "Concentration model" drop-down in the concentration-assignment dialog
(default Additive). A power-user default may be preset via gparam
saxs_extrap_c0_model. Manual page updated.
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