KaliVeda  1.13/01
Heavy-Ion Analysis Toolkit
KVElasticScatter.h
Go to the documentation of this file.
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 KVTelescope;
21 class KVDetector;
22 class KVTarget;
23 class KV2Body;
24 class TObjArray;
25 
96 
99 
101 
108 
111 
113 
116 
117 public:
118 
121 
122  void SetRun(Int_t run);
123  void SetProjectile(Int_t Z, Int_t A);
124  void SetEnergy(Double_t E);
125  void SetTargetScatteringLayer(const Char_t* name);
129  void SetEbinning(Int_t nbins = 500);
130  void SetDetector(const Char_t* det);
131  void CalculateScattering(Int_t N);
137  {
138  fExx = ex;
139  };
140 
143  {
144  return fDepth;
145  };
148  {
149  return GetEnergy(fNDets - 1);
150  };
153  {
154  return fTheta;
155  };
156  TH1F* GetEnergy(const Char_t* type);
157  TH1F* GetEnergy(Int_t index);
159  Int_t GetNDets() const
160  {
161  return fNDets;
162  };
165  {
166  return fBinE;
167  };
168 
169  ClassDef(KVElasticScatter, 1) //Calculate elastic scattering spectra in multidetector arrays
170 };
171 
172 #endif
int Int_t
char Char_t
bool Bool_t
double Double_t
#define ClassDef(name, id)
Relativistic binary kinematics calculator.
Definition: KV2Body.h:165
Base class for detector geometry description.
Definition: KVDetector.h:159
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
KVTelescope * fTelescope
telescope where particle will be detected
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:125
Calculation/correction of energy losses of particles through an experimental target.
Definition: KVTarget.h:126
Associates two detectors placed one behind the other.
Definition: KVTelescope.h:35
Double_t ex[n]