KaliVeda
Toolkit for HIC analysis
KVElasticScatter.h
1 /*
2 $Id: KVElasticScatter.h,v 1.6 2007/04/04 10:39:17 ebonnet Exp $
3 $Revision: 1.6 $
4 $Date: 2007/04/04 10:39:17 $
5 */
6 
9 
10 #ifndef __KVELASTICSCATTER_H
11 #define __KVELASTICSCATTER_H
12 
13 #include "TVector3.h"
14 #include "KVNameValueList.h"
15 #include "KVNucleus.h"
16 
17 class TH1F;
18 class TList;
19 class KVGroup;
20 class KVDetector;
21 class KVTarget;
22 class KV2Body;
23 class TObjArray;
24 
96 
99 
101 
102  KVDetector* fDetector;
107 
110 
112 
115 
116 public:
117 
120 
121  void SetRun(Int_t run);
122  void SetProjectile(Int_t Z, Int_t A);
123  void SetEnergy(Double_t E);
124  void SetTargetScatteringLayer(const Char_t* name);
128  void SetEbinning(Int_t nbins = 500);
129  void SetDetector(const Char_t* det);
130  void CalculateScattering(Int_t N);
136  {
137  fExx = ex;
138  };
139 
142  {
143  return fDepth;
144  };
147  {
148  return GetEnergy(fNDets - 1);
149  };
152  {
153  return fTheta;
154  };
155  TH1F* GetEnergy(const Char_t* type);
156  TH1F* GetEnergy(Int_t index);
158  Int_t GetNDets() const
159  {
160  return fNDets;
161  };
164  {
165  return fBinE;
166  };
167 
168  ClassDef(KVElasticScatter, 1) //Calculate elastic scattering spectra in multidetector arrays
169 };
170 
171 #endif
int Int_t
bool Bool_t
char Char_t
double Double_t
#define ClassDef(name, id)
Relativistic binary kinematics calculator.
Definition: KV2Body.h:166
Calculate elastic scattering spectra in multidetector arrays.
void SetDetector(const Char_t *det)
Set name of detector which will detect particle.
Double_t fEnergy
energy of projectile
Int_t fNDets
number of aligned detectors
virtual ~ KVElasticScatter()
void SetTargetExcitedState(Double_t ex)
KVElasticScatter()
Default constructor.
Int_t fIntLayer
index of interaction layer in multilayer target
Double_t fExx
excited state of target nucleus
TH1F * fDepth
depth of scattering point in target
TList * fAlignedDetectors
all aligned detectors
TVector3 fBeamDirection
beam direction vector
KVDetector * fDetector
detector where particle will be detected
KVNameValueList * fDetInd
detector type-index association
TH1F * GetEnergy()
Return pointer to energy loss histogram for chosen detector (in MeV)
void CalculateScattering(Int_t N)
Int_t GetNDets() const
Returns the number of detectors crossed by the scattered particle.
void SetEbinning(Int_t nbins=500)
void SetProjectile(Int_t Z, Int_t A)
Set projectile Z and A.
void SetRun(Int_t run)
Set detector parameters, target, etc. for run.
Bool_t fMultiLayer
kTRUE for multilayer target
void SetTargetScatteringLayer(const Char_t *name)
Int_t fBinE
Number of bins of the Energy histogram.
Int_t GetEbinning(void)
Returns the number of bins of the GetEnergy histogram.
KV2Body * fKinematics
kinematics calculation
TH1F * fTheta
angle of scattered particle
TH1F * GetDepth()
Return pointer to histogram of 'depth' of scattering point in target (in mg/cm2)
void SetEnergy(Double_t E)
Set energy of projectile in MeV.
KVTarget * fTarget
target for current run
TObjArray * fHistos
energy loss histograms for all hit detectors
KVNucleus fProj
scattered nucleus
TH1F * GetTheta()
Return pointer to polar angle distribution of scattered particle (in degrees)
Group of detectors which can be treated independently of all others in array.
Definition: KVGroup.h:19
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
Description of properties and kinematics of atomic nuclei.
Definition: KVNucleus.h:123
Calculation/correction of energy losses of particles through an experimental target.
Definition: KVTarget.h:128
Double_t ex[n]