#include <SiLinearChargeDivider.h>
Public Member Functions | |
SiChargeDivider::ionization_type | divide (const PSimHit *, const LocalVector &, double, const StripGeomDetUnit &det, CLHEP::HepRandomEngine *) |
void | setParticleDataTable (const ParticleDataTable *pdt) |
SiLinearChargeDivider (const edm::ParameterSet &conf) | |
virtual | ~SiLinearChargeDivider () |
Public Member Functions inherited from SiChargeDivider | |
virtual | ~SiChargeDivider () |
Private Member Functions | |
float | DeconvolutionShape (const PSimHit *, const StripGeomDetUnit &det) |
float | driftXPos (const Local3DPoint &pos, const LocalVector &drift, double thickness) |
void | fluctuateEloss (double const particleMass, float momentum, float eloss, float length, int NumberOfSegmentation, float elossVector[], CLHEP::HepRandomEngine *) |
float | PeakShape (const PSimHit *, const StripGeomDetUnit &det) |
float | TimeResponse (const PSimHit *hit, const StripGeomDetUnit &det) |
Private Attributes | |
const int | chargedivisionsPerStrip |
const double | cosmicShift |
const double | deltaCut |
std::unique_ptr < SiG4UniversalFluctuation > | fluctuate |
const bool | fluctuateCharge |
const bool | peakMode |
const ParticleDataTable * | theParticleDataTable |
Static Private Attributes | |
static float const | decoValues [651] |
static float const | peakValues [921] |
Additional Inherited Members | |
Public Types inherited from SiChargeDivider | |
typedef std::vector < EnergyDepositUnit > | ionization_type |
Concrete implementation of SiChargeDivider. It divides the charge on the line connecting entry and exit point of the SimTrack in the Silicon. Effects that are considered here are:
Definition at line 27 of file SiLinearChargeDivider.h.
SiLinearChargeDivider::SiLinearChargeDivider | ( | const edm::ParameterSet & | conf | ) |
Definition at line 7 of file SiLinearChargeDivider.cc.
|
virtual |
Definition at line 26 of file SiLinearChargeDivider.cc.
|
private |
Definition at line 135 of file SiLinearChargeDivider.cc.
References cosmicShift, decoValues, PSimHit::energyLoss(), PSimHit::localPosition(), mag(), GeomDet::surface(), PSimHit::tof(), Surface::toGlobal(), and x.
Referenced by TimeResponse().
|
virtual |
Implements SiChargeDivider.
Definition at line 30 of file SiLinearChargeDivider.cc.
References assert(), chargedivisionsPerStrip, driftXPos(), PSimHit::energyLoss(), PSimHit::entryPoint(), PSimHit::exitPoint(), fluctuateCharge, fluctuateEloss(), i, StripTopology::localPitch(), PSimHit::localPosition(), LogDebug, PV3DBase< T, PVType, FrameType >::mag(), PSimHit::pabs(), PSimHit::particleType(), StripGeomDetUnit::specificTopology(), theParticleDataTable, and TimeResponse().
Referenced by cuy.FindIssue::__init__().
|
inlineprivate |
Definition at line 55 of file SiLinearChargeDivider.h.
References PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by divide().
|
private |
Definition at line 95 of file SiLinearChargeDivider.cc.
References deltaCut, fluctuate, i, and cuy::ii.
Referenced by divide().
|
private |
Definition at line 127 of file SiLinearChargeDivider.cc.
References cosmicShift, PSimHit::energyLoss(), PSimHit::localPosition(), mag(), peakValues, GeomDet::surface(), PSimHit::tof(), Surface::toGlobal(), and x.
Referenced by TimeResponse().
|
inlinevirtual |
Implements SiChargeDivider.
Definition at line 40 of file SiLinearChargeDivider.h.
References theParticleDataTable.
|
inlineprivate |
Definition at line 61 of file SiLinearChargeDivider.h.
References DeconvolutionShape(), peakMode, and PeakShape().
Referenced by divide().
|
private |
Definition at line 46 of file SiLinearChargeDivider.h.
Referenced by divide().
|
private |
Definition at line 48 of file SiLinearChargeDivider.h.
Referenced by DeconvolutionShape(), and PeakShape().
|
staticprivate |
Definition at line 71 of file SiLinearChargeDivider.h.
Referenced by DeconvolutionShape().
|
private |
Definition at line 47 of file SiLinearChargeDivider.h.
Referenced by fluctuateEloss().
|
private |
Definition at line 53 of file SiLinearChargeDivider.h.
Referenced by fluctuateEloss().
|
private |
Definition at line 45 of file SiLinearChargeDivider.h.
Referenced by divide().
|
private |
Definition at line 44 of file SiLinearChargeDivider.h.
Referenced by TimeResponse().
|
staticprivate |
Definition at line 69 of file SiLinearChargeDivider.h.
Referenced by PeakShape().
|
private |
Definition at line 50 of file SiLinearChargeDivider.h.
Referenced by divide(), and setParticleDataTable().