--- a/src/pdps.rs Thu Dec 01 23:07:35 2022 +0200 +++ b/src/pdps.rs Wed Nov 30 23:45:04 2022 +0200 @@ -107,7 +107,7 @@ /// Settings for [`pointsource_pdps`]. #[derive(Clone, Copy, Eq, PartialEq, Serialize, Deserialize, Debug)] #[serde(default)] -pub struct PDPSConfig<F : Float> { +pub struct PDPSConfig<F : ClapFloat> { /// Primal step length scaling. We must have `τ0 * σ0 < 1`. pub τ0 : F, /// Dual step length scaling. We must have `τ0 * σ0 < 1`. @@ -119,7 +119,7 @@ } #[replace_float_literals(F::cast_from(literal))] -impl<F : Float> Default for PDPSConfig<F> { +impl<F : ClapFloat> Default for PDPSConfig<F> { fn default() -> Self { let τ0 = 0.5; PDPSConfig { @@ -311,7 +311,7 @@ plotter : SeqPlotter<F, N>, dataterm : D, ) -> DiscreteMeasure<Loc<F, N>, F> -where F : Float + ToNalgebraRealField, +where F : ClapFloat + ToNalgebraRealField, I : AlgIteratorFactory<IterInfo<F, N>>, for<'b> &'b A::Observable : std::ops::Neg<Output=A::Observable> + std::ops::Add<A::Observable, Output=A::Observable>,