Commit a2d7794a authored by Simon Spannagel's avatar Simon Spannagel
Browse files

Merge branch 'objectsDoc' into 'master'

Documenting the objects

Closes #117

See merge request !350
parents b06375c2 cf2a976c
Pipeline #2259750 passed with stages
in 20 minutes and 3 seconds
......@@ -135,7 +135,7 @@ IF(LATEX_COMPILER)
......@@ -248,3 +248,4 @@ The origin along the z-axis is fixed by the placement of the detectors in the ge
There are several kinds of detectors with different local coordinate system, e.g., Cartesian coordinate for pixel detector and polar coordinate for some specific strip detectors. For this reason, the \textsl{Detector} class is designed as an interface, the detector with a specific coordinate system will be generated according to the parameter in the detector configuration file. In the current version, the Cartesian coordinate is the only available one.
For the local Cartesian coordinate system, it is right-handed with the x- and y-axes defining the sensor plane. The origin of this coordinate system is the center of the lower left pixel in the grid, i.e.\ the pixel with indices (0,0). This simplifies calculations in the local coordinate system as all positions can either be stated in absolute numbers or in fractions of the pixel pitch.
\texttt{Corryvreckan::Objects} are used to transfer data from and to the clipboard as well as to store it to \textit{root trees}.
\texttt{Objects} are inheriting from \texttt{ROOT::TObject} to automatically create the \texttt{trees} structure required to write and read the objects.
Dedicated modules, see \ref{sec:module_files} are provided to write/read objects.
Three base object types exist within \corry : \pixel, \cluster, \track.
A \track contains several \cluster, which can be connected to a particles
trajectory with different TrackModels.
A \cluster is a collection of hits, that has an additional center of gravity
which is used as cluster position.
In addition several specific TrackModel objects inheriting from Track and a
Spidr-signal are provided. The latter is required to read in data from the
SPIDR timepix3 readout system and described in \cite{vanderHeijden:2275140}.
A \pixel contains the basic information of a particle hit from a detector. A column, row position and a time-stamp in nanoseconds as well as a charge information and a raw information is stored. Not every detector can provide all information. If the time-stamp is not provided it should be set to zero. Charge is assumed to be in eV per default, but can be overwritten by using the raw information, which can, for example, be an ADC value or a ToT. If this is also not provided/unknown it should be set to 1.
A \cluster is a collection of several \pixel. These \pixel are typically
neighbors in space and close in time, but can be also arbitrary
defined. Every \cluster has a center that is used in \track to reconstruct a trajectory.
A \track holds a collection of \cluster. Additionally, the track positions on
each detector plane defined in the geometry are provided. At any z-position, the
corresponding x/y position can be requested after the track has been fitted
with the track models listed below. After fitting, each track model also holds
a $\chi^2$ defining the quality of the fitted trajectory.
A straight line track ignores the effect of multiple scattering and describes
the particles path as a straight line. Hit uncertainties are taken into account.
The $\chi^2$ is defined by the resolution weighted sum of residuals $r_p$ in global coordinates:
\chi^2 = \sum_{p=0}^{N} {\frac{r_{p_x}}{\sigma_{p_x}}}^{2} + {\frac{r_{p_y}}{\sigma_{p_y}}}^{2}
\subsubsection*{General Broken Lines}
A General Broken Lines trajectory \cite{Kleinwort:2012np} includes uncertainties from
both, position measurement and scattering, simultaneously and reconstructs the
trajectory as a set of lines with kinks at the sensors planes. Scattering in
the volume between two planes is approximated by thin virtual scattering
layers close to the detector planes.
Multiplets split the reference systems in two parts: An upstream and downstream, individually fitted with one of the above track models.
Both tracks are extrapolated to a user defined `z`-position in between and both, the transverse distance of the tracks ($\bold{d}$ )at the matching position as well as the change in direction (scattering kink) are calculated. The $\chi^2$ is defined as:
\chi^2 = {\chi^2}_{up} + {\chi^2}_{down} + \sqrt{\bold{d}\cdot\bold{d}}
......@@ -6,6 +6,13 @@
%Define objects
% Temporary TODO commands
% \newcommand{\comment}[1]{#1} % DRAFT
\newcommand{\comment}[1]{} % FINAL
......@@ -102,6 +102,8 @@
% Time correlation
......@@ -68,7 +68,19 @@ author = "S. Spannagel",
Archiveprefix = {arXiv},
Eprint = {1812.02625},
author = "van der Heijden, B and Visser, J and van Beuzekom, M and
Boterenbrood, H and Kulis, S and Munneke, B and Schreuder,
title = "{SPIDR, a general-purpose readout system for pixel ASICs}",
journal = "JINST",
number = "02",
volume = "12",
pages = "C02040. 9 p",
year = "2017",
url = "",
doi = "10.1088/1748-0221/12/02/C02040",
author = "Spannagel, S.",
title = "{Silicon Technologies for the {CLIC} Vertex Detector}",
......@@ -320,3 +332,18 @@ doi = {10.1063/1.5005503},
URL = {},
eprint = {}
author = {Kleinwort, C.},
title = {{General Broken Lines as advanced track fitting method}},
journal = {Nucl.Instrum.Meth.},
year = {2012},
volume = {A673},
pages = {107-110},
archiveprefix = {arXiv},
doi = {10.1016/j.nima.2012.01.024},
eprint = {1201.4320},
primaryclass = {physics.ins-det},
reportnumber = {DESY-12-011},
slaccitation = {%%CITATION = ARXIV:1201.4320;%%}
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment