Attachment 'hcal-modules-overview.txt'

Download

   1 HCAL modules overview:
   2 
   3 There are two types of modules: fine and coarse
   4 
   5 tile size: 3x3 6x6 12x12
   6    #tiles:                #total:
   7    - fine: 100  96  20        216
   8  - coarse:  /  121  20        141
   9 
  10 Each tile is unambiguously assigned to a chip (0-11) and a channel
  11 (0-17) of this chip.
  12 
  13 #active chips:    chip number:
  14        - fine: 12         0-11
  15      - coarse:  8    0-3, 8-11
  16 
  17 Each module is divided into two parts, the so called half modules.
  18 
  19 #cells:
  20              upper: lower:  
  21        fine:    108    108 
  22      coarse:     72     69
  23         
  24 A number is assigned to each type.
  25 
  26 module type:
  27              upper: lower:     or            upper: lower:
  28        fine:      4      5             fine:      0      1
  29      coarse:      6      7           coarse:      2      3
  30 
  31 If you want to loop over all cells of a half module, you can do
  32 the following.
  33 
  34 fine modules:
  35 
  36 Create a loop variable, e.g. a cellindex (different from the geometrical cellindex).
  37 
  38 For the fine modules it is easy. The cellindex is just a number between
  39 0 and 107. To get all combinations of chip and channel, do:
  40 
  41   channel = cellindex modulo 18
  42 
  43   cellindex:  channel:
  44         0-17      0-17
  45        18-35      0-17
  46         ...        ...
  47 
  48   chip = (cellindex - channel) / 18 (+ 6 if lower module)
  49   
  50   example: cellindex = 20 -> (20 - 2)/18 = 1
  51 
  52   cellindex: channel: chip:
  53         0-17     0-17     0
  54        18-35     0-17     1
  55         ...       ...   ...
  56 
  57 coarse modules:
  58 
  59 In the case of coarse modules the assignment is a little bit tricky,
  60 because there are spare chips.
  61 
  62                chip: channel:
  63 coarse upper:    0-3     0-17
  64 coarse lower:      8     3-17
  65                 9-11     0-17
  66 
  67 In order to start with chip 8 channel 3 for a lower coarse modules, start with cellindex 39.
  68    
  69    39 modulo 18 = 3
  70    (39 - 3)/18 + 6 = 8
  71 
  72 If you want to convince yourself, you can run the following program.
  73 
  74 #include <iostream>
  75 
  76 using namespace std;
  77 
  78 int main(){
  79   for(int moduletype = 4; moduletype != 8; ++moduletype) {
  80 
  81     int firstindex = (moduletype == 7) ? 39 : 0;
  82     int lastindex = (moduletype == 6) ? 72 : 108;
  83 
  84     for(int cellindex =  firstindex; cellindex != lastindex; ++cellindex) {
  85 
  86       int channel = cellindex % 18;
  87       int chip = (cellindex - channel) / 18 
  88                             + ((moduletype == 4 || moduletype == 6) ? 0 : 6);
  89 
  90       switch(moduletype) {
  91       case 4: cout << "fine upper part: "; break;
  92       case 5: cout << "fine lower part: "; break;
  93       case 6: cout << "coarse upper part: "; break;
  94       case 7: cout << "coarse lower part: "; break;
  95     }
  96       cout << "chip: " << chip << " channel: " << channel << endl;
  97     }
  98   }
  99 }

Attached Files

To refer to attachments on a page, use attachment:filename, as shown below in the list of files. Do NOT use the URL of the [get] link, since this is subject to change and can break easily.
  • [get | view] (2009-02-17 15:51:19, 33.3 KB) [[attachment:Digitization_scheme.png]]
  • [get | view] (2009-02-17 14:04:23, 73.8 KB) [[attachment:IntegratedHcalProcessor_inputs.png]]
  • [get | view] (2009-02-17 15:51:14, 28.5 KB) [[attachment:Reconstruction_scheme.png]]
  • [get | view] (2009-02-17 13:58:17, 24.6 KB) [[attachment:SiPmPropertiesProcessor_inputs.png]]
  • [get | view] (2009-02-17 10:48:58, 9.2 KB) [[attachment:calibration_and_digitization_inheritance.png]]
  • [get | view] (2008-01-24 08:41:00, 2.6 KB) [[attachment:hcal-modules-overview.txt]]
 All files | Selected Files: delete move to page copy to page

You are not allowed to attach a file to this page.