MarlinTPC  1.2.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
marlintpc::TPCGas Class Reference

The TPCGas is a helper class containing a parametrisation of some gas mixtures It can be used by processors thet need to know drift velocity or diffusion properties Usage: create a gas with a name, set E and B field, then values are available through the get functions. More...

#include <TPCGas.h>

Public Member Functions

 TPCGas (std::string gasname)
 Constructor, gases are identified by names, e.g. "TDR","P5".
 
 ~TPCGas ()
 Destructor.
 
void SetEField (double EField)
 Set the electric field, if field is changed call the CalculateGasParameters method again to obtain new values.
 
double GetEField ()
 
void SetBField (double BField)
 Set the magnetic field, if field is changed call the CalculateGasParameters method again to obtain new values.
 
double GetBField ()
 
double GetDriftVelocity ()
 returns the drift velocity in [mm/us]
 
double GetTransverseDiffusion ()
 returns transverse diffusion in [um/sqrt(cm)]
 
double GetLongitudinalDiffusion ()
 returns longitudinal diffusion in [um/sqrt(cm)]
 
double GetAttachment (double EField, double dist)
 calculate attachment over a given distance in cm
 
void CalculateGasParameters ()
 After name, E and B field are set call this function to calcuate the gas parameters.
 
std::string GetGasName ()
 

Protected Member Functions

void CalculateTransverseDiffusion ()
 
double EvaluateEFieldDependence (double a, double b, double c, double d, double e, double f, double g, double h, double i, double j, double k)
 used for v drift and diffusion and all gases, just the parameters change
 
double EvaluateBFieldDependence (double a, double b, double c, double d, double e, double f)
 used for transverse diffusion dependence on magnetic field
 
void initTDRGas ()
 
void initP5Gas ()
 
void initP10Gas ()
 
void initT2KGas ()
 

Protected Attributes

double _BField
 
double _EField
 
double _vdrift
 
double _diffLong
 
double _diffTrans
 
double _attachment
 
double _dL_params [11]
 container for the parametrisation of longitudinal diffusion
 
double _vd_params [11]
 container for the parametrisation of drift velocity
 
double _dT_params [10][6]
 container for the parametrisation of transverse diffusion
 
double _att [7]
 container for parametrisation of attachment
 
std::string _gasName
 

Detailed Description

The TPCGas is a helper class containing a parametrisation of some gas mixtures It can be used by processors thet need to know drift velocity or diffusion properties Usage: create a gas with a name, set E and B field, then values are available through the get functions.

Author
Astrid Muennich

The documentation for this class was generated from the following files: