17A new tower analysis module to enable analysis of sPHENIX simulation to use multi-tower ganging of EMCal readout. For example 2x2-ganging as proposed for some CEMC de-scoping options.
18
19Technically, a new module ```RawTowerCombiner``` is introduced to combine MxN towers into one readout channel on an eta-phi tower grid exiting on the DST tree. Therefore, it needs to be called after ```RawTowerBuilder``` and before ```RawTowerDigitizer```. During the merging, truth structure (Cells and showers) is maintained. In the default mode, both RawTower and RawTowerGeometry are edited on the DST tree, rather than introducing a new node for combined towers. I found this is least intrusive to our analysis code base.
20
21If one need to use this module for ALD charge (e.g. photon position resolution, jet finding, etc.), please contact me directly, in order to speed up verification and feedback.
22
23## Verification
24
25The single particle simulation in the 2016-02-01 Geant4 production (```/sphenix/sim/sim01/production/2016-02-01```) was used for testing.
26
27One example is distance between best CEMC cluster from the trajectory projection of 24 GeV/c electrons. Green reference plot is default towering and blue curve is after 2x2 ganging. The ganged distribution is roughly twice wider while the central value remain zeroed.
29Note: here cluster position is calculated with simple energy weighted average, without more sophisticated discretization corrections.
30
31## Example macros
32
33By default, this new module is NOT used in analysis and no ganging is applied.
34
35Example macro to enabling 2x2 ganging as proposed for some de-scoping otpions: https://github.com/blackcathj/macros/blob/EMCal2x2/macros/g4simulations/G4_CEmc_Spacal.C
36Or specifically these lines added:
37
38\code
39
40void CEMC_Towers(int verbosity = 0) {
41 ...
42 // TowerBuilder
43 ...
44
45 // Make ganged output for CEMC
46 if (combin_CEMC_tower_2x2)
47 {
48 // group CEMC RawTower to CEMC2x2
49 RawTowerCombiner * TowerCombiner = new RawTowerCombiner("RawTowerCombiner_CEMC");