1 #ifndef CosmicMuonGenerator_h
2 #define CosmicMuonGenerator_h
10 #include <CLHEP/Random/RandomEngine.h>
11 #include <CLHEP/Random/JamesRandom.h>
14 class HepRandomEngine;
90 std::cout <<
"*********************************************************" << std::endl;
91 std::cout <<
"*********************************************************" << std::endl;
93 std::cout <<
"*** C O S M I C M U O N G E N E R A T O R (vC++) ***" << std::endl;
95 std::cout <<
"*********************************************************" << std::endl;
96 std::cout <<
"*********************************************************" << std::endl;
271 void initialize(CLHEP::HepRandomEngine *rng = 0);
const double Z[kNumberCalorimeter]
void setZDistOfTarget(double Z)
void initialize(CLHEP::HepRandomEngine *rng=0)
std::vector< double > Theta_mu
const double PlugOnShaftVz
void setMinEnu(double MinEn)
void setTIFOnly_constant(bool TIF)
std::vector< double > Px_ug
void setNuProdAlt(double NuPrdAlt)
void setZCentrOfTarget(double Z)
std::vector< double > Py_mu
void setRhoAir(double VarRhoAir)
void setRadiusOfTarget(double R)
void setNumberOfEvents(unsigned int N)
std::vector< double > Py_sf
std::vector< double > E_sf
std::vector< double > Pz_mu
std::vector< double > E_ug
std::string MultiMuonFileName
void setMultiMuonFileFirstEvent(int MultiMuFile1stEvt)
void setRhoPlug(double VarRhoPlug)
std::vector< double > Vz_ug
void setMinPhi(double Phi)
void setMaxPhi(double Phi)
const double PlugOnShaftVx
void setRandomEngine(CLHEP::HepRandomEngine *v)
std::vector< double > Vz_sf
std::vector< double > Vz_mu
std::vector< double > Vx_sf
void setMultiMuonNmin(int MultiMuNmin)
int NcloseMultiMuonEvents
std::vector< double > Vy_sf
void setMinTheta(double Theta)
CLHEP::HepRandomEngine * RanGen
std::vector< double > Vx_mu
void setMaxEnu(double MaxEn)
void setMultiMuon(bool MultiMu)
void setClayWidth(double ClayLaeyrWidth)
SingleParticleEvent OneMuoEvt
std::vector< double > Vy_mu
std::vector< double > T0_sf
std::vector< double > Px_mu
int MultiMuonFileFirstEvent
std::vector< double > Px_sf
std::vector< double > Vy_ug
void setAcptAllMu(bool AllMu)
void setPlugVz(double PlugVtz)
void setTIFOnly_linear(bool TIF)
std::vector< double > Pz_ug
void setMultiMuonFileName(std::string MultiMuonFileName)
void setMTCCHalf(bool MTCC)
int NskippedMultiMuonEvents
void setMinP_CMS(double P)
void setElossScaleFactor(double ElossScaleFact)
void setMaxTheta(double Theta)
unsigned int NumberOfEvents
void setRhoWall(double VarRhoSWall)
void setPlugVx(double PlugVtx)
volatile std::atomic< bool > shutdown_flag false
void setRhoRock(double VarRhoRock)
std::vector< double > Vx_ug
std::vector< double > P_mu
std::vector< double > Py_ug
std::vector< double > T0_ug
void setRhoClay(double VarRhoClay)
std::vector< double > Pz_sf
void setTrackerOnly(bool Tracker)