src/experiments.rs

changeset 88
51dbb2cc25d9
parent 72
e9a460a0e638
equal deleted inserted replaced
87:7b5404283df0 88:51dbb2cc25d9
1 /*! 1 /*!
2 Experimental setups. 2 Experimental setups.
3 */ 3 */
4 4
5 //use numeric_literals::replace_float_literals; 5 use clap::{Parser, ValueEnum};
6 use crate::kernels::SupportProductFirst as Prod; 6 use serde::{Deserialize, Serialize};
7 use crate::kernels::*; 7 use itertools::Itertools;
8 use crate::run::{DefaultAlgorithm, ExperimentBiased, ExperimentV2, Named, RunnableExperiment}; 8 use serde_with::skip_serializing_none;
9 use crate::types::*; 9
10 use crate::{AlgorithmOverrides, ExperimentSetup};
11 use alg_tools::bisection_tree::*; 10 use alg_tools::bisection_tree::*;
12 use alg_tools::error::DynResult; 11 use alg_tools::error::DynResult;
13 use alg_tools::norms::Linfinity; 12 use alg_tools::norms::Linfinity;
14 use clap::{Parser, ValueEnum};
15 use serde::{Deserialize, Serialize};
16 use std::collections::hash_map::DefaultHasher; 13 use std::collections::hash_map::DefaultHasher;
17 use std::collections::HashMap; 14 use std::collections::HashMap;
18 use std::hash::{Hash, Hasher}; 15 use std::hash::{Hash, Hasher};
19 //use crate::fb::InsertionConfig; 16 //use pointsource_algs::fb::InsertionConfig;
20 use crate::rand_distr::{SaltAndPepper, SerializableNormal};
21 use crate::regularisation::Regularisation;
22 use alg_tools::euclidean::Euclidean; 17 use alg_tools::euclidean::Euclidean;
23 use alg_tools::instance::Instance; 18 use alg_tools::instance::Instance;
24 use alg_tools::mapping::Mapping; 19 use alg_tools::mapping::Mapping;
25 use alg_tools::operator_arithmetic::{MappingSum, Weighted}; 20 use alg_tools::operator_arithmetic::{MappingSum, Weighted};
26 use itertools::Itertools; 21
27 use serde_with::skip_serializing_none; 22 use pointsource_algs::kernels::SupportProductFirst as Prod;
23 use pointsource_algs::kernels::*;
24 use pointsource_algs::run::{DefaultAlgorithm, ExperimentBiased, ExperimentV2, Named, RunnableExperiment};
25 use pointsource_algs::types::*;
26 use pointsource_algs::{AlgorithmOverrides, ExperimentSetup};
27 use pointsource_algs::rand_distr::{SaltAndPepper, SerializableNormal};
28 use pointsource_algs::regularisation::Regularisation;
28 29
29 /// Experiments shorthands, to be used with the command line parser 30 /// Experiments shorthands, to be used with the command line parser
30 #[derive(ValueEnum, Debug, Copy, Clone, Eq, PartialEq, Hash, Serialize, Deserialize)] 31 #[derive(ValueEnum, Debug, Copy, Clone, Eq, PartialEq, Hash, Serialize, Deserialize)]
31 #[allow(non_camel_case_types)] 32 #[allow(non_camel_case_types)]
32 pub enum DefaultExperiment { 33 pub enum DefaultExperiment {

mercurial