|
MarlinTPC
1.2.0
|
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 |
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.
1.8.6