|
MarlinTPC
1.2.0
|
Processor to create primary ionisation from MCParticles passing the TPC. More...
#include <PrimaryIonisationProcessor.h>
Public Member Functions | |
| virtual Processor * | newProcessor () |
| virtual void | init () |
| Called at the begin of the job before anything is read. | |
| virtual void | processRunHeader (lcio::LCRunHeader *run) |
| Called for every run. | |
| virtual void | processEvent (lcio::LCEvent *evt) |
| Called for every event - the working horse. | |
| virtual void | SetParticleParameters (lcio::MCParticle *mcparticle) |
| virtual void | InitializeTrackPoint () |
| virtual void | CalculateNumberOfElectrons () |
| virtual void | CalculateNumberOfClusters () |
| virtual void | ReadEPerClusterInfoFile () |
| virtual void | ReadClusterDensityFile () |
| virtual void | CalculateTrackPointwithBfield () |
| virtual void | CalculateTrackPointwithoutBfield () |
| int | GetTotalNumberOfElectrons () |
| virtual void | CalculateClusterDistance () |
| virtual void | CalculateEnergyLoss () |
| virtual void | RotateToTrack (double x, double y, double z) |
| virtual void | RotateToDelta (double x, double y, double z) |
| virtual void | MultipleScattering (double phi, double theta) |
| virtual void | SetNextStartPoint () |
Protected Attributes | |
| std::string | _inputCollectionName |
| Name of input collection. | |
| std::string | _outputCollectionName |
| Name of output collection. | |
| std::string | clusterdensityfile |
| File with parametrisation of cluster density. | |
| std::string | eperclusterfile |
| File with parametrisation of electrons per cluster. | |
| int | _nRun |
| int | _nEvt |
| float | _TPCRadius |
| Outer radius of the TPC. | |
| float | _TPCInnerRadius |
| Inner radius of the TPC. | |
| float | _BField |
| Magnetic field strength. | |
| float | _distance |
| int | _transient |
| bool | _groupElectrons |
| int | Curler |
| For full simulation of Curler set to 0, otherwise standard 1 means simplified treatment of low momentum particles. | |
| double | aheed [8] |
| Fitparameters for calculation of # clusters from Parameterisation from HEED. More... | |
| int | numberofelectrons |
| double | numberofclusters |
| double | clusterdistance |
| std::vector< double > | clusterelectrons [2] |
| For calculation of # electrons per cluster from Parameterisation from HEED. | |
| double | _clusterprobcutoff |
| int | InTPC |
| double | xa |
| double | ya |
| double | za |
| double | xv |
| double | yv |
| double | zv |
| double | xend |
| double | yend |
| double | zend |
| double | tend |
| double | x_e |
| double | y_e |
| double | z_e |
| double | t_e |
| double | dx |
| double | dy |
| double | dz |
| double | dr |
| double | dp |
| double | px |
| double | py |
| double | pz |
| double | pt |
| double | p |
| double | p_const |
| double | energy |
| double | mass |
| double | charge |
| int | pdg |
| double | delta_x |
| double | delta_y |
| double | delta_z |
Processor to create primary ionisation from MCParticles passing the TPC.
Collection of MCParticles
Collection of SimTrackerHits
| InputCollectionName | Name of input collection, MCParticles |
| OutputCollectionName | Name of output collection, SimTrackerHits |
| Transient | If not 0 the output collection is set transient |
| OutputType | If not 0 all ions in the TPC are returned |
| FullCurler | Switch detailed treatment of curlers on or off |
| ClusterInfo | Path to file containing information on ionisation clusters (#e- in cluster) |
| ClusterProbCutoff | (optional) For ClusterInfo file: set this to a value (very) slightly smaller than where the integrated probability is cut off |
| ClusterDensityFile | (optional) Use user-defined file with heed parametrisation of the cluster density |
| GroupElectrons | Flag whether to group electrons at the same position to a single hit, default: false WARNING: Turning on the GroupElectrons flag currently breaks the default digitisation chain (DriftProcessor and GEMProcessor). It only works with the MokkaToVoxelProcessor. |
|
virtual |
distributes number of electrons randomly along track segment.
Referenced by processEvent().
|
virtual |
|
virtual |
Determines number of electrons on track segment using parametrisation obtained with HEED.
References clusterelectrons.
Referenced by processEvent().
|
virtual |
|
virtual |
Calculates end point of track segment without magnetic field.
References dx, px, xa, and xend.
Referenced by processEvent().
|
virtual |
Calculates parameters for helix like radius, so tracks can be curled if magnetic field is present.
Referenced by processEvent().
|
virtual |
|
virtual |
Rotation for delta rays.
Referenced by MultipleScattering().
|
virtual |
|
virtual |
Reads in values from generator particle needed for track, like vertex, energy, momentum etc.
Referenced by processEvent().
|
protected |
Fitparameters for calculation of # clusters from Parameterisation from HEED.
Random generator for landau and gaussian.
Referenced by init().
|
protected |
Scale factor for radius in case of dE/dx.
Referenced by CalculateEnergyLoss(), CalculateTrackPointwithBfield(), init(), and processEvent().
|
protected |
Length of track segment.
Referenced by CalculateTrackPointwithoutBfield(), and init().
|
protected |
#e- in one event
Referenced by init(), and processEvent().
|
protected |
Particle impulses.
Referenced by CalculateTrackPointwithBfield(), CalculateTrackPointwithoutBfield(), init(), processEvent(), RotateToTrack(), and SetParticleParameters().
|
protected |
e- coordinate on track segment.
|
protected |
Start point of track segment.
Referenced by CalculateTrackPointwithBfield(), CalculateTrackPointwithoutBfield(), init(), and InitializeTrackPoint().
|
protected |
End point of track segment.
Referenced by CalculateTrackPointwithBfield(), CalculateTrackPointwithoutBfield(), init(), InitializeTrackPoint(), and processEvent().
|
protected |
Vertex of particle.
Referenced by init(), processEvent(), and SetParticleParameters().
1.8.6