Mon, 05 Oct 2026 20:20:00 -0500
Subdifferential discrepancy calculation scaling fix for sliding PDPS
| src/regularisation.rs | file | annotate | diff | comparison | revisions | |
| src/sliding_pdps.rs | file | annotate | diff | comparison | revisions |
--- a/src/regularisation.rs Fri Oct 02 12:03:25 2026 -0500 +++ b/src/regularisation.rs Mon Oct 05 20:20:00 2026 -0500 @@ -316,7 +316,7 @@ M: MinMaxMapping<Loc<N, F>, F>, { let refinement_tolerance = ε * config.refinement.tolerance_mult; - let τα = self.α()*τ; + let τα = self.α() * τ; let μ_disrepancy = μ .iter_spikes()
--- a/src/sliding_pdps.rs Fri Oct 02 12:03:25 2026 -0500 +++ b/src/sliding_pdps.rs Mon Oct 05 20:20:00 2026 -0500 @@ -227,7 +227,7 @@ // Statistics let full_stats = |μ: &DiscreteMeasure<U, F>, v: &mut S, z: &Z, dz: Z, ε, stats| { - let discrepancy = reg.discrepancy(v, τ, ε, μ, &config.insertion); + let discrepancy = τ * reg.discrepancy(v, 1.0, ε / τ, μ, &config.insertion); let aux_discrepancy = is_fb.then(|| z.dist2(fnR.prox(σ_p, dz * (-σ_p) + z))); let joint_discrepancy = aux_discrepancy .map(|d| (discrepancy.powi(2) + τ * (2.0 / σ_p - l_z) * d.powi(2)).sqrt());