gambit is hosted by Hepforge, IPPP Durham
GAMBIT  v1.5.0-2191-ga4742ac
a Global And Modular Bsm Inference Tool
ColliderBit_types.hpp
Go to the documentation of this file.
1 // GAMBIT: Global and Modular BSM Inference Tool
2 // *********************************************
34 
35 
36 #ifndef __ColliderBit_types_hpp__
37 #define __ColliderBit_types_hpp__
38 
39 #include <vector>
40 #include <chrono>
41 
47 #include "gambit/ColliderBit/colliders/Pythia8/Py8Collider_typedefs.hpp"
51 
58 //#include "gambit/ColliderBit/limits/L3SmallDeltaMGauginoLimits.hpp"
59 
60 #include "HEPUtils/Event.h"
61 
62 namespace Gambit
63 {
64 
65  namespace ColliderBit
66  {
67 
69  typedef std::vector<AnalysisData> AnalysisNumbers;
70  typedef std::vector<const AnalysisData*> AnalysisDataPointers;
71 
74  {
75  std::map<std::string,int> sr_indices; // Signed indices so that we can use negative values for special cases
76  std::map<std::string,double> sr_loglikes;
77 
78  std::string combination_sr_label;
81 
83  combination_sr_label("undefined"),
84  combination_sr_index(-2),
85  combination_loglike(0.0)
86  { }
87  };
88 
90  typedef std::map<std::string,AnalysisLogLikes> map_str_AnalysisLogLikes;
91 
93  typedef std::vector<AnalysisContainer> AnalysisContainers;
94 
95  typedef std::chrono::milliseconds ms;
98  typedef std::map<std::string,double> timer_map_type;
99 
101  typedef std::pair<std::string,SLHAstruct> pair_str_SLHAstruct;
102 
104  // Note:
105  // The 'iipair' name below refers to the typedef std::pair<int,int> iipair
106  // declared in Utils/include/gambit/Utils/util_types.hpp
107 
108  typedef std::vector<std::pair<int,int>> vec_iipair;
109  typedef std::vector<PID_pair> vec_PID_pair;
110 
111  typedef std::multimap<int,std::pair<int,int>> multimap_int_iipair;
112  typedef std::multimap<int,PID_pair> multimap_int_PID_pair;
113 
114  typedef std::multimap<PID_pair,int> multimap_PID_pair_int;
115 
116  typedef std::map<int,xsec_container> map_int_xsec;
117  typedef std::map<int,process_xsec_container> map_int_process_xsec;
118 
119  typedef std::map<std::pair<int,int>,PID_pair_xsec_container> map_iipair_PID_pair_xsec;
120  typedef std::map<PID_pair,PID_pair_xsec_container> map_PID_pair_PID_pair_xsec;
121 
123  typedef HEPUtils::Event HEPUtils_Event; // Extra typedef to avoid macro problem with namespaces
124  typedef std::function<void(HEPUtils_Event&, const BaseCollider*)> EventWeighterFunctionType;
125  }
126 }
127 
128 
129 
130 #endif /* defined __ColliderBit_types_hpp__ */
std::map< int, xsec_container > map_int_xsec
std::map< std::string, AnalysisLogLikes > map_str_AnalysisLogLikes
Typedef for a string-to-AnalysisLogLikes map.
std::map< PID_pair, PID_pair_xsec_container > map_PID_pair_PID_pair_xsec
std::map< std::string, int > sr_indices
AnalysisData and SignalRegion structures.
std::chrono::steady_clock::time_point tp
std::pair< std::string, SLHAstruct > pair_str_SLHAstruct
Typedef for a str-SLHAstruct pair, to pass around SLHA filenames + content.
Container for loglike information for an analysis.
A class for holding the production cross-section for final state identified by the pair of PID codes...
Definition: xsec.hpp:195
std::vector< std::pair< int, int > > vec_iipair
Typedefs related to cross-sections.
std::vector< AnalysisContainer > AnalysisContainers
Container for multiple analysis containers.
std::multimap< int, std::pair< int, int > > multimap_int_iipair
std::chrono::time_point< std::chrono::system_clock > time_point
Definition: logging.hpp:46
The Py8Collider class.
std::multimap< int, PID_pair > multimap_int_PID_pair
std::multimap< PID_pair, int > multimap_PID_pair_int
std::map< std::string, double > timer_map_type
std::chrono::steady_clock steady_clock
std::map< std::string, double > sr_loglikes
std::chrono::milliseconds ms
ColliderBit (production) cross-section class.
Type for holding event loop information.
Class for holding ColliderBit analyses.
std::map< int, process_xsec_container > map_int_process_xsec
ColliderBit Monte Carlo convergence routines.
HEPUtils::Event HEPUtils_Event
Typedef for a std::function that sets the weight for the input HEPUtils::Event.
Simple class for holding a sorted pair of particle ID (PID) codes.
std::vector< AnalysisData > AnalysisNumbers
Container for data from multiple analyses and SRs.
BuckFast simple smearing detector sim.
std::vector< const AnalysisData * > AnalysisDataPointers
std::map< std::pair< int, int >, PID_pair_xsec_container > map_iipair_PID_pair_xsec
std::function< void(HEPUtils_Event &, const BaseCollider *)> EventWeighterFunctionType
TODO: see if we can use this one:
Definition: Analysis.hpp:33
std::vector< PID_pair > vec_PID_pair