FIT Digitization

The digitization process of FIT (scintillating FIber Tracker) is performed by simplifing the geometry and parameterizing the response of detector.

Geometry of FIT

Considering that the structure of fiber is periodic and the material is similar for the fiber and epoxy adhesive, the complex geometry in the fiber mat could be simplified as long bars with ¡°sandwich¡± structure. The middle layer is set as the material of scintillating fiber core and epoxy adhesive are cover on the upper and lower layers.

The middle layer is defined as the sensitive detector. When particles pass through the detector unit, Geant4 will record the information of step as hit. The information of hit contains the serial number of mat, the entry position, exit position and deposited energy et al.

Detector response

When particles pass through the detector, the responses mainly include:

  • Generation of scintillating photons

  • Photons propagation along the fiber

  • Detection of the emitted photons accepted by SiPM

  • The transmission and convertion of signals in backend electronics

The basic idea of digitization is to convert the complex physics process of detector simulation or prototype test data to simplified empirical formula.

Process of digitization

Calculation of energy deposition in fiber

When particles pass through the fiber mat, they will produce the information of hits. Then the length of trackers in all the fibers and every fiber could be calculated respectively according to the entry and exit position of hits. These are the details:

  • Connect the hit entry and exit points with a line, go throught all the fiber layers and search for the coordinate of fiber center which is closest to the the line.

  • If the vertical distance between the fiber center and the line is smaller than the effective radius of fiber, the particle is regarded to pass throught this fiber.

  • Then the length of tracker in this fiber could be calculated according to the vertical distance and fiber radius.

The energy deposition could be allocated to all the hitted fibers based on the ratio of tracker length in fibers to the total tracker length. Besides, considering the crosstalk between different fibers, the energy deposited in the fibers need to be calibrated.

Photons attenuation along fiber

The exponential function with two components is used to describe the photons attenuation during propagetion in the fiber. The attenuation factor which is calculated with the distance between the center of hit and SiPM is used to correct the photon energy transmitted to SiPM. The corrected energy will be converted to number of photons emitted from the end of fiber.

Responses of SiPM

The program of FIT digitization provides two methods to simulate the detection of photon in SiPM: MC (Monte Carlo) sampling and statistical probability estimation.

The MC sampling is to randomly generate the information (position, direction, wavelength and time et al) of the emitted photons with parameterized model which is based on the full simulation of a single fiber. At first, the coordinate of hits on the surface of SiPM pad could be calculated according to the position and direction of photons. Then the corresponding channel will be found combined with the geometry information of SiPM. There is possibility that the hit channel is not fired and this probability is correlated with the PDE of SiPM and wavelength of photons. Besides, the channel with avalanche may fire the adjacent pixels and generate the additional pulses. This is the so-called ¡°pixel crosstalk¡± which contains direct crosstalk and delayed crosstalk. In digitization, poisson sampling is performed to obtain the photoelectrons superposed to the original signal according to the mean value of each component¡¯s proportion. Finally the thermal noise of SiPM need to be simulated. Assumed that the fired channels caused by the thermal noise follow the Poisson distribution. The expectant \(N_{fire}\) could be calculated by the formula: $\( N_{fire} = N_{total} * DCR * T_{sampling} \)\( where \)N_{total}\( is the number of total channels, \)DCR\( is the counting rate of SiPM dark noise, \)T_{sampling}\( is the shaping time. The fired channel is generated randomly from \)N_0\( to \)N_{total}$.

The second method is to use statistical probability estimation to calculate the number of photoelectrons in each SiPM channel. The accuracy of this method is worse than that of the first one, but it can extremly shorten the time to produce the data samples. At first, the mean value of photon detection efficiency, which is estimated to be 0.4818 , could be calculated based on the distribution of emitted photons¡¯ wavelength and the efficiency curves of SiPM. Then the distribution of hits along the X-axis is drawn and parameterized as double Gaussian function according to the position and direction of photons when a large number of them pass through the specific gap. Since the dimension of SiPM along the Z-axis is large enough, almost all the photons could be detected in this direction and the distribution of photons in Z-axis could be ignored. According to the behavior of a large number of photons, most of them focus on a circle with radius 300 \(\mu m\) around the center of fiber. Based on the circle, the possible channel and the probablity that the photon hit it could be calculated without the sampling to each photon. Considering the issue of calculation efficiency, only the first method is performed when the emitted photons is lower than 5.

Simulation of responses in electronics

Up to now, the photoelectrons generated in each SiPM channel are calculated. The last step is to convert the photoelectrons to ADC channels and during this step, fluctuations from electronics will be superposed. The ADC value of channel i in SiPM could be calculated with this formula: $\( A^{pe}_{i} = g * n^{pe}_{i} + p_{noise} \)\( where \)A^{pe}{i}\( is the responding amplitude of electronics, \)g\( is a gain factor following Gaussian distribution, \)n^{pe}{i}\( is the number of photoelectrons and \)p_{noise}$ is the baseline of electronics.

Example

import FITDigi_v3
task.createAlg("FITDigi_v3")