KaliVeda
Toolkit for HIC analysis
KVBreakUp.h
1 
4 #ifndef __KVBREAKUP_H
5 #define __KVBREAKUP_H
6 
7 #include "TRandom.h"
8 #include "KVNumberList.h"
9 #include "TH1F.h"
10 #include "TCanvas.h"
11 #include "TROOT.h"
12 #include "KVHashList.h"
13 #include "KVString.h"
14 #include "TTree.h"
15 #include "TH2F.h"
16 #include "TProfile.h"
17 #include "KVIntegerList.h"
18 #include "KVPartitionList.h"
19 #include "KVTemplateEvent.h"
20 #include "TDatime.h"
21 #include <cstdlib>
22 #include "Riostream.h"
23 
24 class KVEvent;
25 
66 class KVBreakUp: public KVPartitionList {
67 
68 protected:
69 
75 
77 
84 
88 
93 
94  enum {
95  kStorePartitions = BIT(14), //Variables has to be recalculated
96  };
97 
98  void init();
99  void SetZtot(Int_t zt);
100  void SetMtot(Int_t mt);
101  void SetZmin(Int_t zlim);
102  void SetBreakUpMethod(KVString bup_method);
103 
104  void Start();
105  void Stop();
106 
107 public:
108 
110 
119 
120  KVBreakUp(Int_t taille_max = 1000);
121  virtual ~KVBreakUp();
122  void Clear(Option_t* = "");
123  void LinkEvent(KVEvent*);
125  void SetConditions(Int_t zt, Int_t mt, Int_t zmin = 1);
126  void DefineBreakUpMethod(KVString bup_method = "");
127  void StorePartitions(Bool_t choix = kTRUE);
128  virtual void DefineHistos();
129 
130  Int_t GetZtot(void) const;
131  Int_t GetMtot(void) const;
132  Int_t GetZmin(void) const;
133  KVString GetBreakUpMethod(void) const;
134 
135  virtual void TreatePartition();
136 
137  void BreakNtimes(Int_t times = 1000);
138  void BreakNtimesOnGaussian(Int_t times, Double_t Ztot_moy, Double_t Ztot_rms, Double_t Mtot_moy, Double_t Mtot_rms, Int_t zmin = 1);
139  void BreakFromHisto(TH2F* hh_zt_VS_mt, Int_t zmin = 1);
140 
141  KVEvent* BreakOnGaussian(Double_t Ztot_moy, Double_t Ztot_rms, Double_t Mtot_moy, Double_t Mtot_rms, Int_t zmin);
143 
144  virtual void DrawPanel();
145 
149 
150  virtual void ResetTotalIterations();
151  virtual void ResetHistos();
152 
153  virtual void SaveHistos(KVString filename = "", KVString suff = "", Option_t* option = "recreate");
154 
155  void PrintConfig() const;
157 
158 
159  ClassDef(KVBreakUp, 1) //Exemple de differentes facons de casser un entier en plusieurs autres entiers, avec comme principales contraintes la charge totale et le nombre de clusters
160 };
161 
162 #endif
int Int_t
bool Bool_t
double Double_t
const char Option_t
#define ClassDef(name, id)
#define BIT(n)
Permet de casser aleatoirement un nombre entier (ztot) en un nombre (mtot) d'entiers plus petits d'un...
Definition: KVBreakUp.h:66
void BreakFromHisto(TH2F *hh_zt_VS_mt, Int_t zmin=1)
Definition: KVBreakUp.cpp:763
Int_t Ztotal
Definition: KVBreakUp.h:70
virtual void SaveHistos(KVString filename="", KVString suff="", Option_t *option="recreate")
Definition: KVBreakUp.cpp:927
Int_t * size
[size_max]->
Definition: KVBreakUp.h:81
Int_t GetTotalIterations(void)
Definition: KVBreakUp.cpp:825
KVString BreakUpMethod
Definition: KVBreakUp.h:74
KVEvent * current_event
Definition: KVBreakUp.h:92
Int_t GetDeltaTime()
Definition: KVBreakUp.cpp:1014
virtual void DrawPanel()
Definition: KVBreakUp.cpp:891
KVEvent * BreakOnGaussian(Double_t Ztot_moy, Double_t Ztot_rms, Double_t Mtot_moy, Double_t Mtot_rms, Int_t zmin)
Definition: KVBreakUp.cpp:714
Int_t Mtotal
Definition: KVBreakUp.h:71
Int_t tstop
Definition: KVBreakUp.h:83
TH1F * hzt
Definition: KVBreakUp.h:86
Int_t tellapsed
Definition: KVBreakUp.h:83
virtual void ResetHistos()
Met a zero le contenu des histogrammes.
Definition: KVBreakUp.cpp:878
void DefineBreakUpMethod(KVString bup_method="")
Definition: KVBreakUp.cpp:244
virtual void TreatePartition()
Definition: KVBreakUp.cpp:559
Int_t GetZtot(void) const
Retourne le nombre entier a casser.
Definition: KVBreakUp.cpp:267
TH1F * hzz
Definition: KVBreakUp.h:85
void Clear(Option_t *="")
Definition: KVBreakUp.cpp:102
Int_t BreakUsingChain()
Definition: KVBreakUp.cpp:329
Int_t BreakUsingLine()
Definition: KVBreakUp.cpp:392
KVHashList * GetObjects()
Retourne la liste d'objects autres ...
Definition: KVBreakUp.cpp:854
virtual ~KVBreakUp()
Destructeur.
Definition: KVBreakUp.cpp:79
TH1F * hmt
Definition: KVBreakUp.h:87
KVIntegerList * partition
Definition: KVBreakUp.h:91
void init()
Definition: KVBreakUp.cpp:20
void SetZmin(Int_t zlim)
Protected method.
Definition: KVBreakUp.cpp:171
KVString GetBreakUpMethod(void) const
Retourne methode de cassure.
Definition: KVBreakUp.cpp:303
Int_t BreakUsingPile()
Methode de cassure.
Definition: KVBreakUp.cpp:521
void Stop()
Definition: KVBreakUp.cpp:998
Int_t nbre_nuc
Definition: KVBreakUp.h:79
Int_t BreakUsingIndividual()
Definition: KVBreakUp.cpp:456
KVHashList * lhisto
Definition: KVBreakUp.h:90
void Start()
Definition: KVBreakUp.cpp:983
TRandom * alea
Definition: KVBreakUp.h:76
void StorePartitions(Bool_t choix=kTRUE)
si choix=kTRUE, on enregistre les partitions
Definition: KVBreakUp.cpp:315
void LinkEvent(KVEvent *)
Definition: KVBreakUp.cpp:196
void BreakNtimes(Int_t times=1000)
Definition: KVBreakUp.cpp:611
KVNumberList nl
Definition: KVBreakUp.h:78
KVEvent * GetCurrentEvent()
Definition: KVBreakUp.cpp:594
void PrintConfig() const
Definition: KVBreakUp.cpp:961
void BreakNtimesOnGaussian(Int_t times, Double_t Ztot_moy, Double_t Ztot_rms, Double_t Mtot_moy, Double_t Mtot_rms, Int_t zmin=1)
Definition: KVBreakUp.cpp:658
KVBreakUp(Int_t taille_max=1000)
Definition: KVBreakUp.cpp:63
void SetZtot(Int_t zt)
Protected method.
Definition: KVBreakUp.cpp:137
Int_t Zmin
Definition: KVBreakUp.h:72
Int_t GetZmin(void) const
Retourne la taille minimale des entiers apres cassure.
Definition: KVBreakUp.cpp:291
KVHashList * GetHistos()
Definition: KVBreakUp.cpp:840
void SetConditions(Int_t zt, Int_t mt, Int_t zmin=1)
Definition: KVBreakUp.cpp:229
Int_t tstart
Definition: KVBreakUp.h:83
void RedefineTRandom(KVString TRandom_Method)
Definition: KVBreakUp.cpp:211
@ kStorePartitions
Definition: KVBreakUp.h:95
Int_t nraffine
Definition: KVBreakUp.h:109
Int_t size_max
Definition: KVBreakUp.h:80
Int_t niter_tot
Definition: KVBreakUp.h:82
KVHashList * lobjects
Definition: KVBreakUp.h:89
KVString TRandom_Method
Definition: KVBreakUp.h:74
virtual void ResetTotalIterations()
Comme c'est ىcrit.
Definition: KVBreakUp.cpp:866
Int_t * bound
[Ztotal] tableau permettant de gérer les cassures de liens
Definition: KVBreakUp.h:73
Int_t GetMtot(void) const
Retourne le nombre d'entiers apres cassure (la multiplicite)
Definition: KVBreakUp.cpp:279
virtual void DefineHistos()
Definition: KVBreakUp.cpp:120
void SetMtot(Int_t mt)
Protected method.
Definition: KVBreakUp.cpp:155
void SetBreakUpMethod(KVString bup_method)
Protected method.
Definition: KVBreakUp.cpp:185
Abstract base class container for multi-particle events.
Definition: KVEvent.h:67
Extended version of ROOT THashList.
Definition: KVHashList.h:29
Handle a list of positive integers (partition)
Definition: KVIntegerList.h:69
Strings used to represent a set of ranges of values.
Definition: KVNumberList.h:85
Manage a list of partitions.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....
Definition: KVString.h:73