1 \documentclass[11pt]{article}
2 \usepackage[margin=2cm,twoside]{geometry}
7 \title{Calculation of signals in the FMD simulation and reconstruction}
8 \author{Christian Holm Christensen}
10 \def\MeV#1{\unit[#1]{MeV}}
11 \def\N#1{\unit[#1]{N}}
12 \def\Q#1{\unit[#1]{Q}}
13 \def\ALTRO{{\scshape altro}}
14 \def\RCU{{\scshape rcu}}
15 \def\FMD{{\scshape fmd}}
16 \def\VA{{\scshape va1}}
17 \def\class#1{{\small\ttfamily #1}}
18 \def\DeltaMip{\ensuremath{\bar{\Delta}_{mip}}}
22 \section*{Introduction}
24 This is meant as a reminder of what kind of manipulations we do in the
25 simulation and reconstruction of \FMD{} data. Please refer to
26 \tablename~\ref{tab:conventions} for conventions and constants used in
32 \begin{tabular}{|l|c|r|p{.6\textwidth}|}
34 \textbf{Symbol} & \textbf{Unit} & \textbf{Value} & \textbf{Description}\\
36 $\delta_{ij}$ & \MeV{} & & Energy loss by particle $j$ in strip $i$\\
37 $\Delta_i$ & \MeV{} & & Summed energy loss in strip $i$\\
38 ${}_{mc}$ & & & Monte-Carlo mark\\
39 $q_{mip}$ & \Q{} & 29.67 & Number of $e^-$ charges for a MIP\\
40 $\DeltaMip{}$ & \MeV{} & 0.124 & Average energy deposition by a MIP\\
41 $c_i$ & \N{} & $[0,10^2-1]$ & ADC counts in strip $i$\\
42 $g_i$ & \N{}/\Q{} & $~2.2$ & Pulser calibrated gain for strip $i$\\
43 $p_i$ & \N{} & $~100$ & Pedestal value in strip $i$\\
44 $n_i$ & \N{} & $2-4$ & Noise value of strip $i$\\
45 $f_{ol}$ & & 4 & On--line noise suppression factor\\
46 $f_{reco}$ & & 4 & Reconstruction noise suppression
48 $b$ & & 6 & Shaping time parameter\\
49 $\rho$ & \unit[g\,cm\textsuperscript{-3}] & 2.33 & Density of silicon\\
50 $T$ & \unit[cm] & 0.032 & Thickness of sensors\\
58 \DeltaMip{} &= \unit[1.664]{MeV cm^2 g^{-1}} \rho\,T\\
59 &= \unit[1.664]{MeV cm^2 g^{-1}} \unit[2.33]{g\,cm^{-3}}
63 where $\rho=\unit[2.33]{g\,cm^{-3}}$ is the density of silicon, and
64 $T=\unit[320]{\mu{}m}$ the thickness of the silicon sensor.
66 The factor $q_{mip}$ is given by the electronics of the front--end
67 cards of the \FMD{} and was measured in the laboratory in August 2008.
68 It is a digital--to--analogue setting corresponding to 1 MIP in the
69 pulser injection circuit on the front--end electronics.
70 \caption{Conventions used in this document, and constant values.}
71 \label{tab:conventions}
75 \section*{Simulations}
77 In the hits (\class{AliFMDHit}) are generated per strip for each
78 particle that impinges on a strip. Stored in the hit are the energy
79 loss $\delta_{i,mc}$ of the particle impinging as well as the path
80 length $l_{i,mc}$ of the particle track through the strip.
82 When generating simulated detector signal (\class{AliFMDSDigit} or
83 \class{AliFMDDigit}) the energy loss in all hits in a single strip is
84 summed to a total energy loss in the strip.
86 \label{eq:sim:sum_eloss}
87 \Delta_{i,mc} = \sum_j \delta_{ij,mc} \quad[\MeV{}]
90 The detector signal (ADC counts) is then calculated using the fixed
91 gain of the \VA{} pre-amplifiers ($q_{mip}$), the average
92 energy deposition of a MIP $\DeltaMip{}$, and the pulser calibrated
93 gain of the strip $g_i$. These numbers combine to a conversion
94 factor $f_{i,mc}$ given by
97 \label{eq:sim:conversion_factor}
98 f_{i,mc} = \frac{q_{mip} g_i}{\DeltaMip{}} \quad [\N{} \MeV{}^{-1}]
101 This factor and the constant value $C_i$ is then used to calculate the
105 \label{eq:sim:adc_counts}
106 c_i = \Delta_{i,mc} f_{i,mc} + C_i \quad[\N{}]
109 In case of multiple samples ($r$) of the same strip, each sample $j$ is
112 \label{eq:sim:sub_adc_counts}
113 c_{ij,mc} = f_{i,mc} \left(\Delta_{i,mc} + (\Delta_{i-1,mc}-\Delta_i) e^{-b
114 \frac{j}{r}}\right)+C_i \quad[\N{}]
116 where $j$ runs from 1 to $r$ (the number of samples), and $b$ is a
117 constant that depends on the shaping time of the \VA{}
118 pre-amplifier (see also \figurename~\ref{fig:sim:va1_response}).
122 \includegraphics[keepaspectratio,width=.45\textwidth]{va1_response}
123 \includegraphics[keepaspectratio,width=.45\textwidth]{va1_train}
124 \caption{Left: Shaping function of \VA{}, right: the resulting train
125 of signals from \eqref{eq:sim:sub_adc_counts}. Note, that the
126 signal value used is just before the turn to the next value.}
127 \label{fig:sim:va1_response}
130 Since the ADC has a limited range of 10bits ($=10^2-1=1024-1$) all
131 signals are truncated at 1023.
133 For summable digits (\class{AliFMDSDigit}) $C_i=0$, but for
134 fully simulated digits $c'_i$ (\class{AliFMDDigit}) it is given by
135 the pedestal $p_i$ and noise $n_i$ of the strip
138 \label{eq:sim:pedestal_value}
139 C_i = \text{gaus}(p_i,n_i)\quad[\N{}]
141 that is, a Gaussian distributed number with $\mu=p_i$ (pedestal) and
142 $\sigma=n_i$ (noise).
146 The raw data, whether from simulation or the experiment, is stored in
147 the \ALTRO{}/\RCU{} data format. The \ALTRO{} has 10 bit (maximum
148 count value of $\N{10^2-1}=\N{1023}$) ADC with up to 1024 consecutive
149 samples of the input signal. The 128 input strip signals of \VA{}
150 chips, are multiplexed into a single \ALTRO{} channel in such a way
151 that each strip signal is sampled 1, 2, or 4 times\footnote{Currently,
152 the default is to sample 2 times.}.
154 The signal is then pedestal subtracted
156 \label{eq:sim:pedestal_subtraction}
157 d_i = c_i - p_i + f_{ol} n_i\quad[\N{}]
159 where $p_i$ and $n_i$ are the pedestal and noise value, evaluated
160 on--line in special calibration runs, and $f_{ol}$ is a integer factor
161 selected when configuring the detector\footnote{Typically $f_{ol}=4$.}
163 After pedestal subtraction, which ensures that strips not hit by a
164 particle has a 0 signals, an zero--suppression filter is applied by
165 the \ALTRO{}. This filter throws away all 0s from the data and
166 replaces them with markers that allows one to reconstruct the position
167 of the remaining signals in the sample sequence.
169 The signals from each \ALTRO{} input channel is then packed into
170 blocks and shipped to the \RCU{} and eventually the data acquisition
173 In simulations a similar filter is applied to the data to simulate the
174 \ALTRO{} channels. The total signal from the a strip
175 \eqref{eq:sim:adc_counts} is then given by
177 \label{eq:raw:sim_digits}
178 c_i = \Delta_{i,mc} f_{i,mc} + \text{gaus}(p_i,n_i) - p_i - f_{ol} n_i \quad[\N{}]
180 and similar for $c_{ij}$ \eqref{eq:sim:sub_adc_counts}.
182 \section*{Reconstruction}
184 When reconstructing of either simulated data or data from the
185 experiment, the first thing is to read in the raw data stored in the
186 \ALTRO{}/\RCU{} data format\footnote{There is an option to reconstruct
187 from the simulated \class{AliFMDDigit} objects directly, in which
188 case this step is skipped entirely.}. This is done by the
189 \class{AliFMDRawReader} class.
191 Depending on whether or not the data was zero--suppressed, the
192 \class{AliFMDRawReader} code will do a pedestal subtraction, or add in
193 the noise previously subtracted in the \ALTRO{} (or simulation there
197 \label{eq:reco:pedestal_subtraction}
198 s'_i = c_i + C_i = c_i + \left\{
200 - p_i & \text{not zero--suppressed}\\
201 + f_{ol} n_i & \text{zero-suppressed}
202 \end{array}\right.\quad[\N{}]
204 where $f_{ol}$ is the noise factor applied by the \ALTRO{}\footnote{This
205 factor is stored in the event header and read by the
206 \class{AliFMDRawReader} --- thus ensuring consistency.}, and $p_i$
207 and $n_i$ are the pedestal and noise value of the strip in question.
209 In the reconstruction it is possible (via a \class{AliFMDRecoParam}
210 object) to specify a stronger noise suppression factor $f_{reco}$. If
211 the signal $s'_i$ is smaller than the noise $n_i$ times the greater of
212 the two noise suppression factors, it is explicitly set to 0
214 \label{eq:reco:low_signal_cut}
215 s_i = \left\{\begin{array}{cl}
216 s'_i & s'_i > n_i \max{f_{ol},f_{reco}}\\
218 \end{array}\right.\quad[\N{}]
221 We now have a signal $s_i$ which is akin to $f_{i,mc}\Delta_{i,mc}$ of
222 \eqref{eq:raw:sim_digits}. We therefor calculate the energy loss in
223 the $i^{\text{th}}$ strip using the factor
225 \label{eq:reco:conversion_factor}
226 f_{i,reco} = \frac{\DeltaMip{}}{q_{mip} g_i} = f_{i,mc}^{-1}
227 \quad[\N{}^{-1}\MeV{}]
229 which is the inverse of \eqref{eq:sim:conversion_factor}, and the
232 \label{eq:reco:energy_loss}
233 \Delta_{i,reco} = s_i f_{i,reco}\quad[\MeV{}]
236 \section*{From energy loss to ADC counts and back}
238 If we take \eqref{eq:sim:adc_counts} and \eqref{eq:reco:energy_loss}
241 \item that $s_i$ is not suppressed by \eqref{eq:reco:low_signal_cut}
242 \item \eqref{eq:reco:pedestal_subtraction} removes the fluctuations
243 put in \eqref{eq:sim:pedestal_value}
245 and put them together we get
248 \Delta_{i,reco} &= s_i f_{i,reco}\nonumber\\
249 &= (c_i + C_i) \frac{\DeltaMip{}}{q_{mip} g_i}\nonumber\\
250 &= \Delta_{i,mc} f_{i,mc} f_{i,mc}^{-1}\nonumber\\
254 \section*{Some calculations}
256 Assuming a typical energy loss of \unit[2.9]{MeV\,cm\textsuperscript{-1}} and
257 applying \eqref{eq:sim:adc_counts} and
258 \eqref{eq:sim:conversion_factor}, we get a signal value over pedestal of
260 c_i &= \unit[2.9]{MeV\,cm^{-1}}\,T\, f_{i,mc}\nonumber\\
261 &= \MeV{0.0928}\frac{\Q{29.67}\
262 \unit[2.2]{N\,Q^{-1}}}{\MeV{0.124}}\nonumber\\
263 &= \MeV{0.0928}\ \unit[526.40]{N MeV\textsuperscript{-1}}\nonumber\\