NEWS
Dcurvature 0.0.4 (2026-07-20)
New features
select_components(): exposes the discrete-curvature elbow criterion
(adaptive m* from first/second-order operators, plus the extended m**
with a minimum cumulative-variance threshold tau) as a single reproducible
call. The same logic was previously only reachable inside the Shiny app, so
results reported in the accompanying article can now be reproduced
programmatically.
Bug fixes
- Corrected the adaptive selection rule (
mstar_fn) to follow the manuscript
(Section 4) faithfully. It now operates directly on the boundary-extended
curvature (with the endpoint zeros kept) and drops the +1 / +2+1 index
offsets that made the package return one component too many. Keeping the
boundary zeros lets the first-order operator detect a dominant first component
at m = 1. The selected m* now matches the curvature / second-difference
peak shown in the results table (and the value reported in the article). The
rule is identical across select_components() and both bundled Shiny apps.