1 #ifndef MU_END_CSC_GAS_COLLISIONS_H
2 #define MU_END_CSC_GAS_COLLISIONS_H
24 class HepRandomEngine;
37 CLHEP::HepRandomEngine *);
50 float lnEnergyLoss(
float,
const std::vector<float> &)
const;
51 double generateStep(
double avCollisions, CLHEP::HepRandomEngine *)
const;
55 const std::vector<float> &collisions,
56 CLHEP::HepRandomEngine *)
const;
60 void writeSummary(
int n_try,
int n_steps,
double sum_steps,
float dedx,
const PSimHit &simhit)
const;
HepPDT::ParticleDataTable ParticleDataTable
bool saveGasCollisions(void) const
static const int N_ENERGY
CSCGasCollisions(const edm::ParameterSet &pset)
std::vector< float > theGammaBins
float lnEnergyLoss(float, const std::vector< float > &) const
bool dumpGasCollisions(void) const
const ParticleDataTable * theParticleDataTable
static const int MAX_STEPS
void setParticleDataTable(const ParticleDataTable *pdt)
void ionize(double energyTransferred, LocalPoint startHere) const
static const int N_ENTRIES
void writeSummary(int n_try, int n_steps, double sum_steps, float dedx, const PSimHit &simhit) const
void readCollisionTable()
std::vector< float > theCollisionTable
double generateStep(double avCollisions, CLHEP::HepRandomEngine *) const
std::vector< float > theEnergyBins
float generateEnergyLoss(double avCollisions, double anmin, double anmax, const std::vector< float > &collisions, CLHEP::HepRandomEngine *) const
void fillCollisionsForThisGamma(float, std::vector< float > &) const
CSCCrossGap * theCrossGap
void simulate(const PSimHit &, std::vector< LocalPoint > &clusters, std::vector< int > &electrons, CLHEP::HepRandomEngine *)
virtual ~CSCGasCollisions()