List of all members | Public Member Functions | Public Attributes | Private Attributes
CachedShowerRegeneratorOG::LogGaussSmearing Class Reference

#include <LogGaussSmearing.h>

Public Member Functions

 LogGaussSmearing (const double width, utl::RandomEngine::RandomEngineType *const engine)
 

Public Attributes

double const
 

Private Attributes

utl::RandomEngine::RandomEngineType
*const 
fRandomEngine
 
const double fWidth
 

Detailed Description

Implementation of log-normal time smearing for shower resampling

Author
Darko Veberic
Date
11 Sep 2008

Definition at line 25 of file CachedShowerRegeneratorOG/LogGaussSmearing.h.

Constructor & Destructor Documentation

CachedShowerRegeneratorOG::LogGaussSmearing::LogGaussSmearing ( const double  width,
utl::RandomEngine::RandomEngineType *const  engine 
)
inline

Definition at line 27 of file CachedShowerRegeneratorOG/LogGaussSmearing.h.

Member Data Documentation

double CachedShowerRegeneratorOG::LogGaussSmearing::const
Initial value:
{
if (particleTime > planeFrontTime) {
const double fact = exp(fWidth * CLHEP::RandGauss::shoot(fRandomEngine));
return planeFrontTime * (1 - fact) + particleTime * fact;
}
return particleTime

The new difference between the particle time and the plane-front time gets multiplied by a factor lying between 0 and infinity but mostly around 1 (with certain width). The new particle thus never overtakes the plane front but gets smeared around its original time with the plane-front time as a hard limit and log-normal tail towards later times.

Definition at line 40 of file CachedShowerRegeneratorOG/LogGaussSmearing.h.

utl::RandomEngine::RandomEngineType* const CachedShowerRegeneratorOG::LogGaussSmearing::fRandomEngine
private

Definition at line 51 of file CachedShowerRegeneratorOG/LogGaussSmearing.h.

const double CachedShowerRegeneratorOG::LogGaussSmearing::fWidth
private

Definition at line 50 of file CachedShowerRegeneratorOG/LogGaussSmearing.h.


The documentation for this class was generated from the following file:

, generated on Tue Sep 26 2023.