10 #ifndef GAR_READOUTSIMULATION_ElectronDriftAlg_h 11 #define GAR_READOUTSIMULATION_ElectronDriftAlg_h 15 #include "CLHEP/Random/RandGauss.h" 36 void Reset(std::vector<double> & xPos,
37 std::vector<double> & yPos,
38 std::vector<double> & zPos,
39 std::vector<double> &
time,
40 std::vector<int > &
size);
42 std::vector<double>
const&
ClusterXPos()
const {
return fClusterXPos; }
43 std::vector<double>
const&
ClusterYPos()
const {
return fClusterYPos; }
44 std::vector<double>
const&
ClusterZPos()
const {
return fClusterZPos; }
45 std::vector<double>
const&
ClusterTime()
const {
return fClusterTime; }
46 std::vector<int >
const&
ClusterSize()
const {
return fClusterSize; }
double fInverseVelocity
stored for computational convenience
double fFanoFactor
Fano factor.
std::vector< double > const & ClusterZPos() const
double fLongitudinalDiffusion
diffusion along the drift in microns/sqrt(cm)
std::vector< double > const & ClusterYPos() const
double fLongDiffConst
stored for computational convenience in sqrt(cm)
std::vector< double > const & ClusterXPos() const
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
std::vector< double > fClusterXPos
x positions of each cluster drifted
CLHEP::HepRandomEngine & fEngine
random number engine
std::vector< double > fClusterYPos
y positions of each cluster drifted
std::vector< double > fClusterTime
arrival time of each cluster drifted
double fLifetimeCorrection
electron lifetime correction in negative ms
std::vector< int > fClusterSize
size of each cluster drifted
std::vector< double > fClusterZPos
z positions of each cluster drifted
General GArSoft Utilities.
double fTransDiffConst
stored for computational convenience in sqrt(cm)
double fDriftVelocity
electron drift velocity
std::vector< double > const & ClusterTime() const
std::vector< int > const & ClusterSize() const
double fTransverseDiffusion
diffusion transverse to the drift in microns/sqrt(cm)