KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVPartition.h
Go to the documentation of this file.
1 
4 #ifndef __KVPARTITION_H
5 #define __KVPARTITION_H
6 #include "KVString.h"
7 #include "KVIntegerList.h"
8 #include "KVValues.h"
9 
30 class KVPartition : public KVIntegerList {
31 
32 protected:
33 
38 
39  void Update();
40  void init(Int_t mommax = 5);
41 
42  void add_values(Int_t val, Int_t freq);
43  Bool_t remove_values(Int_t val, Int_t freq);
44 
45 public:
46 
47  KVPartition();
48  KVPartition(Int_t mommax);
49  virtual ~KVPartition();
50 
51  void Clear(Option_t* option = "");
52  void Copy(TObject& obj) const;
53  void Print(Option_t* option = "") const;
54 
56  {
57  return fValues->GetOrdreMax();
58  }
59 
61  Int_t GetMultDiff(void) const
62  {
63  return fMult_diff;
64  }
66  {
67  return ftab_diff->fArray;
68  }
70  {
71  return ftab_diff->At(rang);
72  }
73 
76  Int_t GetMult(void) const
77  {
78  return GetNbre();
79  }
80  Int_t* GetValeurs() const
81  {
82  return ftab->fArray;
83  }
84  Int_t GetValeur(Int_t rang) const
85  {
86  return ftab->At(rang);
87  }
89  {
90  return fRegle->At(GetValeur(rang));
91  }
92 
94  Double_t GetMoment(Int_t ordre) const
95  {
96  return ((ordre <= fValues->GetOrdreMax()) ? fValues->GetValue(ordre + fValues->GetShift()) : -1);
97  }
99  {
100  return fValues->GetValue(ordre + fValues->GetShift()) / GetMoment(0);
101  }
102 
104  {
105  return GetMoment(1);
106  }
108  {
109  return GetMoment(0);
110  }
112  {
113  return GetMomentNormalise(1);
114  }
115 
116  Double_t GetZmax(Int_t rang = 0) const;
117  Double_t GetZmin(Int_t rang = 0) const;
118  Double_t GetZ1() const
119  {
120  return GetZmax(0);
121  }
122  Double_t GetZ2() const
123  {
124  return GetZmax(1);
125  }
126 
128  Bool_t RemoveAt(Int_t rang);
129 
131  {
132  return fValues;
133  }
134 
135  ClassDef(KVPartition, 1) //Permet de gerer des partitions de nombres entiers et le calcul de grandeurs associees
136 };
137 
138 #endif
int Int_t
bool Bool_t
double Double_t
const char Option_t
#define ClassDef(name, id)
Handle a list of positive integers (partition)
Definition: KVIntegerList.h:68
TArrayI * fRegle
tableau d'entiers où sont stockée l'occurence des valeurs
Definition: KVIntegerList.h:72
Int_t GetNbre() const
Handle partitions.
Definition: KVPartition.h:30
Bool_t RemoveAllValuesAt(Int_t rang)
return kTRUE if the indicated rank is occupied
Int_t GetMult(void) const
Definition: KVPartition.h:76
Int_t GetValeur(Int_t rang) const
Definition: KVPartition.h:84
Bool_t RemoveAt(Int_t rang)
return kTRUE if the indicated rank is occupied
Bool_t remove_values(Int_t val, Int_t freq)
void Clear(Option_t *option="")
Methode dérivée de KVIntegerList, Reinitialisation de l'object.
Definition: KVPartition.cpp:70
Double_t GetZtot() const
Definition: KVPartition.h:103
Int_t GetFrequenceAt(Int_t rang) const
Definition: KVPartition.h:88
void Copy(TObject &obj) const
Methode dérivée de KVIntegerList, fait une copie dans l'objet "obj".
Definition: KVPartition.cpp:90
TArrayI * ftab
tableau regroupant tous les entiers de la partition (ordre decroissant)
Definition: KVPartition.h:34
Int_t * GetValeursDiff() const
Definition: KVPartition.h:65
Double_t GetMtot() const
Definition: KVPartition.h:107
void Print(Option_t *option="") const
virtual ~KVPartition()
Destructeur.
Definition: KVPartition.cpp:56
Int_t * GetValeurs() const
Definition: KVPartition.h:80
Int_t GetMultDiff(void) const
Methodes donnant aux valeurs uniques de la partition.
Definition: KVPartition.h:61
Double_t GetZmean() const
Definition: KVPartition.h:111
Int_t GetOrdreMax() const
Definition: KVPartition.h:55
Int_t fMult_diff
Nbre de valeurs differentes.
Definition: KVPartition.h:36
Double_t GetMoment(Int_t ordre) const
Methodes donnant acces aux variables calculees de la partition.
Definition: KVPartition.h:94
Int_t GetValeurDiff(Int_t rang) const
Definition: KVPartition.h:69
void add_values(Int_t val, Int_t freq)
Double_t GetZmax(Int_t rang=0) const
Double_t GetZ2() const
Definition: KVPartition.h:122
KVValues * GetAddValues()
Definition: KVPartition.h:130
Double_t GetZ1() const
Definition: KVPartition.h:118
Double_t GetZmin(Int_t rang=0) const
TArrayI * ftab_diff
tableau regroupant tous les entiers differents de la partition (ordre decroissant)
Definition: KVPartition.h:35
KVValues * fValues
Object permettant de gerer les moments ou autre.
Definition: KVPartition.h:37
KVPartition()
Default constructor.
Definition: KVPartition.cpp:45
Double_t GetMomentNormalise(Int_t ordre) const
Definition: KVPartition.h:98
Handle Operation on variable.
Definition: KVValues.h:24
Int_t GetShift() const
Definition: KVValues.cpp:376
Double_t GetValue(Int_t idx) const
Definition: KVValues.cpp:387
Int_t GetOrdreMax() const
Definition: KVValues.cpp:356
Int_t * fArray
Int_t At(Int_t i) const