Note: v1.8 was built but never published as its own release; this release covers both v1.8's and v1.9's changes together.
v1.9 — NaN-tolerant multi-objective cost function
gsua_pe's fmincon-family cost path (gsua_costf, and the regulator calculation) now ignoresNaNper output row instead of letting a singleNaNinydatapoison the scalar cost for every row. Needed for multi-output joint fits where different signals have independently gappy real-world data (e.g. case-count time series fit jointly against a field-sampled biological measurement with its own missing-period pattern).- New
gsua_corr2omitnanhelper: NaN-tolerant 2-D correlation coefficient, used internally bygsua_costf. - Verified byte-identical to the pre-fix formula when
ydatahas noNaN— this is a behavior extension, not a behavior change, for existing callers. - New regression test suite in
tests/.
v1.8 — Practical identifiability pipeline fixes
gsua_ia/gsua_diagained a parameterized, data-driven fit-quality filter (new'cost'option: fixed-tolerancertolor automatic-gapgapcutoff, with amin_keepfloor) to screen out bad-fit multistart runs before any statistic — correlation, confidence interval, cluster assignment — is computed from them.- Fixed an ordering bug: multivariate outlier detection now runs after multi-modal clustering, not before. The old order could delete a genuine second cluster of global minima by treating it as an "outlier" relative to the pooled mean/covariance across both basins.
- New
gsua_costcutoffhelper implementing the shared cutoff logic behind the'cost'option.
This is a draft release — the packaged .mltbx is attached for review. Publishing it live will auto-sync to MATLAB File Exchange, so it's left unpublished pending explicit confirmation.