Coincidence_Gen Class Reference

Ratpac-two: RAT::Coincidence_Gen Class Reference
Ratpac-two
RAT::Coincidence_Gen Class Reference

#include <Coincidence_Gen.hh>

Inheritance diagram for RAT::Coincidence_Gen:
GLG4Gen

Public Member Functions

virtual void GenerateEvent (G4Event *event)
 
virtual void ResetTime (double offset=0.0)
 
virtual bool IsRepeatable () const
 
virtual void SetState (G4String state)
 
virtual G4String GetState () const
 
virtual void SetTimeWindow (double window)
 
virtual double GetTimeWindow () const
 
virtual void SetEnergyRange (G4String newValues)
 
virtual double LoEnergyLimit () const
 
virtual double HiEnergyLimit () const
 
virtual void SetTimeState (G4String state)
 
virtual G4String GetTimeState () const
 
virtual void SetPosState (G4String state)
 
virtual G4String GetPosState () const
 
virtual void SetVertexState (G4String state)
 
virtual G4String GetVertexState () const
 
virtual void AddExtra (G4String state)
 
virtual G4String GetExtraState (int nint) const
 
virtual int GetNExtra () const
 
virtual void SetExtraPosState (G4String state)
 
virtual G4String GetExtraPosState (int nint) const
 
virtual void SetExtraVertexState (G4String state)
 
virtual G4String GetExtraVertexState (int nint) const
 
virtual void SetExponentials (G4String state)
 
virtual void SetExpoForceWindow (G4bool state)
 
- Public Member Functions inherited from GLG4Gen
virtual double NextTime () const
 
virtual void SubtractTime (double time)
 

Protected Attributes

G4String stateStr
 
int _maxExtra
 
G4String stateStrExtra [5]
 
GLG4TimeGentimeGen
 
GLG4VertexGenvertexGen
 
GLG4VertexGenvertexGenExtra [5]
 
GLG4PosGenposGen
 
GLG4PosGenposGenExtra [5]
 
double fTimeWindow
 
bool _exptiming
 
bool _expTimingTimeWindow
 
bool _expTimingTimeWindowForce
 
double fExponent [5]
 
int nExtra
 
double fLoEnergy
 
double fHiEnergy
 
CoincidenceMessengermessenger
 
- Protected Attributes inherited from GLG4Gen
double nextTime
 

Detailed Description

Top Level Event Producer - coincidences of different interactions separated in time and space in same event

Author
Jeanne Wilson j.wil.nosp@m.son2.nosp@m.@phys.nosp@m.ics..nosp@m.ox.ac.nosp@m..uk

first version : 16-July-2008

This generator simulates 2 different decays at different positions and different times in the same specified event window. It can be used for the purposes of studying pile-up as it will efficiently produce a sample in which each event is a coincidence. There is also the option of restricting the events generated to those with summed primary particle energy in a given range.

Member Function Documentation

◆ AddExtra()

void RAT::Coincidence_Gen::AddExtra ( G4String  state)
virtual

add an extra interaction

◆ GetExtraPosState()

G4String RAT::Coincidence_Gen::GetExtraPosState ( int  nint) const
virtual

get name of position generator for extra interaction, nint

◆ GetExtraState()

G4String RAT::Coincidence_Gen::GetExtraState ( int  nint) const
virtual

return state of added interation nint

◆ GetExtraVertexState()

G4String RAT::Coincidence_Gen::GetExtraVertexState ( int  nint) const
virtual

get name of vertex generator for extra interaction nint

◆ GetNExtra()

virtual int RAT::Coincidence_Gen::GetNExtra ( ) const
inlinevirtual

return how many extra states have been added

◆ SetEnergyRange()

void RAT::Coincidence_Gen::SetEnergyRange ( G4String  newValues)
virtual

restriction on total (generated) energy of pair

◆ SetExponentials()

void RAT::Coincidence_Gen::SetExponentials ( G4String  state)
virtual

Set exponential time constants to separate decays. Default is to give each vertex a random time in the event window but if this option is called the user must set a time constant, T, for each added vertex. First vertex is at t = 0, the rest have times selected from exponentials exp(-t/T) each exponential applies to the time since last vertex

◆ SetExtraPosState()

void RAT::Coincidence_Gen::SetExtraPosState ( G4String  state)
virtual

set position generator for most recently added extra interaction

◆ SetExtraVertexState()

void RAT::Coincidence_Gen::SetExtraVertexState ( G4String  state)
virtual

set vertex generator for most recently added extra interaction

◆ SetPosState()

void RAT::Coincidence_Gen::SetPosState ( G4String  state)
virtual

position generator for base interaction

Reimplemented from GLG4Gen.

◆ SetState()

void RAT::Coincidence_Gen::SetState ( G4String  state)
virtual

Basic state - first interaction type and position

Implements GLG4Gen.

◆ SetTimeState()

void RAT::Coincidence_Gen::SetTimeState ( G4String  state)
virtual

Overall time state - time from one coincidence event to next

Reimplemented from GLG4Gen.

◆ SetTimeWindow()

virtual void RAT::Coincidence_Gen::SetTimeWindow ( double  window)
inlinevirtual

time window over which 2 events considered coincident

◆ SetVertexState()

void RAT::Coincidence_Gen::SetVertexState ( G4String  state)
virtual

vertex generator for base interaction

Reimplemented from GLG4Gen.

Member Data Documentation

◆ _exptiming

bool RAT::Coincidence_Gen::_exptiming
protected

choose exponential timing structure (either all vertices have random times, or all are given decay constants

◆ _maxExtra

int RAT::Coincidence_Gen::_maxExtra
protected

limit the maximum number of extra generators to 5 Additional generators

◆ fExponent

double RAT::Coincidence_Gen::fExponent[5]
protected

the value of an exponential decay factor for subsequent decays - default is zero, only used if set

◆ fLoEnergy

double RAT::Coincidence_Gen::fLoEnergy
protected

the range restrictions on the total energy generated for the total event

◆ fTimeWindow

double RAT::Coincidence_Gen::fTimeWindow
protected

the length of the time window for coincidences

◆ messenger

CoincidenceMessenger* RAT::Coincidence_Gen::messenger
protected

Allows the user to change parameters via the command line.

◆ nExtra

int RAT::Coincidence_Gen::nExtra
protected

the number of extra interations

◆ posGen

GLG4PosGen* RAT::Coincidence_Gen::posGen
protected

The initial position generator

◆ posGenExtra

GLG4PosGen* RAT::Coincidence_Gen::posGenExtra[5]
protected

The additional position generators

◆ stateStr

G4String RAT::Coincidence_Gen::stateStr
protected

Generator initialization, specified by the user

◆ timeGen

GLG4TimeGen* RAT::Coincidence_Gen::timeGen
protected

The overall time generator - time from one double event to next

◆ vertexGen

GLG4VertexGen* RAT::Coincidence_Gen::vertexGen
protected

The initial vertex generator

◆ vertexGenExtra

GLG4VertexGen* RAT::Coincidence_Gen::vertexGenExtra[5]
protected

The additional vertex generators


The documentation for this class was generated from the following files:
  • /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/gen/include/RAT/Coincidence_Gen.hh
  • /home/docs/checkouts/readthedocs.org/user_builds/ratpac/checkouts/latest/src/gen/src/Coincidence_Gen.cc