MarlinTPC  1.2.0
Public Member Functions | Protected Attributes | List of all members
marlintpc::MokkaToVoxelProcessor Class Reference

The MokkaToVoxelProcessor is a fast digitisation processor. More...

#include <MokkaToVoxelProcessor.h>

Inheritance diagram for marlintpc::MokkaToVoxelProcessor:

Public Member Functions

virtual Processor * newProcessor ()
 
 MokkaToVoxelProcessor ()
 C'tor.
 
virtual ~MokkaToVoxelProcessor ()
 D'tor.
 
virtual void init ()
 Called at the begin of the job before anything is read. More...
 
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 check (lcio::LCEvent *evt)
 
virtual void end ()
 Called after data processing for clean up.
 

Protected Attributes

std::string _inputCollectionName
 Name of input collection.
 
std::string _outputCollectionName
 Name of output collection.
 
std::string _negativeOutputCollectionName
 Name of output collection for the negative half TPC.
 
std::string _conditionsColName
 Name of collection with conditions data.
 
marlintpc::VoxelTPC_MokkaHitsInVoxelTPC_positive
 
marlintpc::VoxelTPC_MokkaHitsInVoxelTPC_negative
 
gear::PadRowLayout2D const * _padLayout
 
int _transient
 If not 0 output collection is set transient.
 
double _ionisationEnergy
 Ionisation energy of the gas.
 
double _readoutFrequency
 Frequency of the readout electronics.
 
double _amplification
 Total amplification of primary electrons.
 
double _diffTrans
 Transversal diffusion coefficient, comes from TPCConditions or as processor parameter.
 
double _diffLong
 Longitudinal diffusion coefficient, comes from TPCConditions or as processor parameter.
 
double _defocusTrans
 Transversal defocussing, comes from TPCConditions or as processor parameter.
 
double _vDrift
 Electron drift velocity, comes from TPCConditions or as processor parameter.
 
double _sigmaElectronics
 Charge broadening due to electronics shaping, which is assumed to be Gaussian.
 
double _zAnode
 The z position of the anode (edge of the readout terminating the drift volume)
 

Detailed Description

The MokkaToVoxelProcessor is a fast digitisation processor.

It takes hits from Mokka simulations for input and does the whole digitisation in the TPC in one step. The energy deposition of the Mokka hit is transformed into the corresponding charge. The charge is then multiplied by a user given amplification factor. The broadening of the amplified charges is calculated from transverse diffusion and transverse defocussing. The time binning of the TPCVoxels is done by the frequency of the readout electronics. The broadening of the charge in longitudinal direction is done by the longitudinal diffusion and width of the electronics shaping, which is assumed to be gaussian. No event overlay is done.

Input - Prerequisites

Output

A collection of TPCVoxel which contain charges detected on the corresponding pad at the corresponding time

Parameters
InputCollectionNameName of input SimTrackerHit collection (default: MokkaHits)
OutputCollectionNameName of output TPCVoxel collection (default: MokkaHitsInVoxels)
TPCConditionsCollectionName of the input collection containing the TPC conditions data (default: TPCConditions::getDefaultColName())
TransientIf not 0 the output collection is set transient (default: 0)
ReadoutFrequencyFrequency of readout electronics in [MHz] (default: 40)
AmplificationTotal amplification factor of primary electrons (default: 1)
IonisationEnergyMean ionisation energy of the chambers gas in [GeV] (default: 26E-9 (argon))
SigmaElectronicsWidth of the electronics shaping, which is assumed to be gaussian (default: 0)
Author
Thorsten Krautscheid, University of Bonn
Martin Killenberg, CERN

Member Function Documentation

void marlintpc::MokkaToVoxelProcessor::init ( )
virtual

Called at the begin of the job before anything is read.

Use to initialize the processor, e.g. book histograms.

References _readoutFrequency, and _zAnode.


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