| 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 { |