src/run.rs

changeset 1
d4fd5f32d10e
parent 0
eb3c7813b67a
--- a/src/run.rs	Thu Dec 01 23:07:35 2022 +0200
+++ b/src/run.rs	Wed Nov 30 23:45:04 2022 +0200
@@ -67,7 +67,7 @@
 
 /// Available algorithms and their configurations
 #[derive(Copy, Clone, Debug, Serialize, Deserialize)]
-pub enum AlgorithmConfig<F : Float> {
+pub enum AlgorithmConfig<F : ClapFloat> {
     FB(FBConfig<F>),
     FW(FWConfig<F>),
     PDPS(PDPSConfig<F>),
@@ -141,7 +141,7 @@
 
 impl DefaultAlgorithm {
     /// Returns the algorithm configuration corresponding to the algorithm shorthand
-    pub fn default_config<F : Float>(&self) -> AlgorithmConfig<F> {
+    pub fn default_config<F : ClapFloat>(&self) -> AlgorithmConfig<F> {
         use DefaultAlgorithm::*;
         match *self {
             FB => AlgorithmConfig::FB(Default::default()),
@@ -159,11 +159,11 @@
     }
 
     /// Returns the [`Named`] algorithm corresponding to the algorithm shorthand
-    pub fn get_named<F : Float>(&self) -> Named<AlgorithmConfig<F>> {
+    pub fn get_named<F : ClapFloat>(&self) -> Named<AlgorithmConfig<F>> {
         self.to_named(self.default_config())
     }
 
-    pub fn to_named<F : Float>(self, alg : AlgorithmConfig<F>) -> Named<AlgorithmConfig<F>> {
+    pub fn to_named<F : ClapFloat>(self, alg : AlgorithmConfig<F>) -> Named<AlgorithmConfig<F>> {
         let name = self.to_possible_value().unwrap().get_name().to_string();
         Named{ name , data : alg }
     }
@@ -196,7 +196,7 @@
 
 #[derive(Clone, Debug, Serialize)]
 #[serde(default)]
-pub struct Configuration<F : Float> {
+pub struct Configuration<F : ClapFloat> {
     /// Algorithms to run
     pub algorithms : Vec<Named<AlgorithmConfig<F>>>,
     /// Options for algorithm step iteration (verbosity, etc.)
@@ -286,7 +286,7 @@
 /// Struct for experiment configurations
 #[derive(Debug, Clone, Serialize)]
 pub struct Experiment<F, NoiseDistr, S, K, P, const N : usize>
-where F : Float,
+where F : ClapFloat,
       [usize; N] : Serialize,
       NoiseDistr : Distribution<F>,
       S : Sensor<F, N>,
@@ -548,7 +548,7 @@
     b : &A::Observable,
     kernel_plot_width : F,
 ) -> DynError
-where F : Float + ToNalgebraRealField,
+where F : ClapFloat + ToNalgebraRealField,
       Sensor : RealMapping<F, N> + Support<F, N> + Clone,
       Spread : RealMapping<F, N> + Support<F, N> + Clone,
       Kernel : RealMapping<F, N> + Support<F, N>,

mercurial