ROOT logo
AliRoot » PWGCF » FEMTOSCOPY » ALIFEMTO » AliFemtoCoulomb

class AliFemtoCoulomb


AliFemtoCoulomb: This is a Coulomb correction class which
1. Reads in the dat from a file
2. Performs a linear interpolation in R and creates any array of
interpolations
3. Interpolates in eta and returns the Coulomb correction to user


Function Members (Methods)

public:
AliFemtoCoulomb()
AliFemtoCoulomb(const AliFemtoCoulomb& aCoul)
AliFemtoCoulomb(const char* readFile, const double& radius, const double& charge)
virtual~AliFemtoCoulomb()
TH1D*CorrectionHistogram(const double& mass1, const double& mass2, const int& nBins, const double& low, const double& high)
doubleCoulombCorrect(const double& eta)
doubleCoulombCorrect(const AliFemtoPair* pair)
doubleCoulombCorrect(const double& eta, const double& radius)
doubleCoulombCorrect(const AliFemtoPair* pair, const double& radius)
doubleCoulombCorrect(const double& mass, const double& charge, const double& radius, const double& qInv)
doubleGetRadius() const
AliFemtoCoulomb&operator=(const AliFemtoCoulomb& aCoul)
voidSetChargeProduct(const double& charge)
voidSetFile(const char* readFile)
voidSetRadius(const double& radius)
private:
voidCreateLookupTable(const double& radius)
doubleEta(const AliFemtoPair* pair)

Data Members

private:
doublefCoulomb[1000]interpolated Coulomb correction table
doublefEta[1000]interpolated Coulomb correction table
const char*fFileFile to interpolate corrections from
intfNLinesNumber of Eta's in lookup-table
doublefRadiusRadius from previous iteration
doublefZ1Z2Charge product of particles

Class Charts

Inheritance Chart:
AliFemtoCoulomb

Function documentation

AliFemtoCoulomb()
 Default constructor
AliFemtoCoulomb(const AliFemtoCoulomb& aCoul)
 copy constructor
AliFemtoCoulomb(const char* readFile, const double& radius, const double& charge)
 constructor with explicit filename
~AliFemtoCoulomb()
 destructor
AliFemtoCoulomb& operator=(const AliFemtoCoulomb& aCoul)
 assignment operator
void SetRadius(const double& radius)
 set the coulomb radius
double GetRadius() const
 return coulomb radius
void SetFile(const char* readFile)
 set the filename with coulomb calculations
void SetChargeProduct(const double& charge)
 set pair charge
void CreateLookupTable(const double& radius)
 Read radii from fFile
 Create array(pair) of linear interpolation between radii
double CoulombCorrect(const double& eta)
 Interpolates in eta
double CoulombCorrect(const double& eta, const double& radius)
 Checks radii ... input radius and fRadius
 Calls createLookupTable if neccessary
 Interpolate(linear) between etas in the created lookup table
double CoulombCorrect(const AliFemtoPair* pair)
double CoulombCorrect(const AliFemtoPair* pair, const double& radius)
double Eta(const AliFemtoPair* pair)
 calculate eta
TH1D* CorrectionHistogram(const double& mass1, const double& mass2, const int& nBins, const double& low, const double& high)
 return correction histogram
double CoulombCorrect(const double& mass, const double& charge, const double& radius, const double& qInv)
 return correction factor