MaCh3  2.8.0
Reference Guide
SpecialProposals.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <memory>
4 #include <string>
5 #include <vector>
6 
7 #include "Manager/Core.h"
8 
10 #include "TF1.h"
12 
17  std::vector<int> argument_indices;
18  std::vector<std::string> argument_names;
19  std::string formula;
20  std::unique_ptr<TF1> evaluator;
21 
25 
27  FunctionalFlipProposal& operator=(const FunctionalFlipProposal&) = delete;
28 };
29 
34  std::string group_name;
35  YAML::Node config;
36 };
37 
38 
42 struct FlipGroup {
44  std::vector<int> FlipParameterIndex;
46  std::vector<double> FlipParameterPoint;
48  std::vector<FunctionalFlipProposal> FunctionalFlipParameters;
49 };
KS: Core MaCh3 definitions and compile-time configuration utilities.
#define _noexcept_
KS: noexcept can help with performance but is terrible for debugging, this is meant to help easy way ...
Definition: Core.h:96
#define _MaCh3_Safe_Include_Start_
KS: Avoiding warning checking for headers.
Definition: Core.h:126
#define _MaCh3_Safe_Include_End_
constexpr static const int _BAD_INT_
Default value used for int initialisation.
Definition: Core.h:55
Struct to hold information about a group of parameters that flip together at the same time.
std::vector< int > FlipParameterIndex
Indices of parameters with flip symmetry.
std::vector< double > FlipParameterPoint
Central points around which parameters are flipped.
std::vector< FunctionalFlipProposal > FunctionalFlipParameters
Formula-driven flips that should be applied when this group flips.
Configuration for a formula-based functional flip.
std::vector< int > argument_indices
std::vector< std::string > argument_names
std::unique_ptr< TF1 > evaluator
FunctionalFlipProposal(FunctionalFlipProposal &&) _noexcept_=default
FunctionalFlipProposal()=default
Configuration for a pending functional flip awaiting all parameters to be initialised.