TPCtrack.f95
Event reconstruction, tracking |
eventVeto: |
veto events if
amplitudes in veto groups (iGroupV) too high,
not enough hits in seed rows (iRow1,iRow2),
not enough hits in track rows (iRowT). |
findSeedTrack: |
find a seed track to be used
as start value for the track fit. There are two sets
of rows given (iRow1,iRow2). In each set the
pad with the highest amplitude is found. A X-Y coordinate is
determined as an amplitude weighted average of this
pad and its neighbours within the row-set. The line
connecting the coordinates in the two sets is the seed
track. |
deMultiplex: |
set the amplitudes of all pads
to -1 apart from the one pad in each group that is
closest to the seed track. |
time (Z-Y) track fits: |
TimeFit: |
perform a Z-Y track fit, 2
parameters: T(Y=0) and a slope, track rows iRowT are
used. |
TimeLine: |
equivalent to TimeFit but
faster, uses linear regression. |
TimeFitZ: |
same as TimeLine but returns
a line (Ztrack). |
Spatial (X-Y) track
fits: Overview. The seedTrack
is input and the fitted track is returned on the same
parameter. The type can be a line or a XYtrack. In
the latter case the radius is fitted too. The likelihood
is determined from a uniform line of charge with gaussian
profile or PadResponsFunction (LPRF=.TRUE.),
expected amplitudes are normalised within each row,
negative loglikelihood is minimized with MINUIT. |
TrackFitWidth: |
perform a X-Y track fit, width
is free parameter, additional parameters: X(Y=0), PHI
(and radius). |
TrackFitXY: |
perform a X-Y track fit, width
is fixed depending on drift distance z, parameters:
X(Y=0), PHI (and radius). |
TrackFitX: |
only X(Y=0) is free, the other
parameters are fixed to the values of the track given. |
ROWCHI (PRIVATE): |
likelihood for trackfit. Takes
all pads in the row into account. |
ROWCHItrunc (PRIVATE): |
likelihood for trackfit. Uses
only a given number of pads closest to the track. |
ROWCHIPRF (PRIVATE): |
chisq for trackfit. |
AERR: |
Error on amplitudes for ROWCHIPRF.
Needs parameters AERRpar be set properly. |
PRF: |
calculates the integrated charge
on a pad from Gaussian charge profile or pad response
function, takes bias into account. |
QRAT (PRIVATE): |
ratio of quartics for pad response
function.
Needs parameters TrackWidth, PRFdel, PRF be
set properly. |
TPCio.f95
input / output |
IOinitialize: |
open all files, read which
data to process (TPCfiles.txt), initialize
PAW and MINUIT, call ReadInput and ReadLayout. |
IOend: |
close all files, write histograms
and Ntuples to file. |
OPENData: |
open the data file, determine
from the extention which data format to use. |
ReadHeader: |
wrapper to read the run header
in the right format. |
ReadEvent: |
wrapper to read the event in
the right format. |
readCalibData: |
for normal runs reads
information from TPCcalib.txt, TPCpedestal.txt,
TPCgain.txt, TPCftime.txt. If files are not available
defaults are used. |
ReadInput (PRIVATE): |
read information stored in Threshold from TPCinput.txt. |
ReadLayout (PRIVATE): |
read pad layout from TPClayout.txt,
allocate arrays. |
DataFormats.f95
knows the different data formats
Write DenseData: |
WriteDenseHeader: |
write run header. |
WriteDenseData: |
write event, optionally including
additional information (array), e.g. track. |
WriteEndOfRun: |
write end of run mark. |
Read DenseData: |
OPENDense: |
open DenseData file. |
ReadDenseHeader: |
read run header. |
ReadDenseEvent: |
read event. |
MIDAS: |
OPENMIDAS: |
open MIDAS or JTPC file. |
ReadMIDASHeader: |
read run header, fills number
of time bins and number of groups. |
ReadMIDASEvent: |
read event, fill ADC spectrum
for all groups. |
LCIO: |
OPENLCIO: |
open LCIO file. |
ReadLCIOHeader: |
read comment from run header,
scan first 10 events for information on time bins. |
ReadLCIOEvent: |
read event and MCparticle if
available. |