-- AdamMatyja - 10-Nov-2010
Unfolding of ALICE EMCAL clusters.

- weight: w = max(0;4.5+log(E_i/E_clus))
- distance: r = sqrt((dy)^2+(dz)^2)
- fitting function: f(r) = p0 exp (- r^p2 (1/(p2+p3 r^p1) + p4/(1+ r^p5 p6) ) )

Method of unfolding:

- The first step to begin unfolding is to determine the number of maxima in the cluster. It is done by checking neighbours cell by cell. A neighbour is defined as being two cells which share an edge or a corner (see figure).

- The next step is the fit.

- The last step is to create unfolded clusters. At first the energy deposited in each cell in accordance with the fit (without fluctuations) is calculated. Later this number is corrected to fluctuations in accordance with actual energy deposition so that energy deposited in each cell is distributed between new clusters proportionally to theirs contribution to the fit. There are as many new clusters as many local maxima found in the cluster. When unfolding succeeded the cluster before unfolding is replaced by new clusters.

Technical info:

The class AliEMCALUnfolding was written for the purpose of unfolding. The unfolding can be called during reconstruction. One has to set the flag fToUnfold to value kTRUE to proceed with the unfolding (this flag is set in OCDB). The procedure is initialized once (in the AliEMCALClusterizer class). During the initialization parameters of the function which describes the shower shape are set (also from OCDB). There is also set the value of fLocalMaxCut as the minimum energy difference between two local maxima. Then the routine is called (via MakeUnfolding) in each event (in the method Digits2Clusters of both classes AliEMCALClusterizerv1 and AliEMCALClusterizerNxN) just after clusterization (via MakeClusters) and before the calculation of cluster's features like, for example, a value of the main axis of a cluster. As the input of the unfolding we take EMCal digits (AliEMCALDigit) array and EMCal reconstructed points (AliEMCALRecPoint) array. Then for the calculation of the number of local maxima in the cluster the method GetNumberOfLocalMax (in AliEMCALRecPoint) is called. In the just mentioned method AreNeighbours is called. It is worth to stress that the implementation of the function in AliEMCALRecPoint class is different from the function in the AliEMCALClusterizer class. After that TMinuit is called to do the fit. The MIGRAD option is used for minimization. Then energy in each cell is split in accordance to the fit. In the output new reconstructed points are stored together with fraction energy of digits belonging to the cluster.

I | Attachment | History | Action | Size | Date | Who | Comment |
---|---|---|---|---|---|---|---|

jpg | fit2.JPG | r1 | manage | 33.1 K | 2010-11-25 - 16:12 | AdamMatyja | how fit is working |

gif | neighbours_clusterv1.GIF | r1 | manage | 1.5 K | 2010-11-25 - 16:22 | AdamMatyja | neighbours during clusterization |

gif | neighbours_UF.GIF | r1 | manage | 1.8 K | 2010-11-25 - 16:21 | AdamMatyja | neighbours in unfolding |

This topic: Main > TWikiUsers > AdamMatyja > TWikiUnfolding

Topic revision: r2 - 2010-11-25 - AdamMatyja

Copyright &© 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.

Ideas, requests, problems regarding TWiki? Send feedback

Ideas, requests, problems regarding TWiki? Send feedback