--- a/src/prox_penalty/radon_squared.rs Thu Feb 26 11:38:43 2026 -0500 +++ b/src/prox_penalty/radon_squared.rs Fri Jan 16 19:39:22 2026 -0500 @@ -9,6 +9,7 @@ use crate::forward_model::ForwardModel; use crate::measures::merging::SpikeMerging; use crate::measures::{DeltaMeasure, DiscreteMeasure, Radon}; +use crate::prox_penalty::StepLengthBoundValue; use crate::regularisation::RegTerm; use crate::types::*; use alg_tools::bounds::MinMaxMapping; @@ -159,9 +160,12 @@ Domain: Space + Norm<Radon, F>, A: ForwardModel<Domain, F> + BoundedLinear<Domain, Radon, L2, F>, { - fn step_length_bound(&self, f: &QuadraticDataTerm<F, Domain, A>) -> DynResult<F> { + fn step_length_bound(&self, f: &QuadraticDataTerm<F, Domain, A>) -> StepLengthBoundValue<F> { // TODO: direct squared calculation - Ok(f.operator().opnorm_bound(Radon, L2)?.powi(2)) + match f.operator().opnorm_bound(Radon, L2) { + Err(_) => StepLengthBoundValue::Failure, + Ok(l) => StepLengthBoundValue::LipschitzFactor(l.powi(2)), + } } }