1 #include "CLHEP/Vector/ThreeVector.h" 21 #include "cetlib_except/exception.h" 92 float x,
float y,
float z){
100 double dEdx = (ds<=0.0)? 0.0: e/ds;
104 if(dEdx < 1.) dEdx = 1.;
110 double Xi =
fModBoxB * dEdx / EFieldStep;
129 <<
" MeV deposited with " << recomb
146 LOG_DEBUG(
"ISCalcSeparate") <<
"scintillating by particle type";
207 double EField = efield;
virtual bool EnableSimEfieldSCE() const =0
Store parameters for running LArG4.
double fNumScintPhotons
number of scintillation photons for this step
const detinfo::LArProperties * fLArProp
void Initialize(const detinfo::LArProperties *larp, const detinfo::DetectorProperties *detp, const sim::LArG4Parameters *lgp, const spacecharge::SpaceCharge *sce)
virtual double AlphaScintYield(bool prescale=false) const =0
geo::Length_t StepLength() const
geo::Vector_t fEfieldOffsets
void CalculateIonizationAndScintillation(sim::SimEnergyDeposit const &edep)
double fModBoxA
from LArG4Parameters service
bool UseModBoxRecomb() const
double fRecombk
from LArG4Parameters service
double fEnergyDeposit
total energy deposited in the step
const sim::LArG4Parameters * fLArG4Prop
virtual double ProtonScintYield(bool prescale=false) const =0
const detinfo::DetectorProperties * fDetProp
void CalculateIonization(float e, float ds, float x, float y, float z)
virtual double Temperature() const =0
void CalculateScintillation(float e, int pdg)
double fNumIonElectrons
number of ionization electrons for this step
double fRecombA
from LArG4Parameters service
virtual double ElectronScintYield(bool prescale=false) const =0
virtual double PionScintYield(bool prescale=false) const =0
virtual double Density(double temperature) const =0
Returns argon density at a given temperature.
virtual ~ISCalcSeparate()
geo::Length_t MidPointX() const
geo::Length_t MidPointY() const
double fScintYieldFactor
scintillation yield factor
virtual geo::Vector_t GetEfieldOffsets(geo::Point_t const &point) const =0
const spacecharge::SpaceCharge * fSCE
virtual double MuonScintYield(bool prescale=false) const =0
virtual double KaonScintYield(bool prescale=false) const =0
contains information for a single step in the detector simulation
geo::Length_t MidPointZ() const
virtual double ScintYield(bool prescale=false) const =0
double fGeVToElectrons
from LArG4Parameters service
double fModBoxB
from LArG4Parameters service
virtual double Efield(unsigned int planegap=0) const =0
Returns the nominal electric field in the specified volume.
virtual bool ScintByParticleType() const =0
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double >, ROOT::Math::GlobalCoordinateSystemTag > Point_t
Type for representation of position in physical 3D space.
double GeVToElectrons() const
double EFieldAtStep(double efield, sim::SimEnergyDeposit const &edep)
bool fUseModBoxRecomb
from LArG4Parameters service