![]() |
eic-smear
1.0.3
A collection of ROOT classes for Monte Carlo events and a fast-smearing code simulating detector effects for the Electron-Ion Collider task force
|
A specialized Device class for modelling radiative losses. More...
#include <Bremsstrahlung.h>
Public Member Functions | |
Bremsstrahlung (double epsilon=0.01, double traversed=10., double radLength=47.1) | |
Bremsstrahlung (const Bremsstrahlung &) | |
virtual Bremsstrahlung * | Clone (Option_t *option="not used") const |
virtual void | Smear (const erhic::VirtualParticle &, ParticleMCS &) |
![]() | |
Device (KinType=kE, const TString &formula="0", EGenre=kAll) | |
Device (const TString &, const TString &resolution="0", EGenre=kAll) | |
Device (const Device &) | |
virtual | ~Device () |
virtual Device * | Clone (const char *="") const |
virtual void | SetDistribution (const Distributor &) |
virtual void | Print (Option_t *="") const |
![]() | |
virtual | ~Smearer () |
Protected Member Functions | |
double | dSigmadK (double *x, double *) |
int | NGamma () |
void | FixParticleKinematics (ParticleMCS &) |
void | SetParticle (const erhic::VirtualParticle &) |
bool | SetupPDF () |
![]() | |
bool | Init (const TString &, const TString &, int) |
Protected Attributes | |
std::auto_ptr< erhic::ParticleMC > | mParticle |
Copy of the current particle. | |
double | mKMin |
double | mKMax |
double | mEpsilon |
double | mTraversed |
double | mRadLength |
TF1 * | mPdf |
dSigma/dK function | |
![]() | |
KinType | mSmeared |
Smeared variable. | |
TF1 * | mKinematicFunction |
FormulaString * | mFormula |
Expression for resolution standard deviation. | |
std::vector< Smear::KinType > | mDimensions |
Distributor | mDistribution |
Random distribution. | |
Additional Inherited Members | |
![]() | |
Acceptance | Accept |
A specialized Device class for modelling radiative losses.
Definition at line 32 of file Bremsstrahlung.h.
Smear::Bremsstrahlung::Bremsstrahlung | ( | double | epsilon = 0.01 , |
double | traversed = 10. , |
||
double | radLength = 47.1 |
||
) |
Constructor. Photon energies are randomly generated in the range [epsilon, E - epsilon] for particle energy E. traversed is the distance of material through with the particle passes and radLength is the radiation length of that material (both in cm).
Definition at line 19 of file Bremsstrahlung.cxx.
Smear::Bremsstrahlung::Bremsstrahlung | ( | const Bremsstrahlung & | other | ) |
Copy constructor
Definition at line 33 of file Bremsstrahlung.cxx.
|
virtual |
Returns a pointer to a duplicate of this object.
Definition at line 96 of file Bremsstrahlung.cxx.
|
protected |
Returns dSigmga/dK at k = x[0]. The arguments have this form to interface with ROOT::TF1. The second argument is unused.
Definition at line 44 of file Bremsstrahlung.cxx.
|
protected |
Compute the number of photons emitted.
Definition at line 65 of file Bremsstrahlung.cxx.
|
protected |
Set the radiating particle type and configure the dSigma/dK function.
Definition at line 78 of file Bremsstrahlung.cxx.
|
protected |
Configure the dSigma/dK function, setting the energy range over which to generate photons. The energy range is computed from the energy of the current mParticle. If the resultant energy range is invalid (e.g. max < min) the range is not set and the function returns false.
Definition at line 53 of file Bremsstrahlung.cxx.
|
virtual |
Smear the properties of a Particle and assign them to a ParticleS.
Reimplemented from Smear::Device.
Definition at line 100 of file Bremsstrahlung.cxx.