TPCGEMSimLCIO v1.00 User Manual
Author: Astrid Münnich RWTH Aachen
Contents
- Introduction
- Installation
- Downloading the TPC simulation processors
- System requirements
- Building the program
- Using TPCGEMSimLCIO
This simulation package in intended for detailed studies of a Time Projection Chamber.
It is no full detector simulation like MOKKA.
TPCGEMSimLCIO creates primary ionisation and follows each electron through the detector.
The electrons are then amplified with a GEM (Gas Electron Multiplier) structure before
they arrive on the pad plane.
For a more detailed description how this is done refer to the my PhD thesis Simulation Studies for a High
Resolution Time Projection Chamber at the International Linear Collider.
TPCGEMSimLCIO is
TPCGEMSimulation_v1.10 but based
on the data format LCIO instead of ROOT.
Each simulation step is a MARLIN processor.
For documentation on LCIO and MARLIN refer to
http://lcio.desy.de/ and http://ilcsoft.desy.de/marlin/.
- Downloading TPCGEMSimLCIO
The processors for the TPC simulation are available as tar ball:
TPCGEMSimLCIO_v1.00.tar.gz
- System requirements
- LCIO (version 1.05 or higher)
- MARLIN (version 0.9 or higher)
- dependencies for MARLIN and LCIO as instructed on the respective websites.
- gsl libraries ( tested with gsl-1.1.1-5.i386 )
- Building the program
Unpack the archive
tar -xzf TPCGEMSimLCIO_v1.00.tar.gz
Before starting the installation make sure that all necessary environmental variables are set for MARLIN and LCIO,
for example AIDAJNI_HOME, JAVA_INSTALL, LCIO, MARLIN etc.
Run the shell script that comes with Marlin if necessary.
Change in the src directory and type make.
Depending on where the gsl libraries are installed you might need to edit the
Makefile. The binary will be created in the folder bin.
- Documentation
Typing
doxygen Doxyfile
will create the documentation of the source in doc/html/.
Current documentation and user manual are also available on the homepage of the Aachen TPC group.
- Steering File
There is an example steering file called all.steer which calls all four processors
of the simulation. Newer version of MARLIN support XML steering files.
For further instructions on how to use steering files look at examples coming with MARLIN.
- PrimaryIonisation
Usage
The user has to choose an inner and outer radius of the TPC and a length, meaning the
distance between anode and cathode. The TPC will always be cylindrical.
Additionally a magnetic field has to be specified. The information
for the clustering of the primary ionisation is contained in the file
inputs/eproclusterInt.dat.
Delta rays are propagated away from the track including multiple scattering.
For low momentum particles only every tenth primary electron is stored, because these
particles can cause huge amounts of charge, since they curl within the detector volume.
If the user wishes to do a full simulation of these particles the steering parameter
full_curler can be used.
Input
The input for this processor is a collection of MCParticles.
An example for prototype studies with cosmics is given in
MuonInputs/CreateMuonsLCIO.cc where the data structure and naming
of collections can be found.
Files with input particles containing 10 events for testing are
provided for cosmics (MuonEvents_N10_R130_L260.LCIO.slcio) and PYTHIA events (PythiaEvents_N10_lcio.slcio).
Notice: The vertex of the primary particle must be inside the TPC specified by
the radius and length. Be sure to let your cosmics start at the entry point in the
detector not in some plane above.
Output
The output is a collection of SimTrackerHits, each hit representing a
primary electron.
- Drifting
Usage
The input parameters for this processor are the drift gas and the drift field.
Input
The input collection is the one of SimTrackerHits produced by PrimaryIonisation.
Output
The output has the same structure as the one from PrimaryIonisation, only now
with drifted electron coordinates in the SimTrackerHits.
Restrictions
At the moment three gas mixtures are available:
P5 (Ar/CH4 95/5)
P10 (Ar/CH4 90/10)
TDR (Ar/CH4/CO2 93/5/2)
The accuracy of the transverse diffusion can only be guaranteed up to magnetic fields
of 5 T.
- TPCPads
Usage
The user defines the pad size, their total number and arrangement
on the pad plane. Offsets can be used to specify where the pad plane is located in
the TPC relative to the center of the coordinate system
( cylinder axis of TPC, z=0 on cathode ).
A factor can be given to correct the gain for temperature or pressure differences.
The default value should be 1 meaning no corrections.
The GEM setting contains 3 Voltages for each GEM and 3 fields.
The information about the charge transfer in the GEM structure is stored in the file
inputs/*par.nocomments (*= different gas and magnetic field).
Input
The input is the collection of SimTrackerHits from Drifting.
Output
The output collections contains TrackerData in which the charge in
each time slice for every channel is stored. The time of the electrons is stored
in ns, no binning is applied yet.
Restrictions
Only rectangular, non staggered pad geometries are supported at the moment.
The charge transfer information are available for P5, P10 and TDR gas at 0 T and at 4 T only for TDR gas.
You can run the simulation for other magnetic fields using one of the
available parameterisations, but detailed studies of the GEM settings will be not accurate in that case. Also the
gain might not be correctly computed.
The number of GEMs is fixed to 3 and the distance between the GEMs is 2 mm.
Note:
All charge information is stored in number of electrons.
Only one anode is simulated, meaning that drifted electrons with z<0 are not considered here.
- TPCElectronics
Usage
The user defines the readout frequency, the rise time of the shaper,
the resolution and the dynamic range of the ADC.
The user can not choose a shaping function. The shaping is done with a Gaussian distribution.
Additionaly a threshold has to be set. With an additional factor the charge loss due to shaping affects can be included.
In case the electronics cuts of the gaussian shape an upper limit
for the integration in units of the width of the Gaussian can be
set. The default cut off should be 3 meaning an almost full
integration of the Gaussian shape.
Input
The input is the collection of TrackerData produced by TPCPads.
Output
The output is again a collection of TrackerData but now with a binning in time according to
the shaping of the electronics.This corresponds to raw data a real
TPC would provide. From this point on the reconstruction chain begins with
finding the pulses and then points and tracks.
- Additional Module: Ion Backdrift
With this module the number of ions drifting back from the amplification structure
can be calculated.
Usage
The ion backdrift module uses the information from the charge transfer parametrisation
to obtain the fraction of ions drifting back.
All other necessary information, e.g. the GEM setting is read from the
input collection of TrackerData.
Input
The input is the collection of TrackerData produced by TPCPads.
Output
The output is the number of ions located at the centre of the pad they
originated from.
They are stored as SimTrackerHits with the charge value corresponding to the
number of ions.
Please report any bugs to
muennich@physik.rwth-aachen.de