File indexing completed on 2025-04-19 09:09:41
0001 #ifndef Analysis_Observables_MI_Observables_H
0002 #define Analysis_Observables_MI_Observables_H
0003
0004 #include "AddOns/Analysis/Observables/Normalized_Observable.H"
0005
0006 namespace ANALYSIS {
0007
0008 class MI_Statistics: public Primitive_Observable_Base {
0009 private:
0010
0011 std::vector<ATOOLS::Histogram*> m_scales;
0012
0013 public:
0014
0015 MI_Statistics(const size_t scales,const std::string &listname,int mode=0);
0016 ~MI_Statistics();
0017
0018 void Evaluate(const ATOOLS::Blob_List &blobs,double weight=1.,double ncount=1);
0019 void EndEvaluation(double scale=1.0);
0020 void Restore(double scale=1.0);
0021 void Output(const std::string & pname);
0022
0023 Primitive_Observable_Base &operator+=(const Primitive_Observable_Base &obs);
0024 Primitive_Observable_Base *Copy() const;
0025
0026 };
0027
0028 class Multiplicity_vs_JetPT: public Normalized_Observable {
0029 private:
0030
0031 std::string m_jetlist;
0032
0033 public:
0034
0035 Multiplicity_vs_JetPT(const int type,
0036 const double ptmin,const double ptmax,
0037 const int nbins,const std::string &jetlist,
0038 const std::string &listname);
0039
0040 void Evaluate(const ATOOLS::Particle_List &particlelist,
0041 double weight=1.,double ncount=1);
0042
0043 Primitive_Observable_Base *Copy() const;
0044
0045 };
0046
0047 class Scalar_PT_Sum_vs_JetPT: public Normalized_Observable {
0048 private:
0049
0050 std::string m_jetlist;
0051
0052 public:
0053
0054 Scalar_PT_Sum_vs_JetPT(const int type,
0055 const double ptmin,const double ptmax,
0056 const int nbins,const std::string &jetlist,
0057 const std::string &listname);
0058
0059 void Evaluate(const ATOOLS::Particle_List &particlelist,
0060 double weight=1.,double ncount=1);
0061
0062 Primitive_Observable_Base *Copy() const;
0063
0064 };
0065
0066 class Scalar_PT_Sum_vs_JetET: public Normalized_Observable {
0067 private:
0068
0069 std::string m_jetlist;
0070
0071 public:
0072
0073 Scalar_PT_Sum_vs_JetET(const int type,
0074 const double ptmin,const double ptmax,
0075 const int nbins,const std::string &jetlist,
0076 const std::string &listname);
0077
0078 void Evaluate(const ATOOLS::Particle_List &particlelist,
0079 double weight=1.,double ncount=1);
0080
0081 Primitive_Observable_Base *Copy() const;
0082
0083 };
0084
0085 class Multiplicity_vs_PT: public Normalized_Observable {
0086 private:
0087
0088 std::string m_jetlist;
0089
0090 public:
0091
0092 Multiplicity_vs_PT(const int type,
0093 const double ptmin,const double ptmax,
0094 const int nbins,const std::string &jetlist,
0095 const std::string &listname);
0096
0097 void Evaluate(const ATOOLS::Particle_List &particlelist,
0098 double weight=1.,double ncount=1);
0099
0100 Primitive_Observable_Base *Copy() const;
0101
0102 };
0103
0104 class Multiplicity_vs_DPhi: public Normalized_Observable {
0105 private:
0106
0107 std::vector<std::string> m_jetlists;
0108
0109 double m_offset;
0110
0111 public:
0112
0113 Multiplicity_vs_DPhi(const int type,
0114 const double dphimin,const double dphimax,
0115 const int nbins,const double offset,
0116 const std::vector<std::string> &jetlists,
0117 const std::string &listname);
0118
0119 void Evaluate(const ATOOLS::Particle_List &particlelist,
0120 double weight=1.,double ncount=1);
0121
0122 Primitive_Observable_Base *Copy() const;
0123
0124 };
0125
0126 class Scalar_PT_Sum_vs_DPhi: public Normalized_Observable {
0127 private:
0128
0129 std::vector<std::string> m_jetlists;
0130
0131 double m_offset;
0132
0133 public:
0134
0135 Scalar_PT_Sum_vs_DPhi(const int type,
0136 const double dphimin,const double dphimax,
0137 const int nbins,const double offset,
0138 const std::vector<std::string> &jetlists,
0139 const std::string &listname);
0140
0141 void Evaluate(const ATOOLS::Particle_List &particlelist,
0142 double weight=1.,double ncount=1);
0143
0144 Primitive_Observable_Base *Copy() const;
0145
0146 };
0147
0148 class Scalar_ET_Sum_vs_DPhi: public Normalized_Observable {
0149 private:
0150
0151 std::vector<std::string> m_jetlists;
0152
0153 double m_offset;
0154
0155 public:
0156
0157 Scalar_ET_Sum_vs_DPhi(const int type,
0158 const double dphimin,const double dphimax,
0159 const int nbins,const double offset,
0160 const std::vector<std::string> &jetlists,
0161 const std::string &listname);
0162
0163 void Evaluate(const ATOOLS::Particle_List &particlelist,
0164 double weight=1.,double ncount=1);
0165
0166 Primitive_Observable_Base *Copy() const;
0167
0168 };
0169
0170 class Multiplicity_vs_DEta: public Normalized_Observable {
0171 private:
0172
0173 std::string m_jetlist;
0174 double m_offset;
0175
0176 public:
0177
0178 Multiplicity_vs_DEta(const int type,
0179 const double dphimin,const double dphimax,
0180 const int nbins,const double offset,
0181 const std::vector<std::string> &jetlists,
0182 const std::string &listname);
0183
0184 void Evaluate(const ATOOLS::Particle_List &particlelist,
0185 double weight=1.,double ncount=1);
0186
0187 Primitive_Observable_Base *Copy() const;
0188
0189 };
0190
0191 class Scalar_PT_Sum_vs_DEta: public Normalized_Observable {
0192 private:
0193
0194 std::string m_jetlist;
0195 double m_offset;
0196
0197 public:
0198
0199 Scalar_PT_Sum_vs_DEta(const int type,
0200 const double dphimin,const double dphimax,
0201 const int nbins,const double offset,
0202 const std::vector<std::string> &jetlists,
0203 const std::string &listname);
0204
0205 void Evaluate(const ATOOLS::Particle_List &particlelist,
0206 double weight=1.,double ncount=1);
0207
0208 Primitive_Observable_Base *Copy() const;
0209
0210 };
0211
0212 class Scalar_ET_Sum_vs_DEta: public Normalized_Observable {
0213 private:
0214
0215 std::string m_jetlist;
0216 double m_offset;
0217
0218 public:
0219
0220 Scalar_ET_Sum_vs_DEta(const int type,
0221 const double dphimin,const double dphimax,
0222 const int nbins,const double offset,
0223 const std::vector<std::string> &jetlists,
0224 const std::string &listname);
0225
0226 void Evaluate(const ATOOLS::Particle_List &particlelist,
0227 double weight=1.,double ncount=1);
0228
0229 Primitive_Observable_Base *Copy() const;
0230
0231 };
0232
0233 class Multiplicity_vs_Eta: public Normalized_Observable {
0234 private:
0235
0236 std::string m_jetlist;
0237
0238 public:
0239
0240 Multiplicity_vs_Eta(const int type,
0241 const double ptmin,const double ptmax,
0242 const int nbins,const std::string &jetlist,
0243 const std::string &listname);
0244
0245 void Evaluate(const ATOOLS::Particle_List &particlelist,
0246 double weight=1.,double ncount=1);
0247
0248 Primitive_Observable_Base *Copy() const;
0249
0250 };
0251
0252 class Scalar_PT_Sum_vs_Eta: public Normalized_Observable {
0253 private:
0254
0255 std::string m_jetlist;
0256
0257 public:
0258
0259 Scalar_PT_Sum_vs_Eta(const int type,
0260 const double ptmin,const double ptmax,
0261 const int nbins,const std::string &jetlist,
0262 const std::string &listname);
0263
0264 void Evaluate(const ATOOLS::Particle_List &particlelist,
0265 double weight=1.,double ncount=1);
0266
0267 Primitive_Observable_Base *Copy() const;
0268
0269 };
0270
0271 class Scalar_ET_Sum_vs_Eta: public Normalized_Observable {
0272 private:
0273
0274 std::string m_jetlist;
0275
0276 public:
0277
0278 Scalar_ET_Sum_vs_Eta(const int type,
0279 const double ptmin,const double ptmax,
0280 const int nbins,const std::string &jetlist,
0281 const std::string &listname);
0282
0283 void Evaluate(const ATOOLS::Particle_List &particlelist,
0284 double weight=1.,double ncount=1);
0285
0286 Primitive_Observable_Base *Copy() const;
0287
0288 };
0289
0290 class MIScale_vs_JetPT: public Normalized_Observable {
0291 private:
0292
0293 std::string m_jetlist;
0294
0295 public:
0296
0297 MIScale_vs_JetPT(const int type,
0298 const double ptmin,const double ptmax,
0299 const int nbins,const std::string &jetlist,
0300 const std::string &listname);
0301
0302 void Evaluate(const ATOOLS::Blob_List & blobs,double value,double ncount);
0303
0304 Primitive_Observable_Base *Copy() const;
0305
0306 };
0307
0308 }
0309
0310 #endif