KaliVeda
Toolkit for HIC analysis
KVRiso.cpp
1 #include "KVRiso.h"
2 
4 
5 
6 
8 void KVRiso::init()
9 {
10  Riso = -1;
11  Epar = 0.;
12  Etrans = 0.;
13  Mult = 0;
14  SetNameIndex("Riso", 0);
15  SetNameIndex("Epar", 1);
16  SetNameIndex("Eperp", 2);
17  SetNameIndex("Mult", 3);
18 }
19 
20 
21 
23 
24 void KVRiso::Copy(TObject& a) const
25 {
27  ((KVRiso&) a).Riso = Riso;
28  ((KVRiso&) a).Epar = Epar;
29  ((KVRiso&) a).Etrans = Etrans;
30  ((KVRiso&) a).Mult = Mult;
31 }
32 
33 
34 
39 
41 {
42  //Calculation of isotropy ratio from sums of parallel and
43  //transverse energies
44  //Limit to 100
45 
46  if (TMath::Abs(Epar) > 0) {
47  Riso = TMath::Min(100., Etrans / (2. * Epar));
48  }
49  else Riso = -1;
50 }
51 
52 
53 
64 
66 {
67 //
68 // Retourne la valeur suivant l'indice
69 //
70 // Index Meaning
71 //--------------------------------------------------------
72 // 0 (default) Riso
73 // 1 Sum of parallel kinetic energies
74 // 2 Sum of transverse kinetic energies
75 // 3 Number of nuclei included in calculation
76  switch (i) {
77  case 0:
78  return Riso;
79  break;
80  case 1:
81  return Epar;
82  break;
83  case 2:
84  return Etrans;
85  break;
86  case 3:
87  return Mult;
88  break;
89  default:
90  Warning("GetValue(Int_t i)", "Index %d not valid. Riso returned.", i);
91  return Riso;
92  break;
93  }
94 }
95 
96 
97 
99 
100 void KVRiso::fill(const KVNucleus* c)
101 {
102  Double_t ep = c->GetKE();
103  Double_t et = c->GetEtran();
104  Epar += (ep - et);
105  Etrans += et;
106  ++Mult;
107 }
108 
109 
int Int_t
#define c(i)
double Double_t
Description of properties and kinematics of atomic nuclei.
Definition: KVNucleus.h:126
Energy isotropy ratio .
Definition: KVRiso.h:38
Double_t getvalue_int(Int_t) const
Definition: KVRiso.cpp:65
Double_t Epar
Definition: KVRiso.h:41
void Copy(TObject &obj) const
Definition: KVRiso.cpp:24
Int_t Mult
Definition: KVRiso.h:43
void Calculate()
Definition: KVRiso.cpp:40
Double_t Riso
Definition: KVRiso.h:40
Double_t Etrans
Definition: KVRiso.h:42
void fill(const KVNucleus *)
Definition: KVRiso.cpp:100
void Copy(TObject &obj) const
Definition: KVVarGlob.h:346
virtual void Warning(const char *method, const char *msgfmt,...) const
DisplacementVector3D< CoordSystem, U > Mult(const Matrix &m, const DisplacementVector3D< CoordSystem, U > &v)
Double_t Min(Double_t a, Double_t b)
Double_t Abs(Double_t d)
TArc a
ClassImp(TPyArg)