]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONFactory.cxx
User stepping methods added (E. Futo)
[u/mrichter/AliRoot.git] / MUON / AliMUONFactory.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 ////////////////////////////////////////////////////////////
17 //  Factory for muon chambers, segmentations and response //
18 ////////////////////////////////////////////////////////////
19
20 /*
21 $Log$
22 Revision 1.2.10.1  2002/10/11 06:56:47  hristov
23 Updating VirtualMC to v3-09-02
24
25 Revision 1.3  2002/09/02 14:35:14  morsch
26 New segmentation radii for Station 2.
27
28 Revision 1.2  2001/05/16 14:57:17  alibrary
29 New files for folders and Stack
30
31 Revision 1.1  2001/04/06 11:24:43  morsch
32 Dependency on implementations of AliSegmentation and AliMUONResponse moved to AliMUONFactory class.
33 Static method Build() builds the MUON system out of chambers, segmentation and response.
34
35 */
36 #include "AliMUONFactory.h"
37 #include "AliMUON.h"
38 #include "AliMUONChamber.h"
39 #include "AliMUONResponseV0.h"
40 #include "AliMUONResponseTrigger.h"
41 #include "AliMUONSegmentationV0.h"
42 #include "AliMUONSegmentationV01.h"
43 #include "AliMUONSegmentationV02.h"
44 #include "AliMUONSegmentationV04.h"
45 #include "AliMUONSegmentationV05.h"
46 #include "AliMUONSegmentationSlat.h"
47 #include "AliMUONSegmentationSlatN.h"
48 #include "AliMUONSegmentationTrigger.h"
49 #include "AliMUONSegmentationTriggerX.h"
50 #include "AliMUONSegmentationTriggerY.h"
51
52 ClassImp(AliMUONFactory)
53
54     
55 void AliMUONFactory::Build(AliMUON* where, const char* what) 
56 {
57 //
58 // Construct MUON from chambers, segmentation and responses
59 //
60     char tmp[20];
61     AliMUON* pMUON = where;
62     strcpy(tmp, what);
63
64     if (strcmp(tmp, "default")==0) {
65       if(pMUON->GetDebug()) {
66         
67         printf("\nAliMUONFactory: --------AliMUONFactory------------------------------");
68         printf("\nAliMUONFactory:  Non default version of MUON selected               ");
69         printf("\nAliMUONFactory:  You have to construct yourself the MUON elements !!");       
70         printf("\nAliMUONFactory: ----------------------------------------------------");
71       }
72         pMUON->SetIshunt(0);
73         pMUON->SetMaxStepGas(0.1);
74         pMUON->SetMaxStepAlu(0.1);
75 //
76 // Version 0
77 //
78 // First define the number of planes that are segmented (1 or 2) by a call
79 // to SetNsec. 
80 // Then chose for each chamber (chamber plane) the segmentation 
81 // and response model.
82 // They should be equal for the two chambers of each station. In a future
83 // version this will be enforced.
84 //
85 //  
86         Int_t chamber;
87         // Default response: 5 mm of gas
88         AliMUONResponseV0* response0 = new AliMUONResponseV0;
89         response0->SetSqrtKx3AndDeriveKx2Kx4(0.7131); // sqrt(0.5085)
90         response0->SetSqrtKy3AndDeriveKy2Ky4(0.7642); // sqrt(0.5840)
91         response0->SetPitch(0.25); // anode-cathode distance
92         response0->SetSigmaIntegration(10.);
93         response0->SetChargeSlope(50);
94         response0->SetChargeSpread(0.18, 0.18);
95         response0->SetMaxAdc(4096);
96         response0->SetZeroSuppression(6);
97         
98         // Response for 4 mm of gas (station 1)
99         // automatic consistency with width of sensitive medium in CreateGeometry ????
100         AliMUONResponseV0* responseSt1 = new AliMUONResponseV0;
101         // Mathieson parameters from L.Kharmandarian's thesis, page 190
102         responseSt1->SetSqrtKx3AndDeriveKx2Kx4(0.7000); // sqrt(0.4900)
103         responseSt1->SetSqrtKy3AndDeriveKy2Ky4(0.7550); // sqrt(0.5700)
104         responseSt1->SetPitch(0.20); // anode-cathode distance
105         responseSt1->SetSigmaIntegration(10.);
106         // ChargeSlope larger to compensate for the smaller anode-cathode distance
107         // and keep the same most probable ADC channel for mip's
108         responseSt1->SetChargeSlope(62.5); 
109         // assumed proportionality to anode-cathode distance for ChargeSpread
110         responseSt1->SetChargeSpread(0.144, 0.144);
111         responseSt1->SetMaxAdc(4096);
112         responseSt1->SetZeroSuppression(6);
113         
114 //--------------------------------------------------------
115 // Configuration for Chamber TC1/2  (Station 1) ----------           
116 //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
117         Float_t rseg1[4]={17.5, 55.2, 71.3, 95.5};
118         Int_t   nseg1[4]={4, 4, 2, 1};
119 //
120         chamber=1;
121 //      ^^^^^^^^^
122         pMUON->SetNsec(chamber-1,2);
123 //
124         AliMUONSegmentationV01 *seg11=new AliMUONSegmentationV01(4);
125         
126         seg11->SetSegRadii(rseg1);
127         seg11->SetPadSize(2.4, 0.4); // smaller pad size
128         seg11->SetDAnod(0.20); // smaller distance between anode wires
129         seg11->SetPadDivision(nseg1);
130         
131         pMUON->SetSegmentationModel(chamber-1, 1, seg11);
132         
133         AliMUONSegmentationV02 *seg12=new AliMUONSegmentationV02(4);
134         seg12->SetSegRadii(rseg1); 
135         seg12->SetPadSize(0.6, 1.6); // smaller pad size
136         seg12->SetDAnod(0.20); // smaller distance between anode wires
137         seg12->SetPadDivision(nseg1);
138         
139         pMUON->SetSegmentationModel(chamber-1, 2, seg12);
140         
141         pMUON->SetResponseModel(chamber-1, responseSt1); // special response        
142         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
143         
144         chamber=2;
145 //      ^^^^^^^^^
146 //
147         pMUON->SetNsec(chamber-1,2);
148 //
149         AliMUONSegmentationV01 *seg21=new AliMUONSegmentationV01(4);
150         seg21->SetSegRadii(rseg1);
151         seg21->SetPadSize(2.4, 0.4); // smaller pad size
152         seg21->SetDAnod(0.20); // smaller distance between anode wires
153         seg21->SetPadDivision(nseg1);
154         pMUON->SetSegmentationModel(chamber-1, 1, seg21);
155 //
156         AliMUONSegmentationV02 *seg22=new AliMUONSegmentationV02(4);
157         seg22->SetSegRadii(rseg1); 
158         seg22->SetPadSize(0.6, 1.6); // smaller pad size
159         seg22->SetDAnod(0.20); // smaller distance between anode wires
160         seg22->SetPadDivision(nseg1);
161         pMUON->SetSegmentationModel(chamber-1, 2, seg22);
162         
163         pMUON->SetResponseModel(chamber-1, responseSt1); // special response
164         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
165         
166 //
167 //--------------------------------------------------------
168 // Configuration for Chamber TC3/4 (Station 2) -----------
169 ///^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
170 // Float_t rseg2[4]={23.5, 87.7, 122.4, 122.5};
171         Float_t rseg2[4]={23.5, 53.5, 90.5, 122.5};       
172         Int_t   nseg2[4]={4, 4, 2, 1};
173 //
174         chamber=3;
175 //      ^^^^^^^^^
176         pMUON->SetNsec(chamber-1,2);
177 //
178         AliMUONSegmentationV01 *seg31=new AliMUONSegmentationV01(4);
179         seg31->SetSegRadii(rseg2);
180         seg31->SetPadSize(3.0, 0.5);
181         seg31->SetDAnod(3.0/3./4);
182         seg31->SetPadDivision(nseg2);
183         pMUON->SetSegmentationModel(chamber-1, 1, seg31);
184 //
185         AliMUONSegmentationV02 *seg32=new AliMUONSegmentationV02(4);
186         seg32->SetSegRadii(rseg2); 
187         seg32->SetPadSize(0.75, 2.0);
188         seg32->SetPadDivision(nseg2);
189         seg32->SetDAnod(3.0/3./4);
190         
191         pMUON->SetSegmentationModel(chamber-1, 2, seg32);
192         
193         pMUON->SetResponseModel(chamber-1, response0);      
194         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
195         
196         chamber=4;
197 //      ^^^^^^^^^
198 //
199         pMUON->SetNsec(chamber-1,2);
200 //
201         AliMUONSegmentationV01 *seg41=new AliMUONSegmentationV01(4);
202         seg41->SetSegRadii(rseg2);
203         seg41->SetPadSize(3.0, 0.5);
204         seg41->SetDAnod(3.0/3./4);
205         seg41->SetPadDivision(nseg2);
206         pMUON->SetSegmentationModel(chamber-1, 1, seg41);
207 //
208         AliMUONSegmentationV02 *seg42=new AliMUONSegmentationV02(4);
209         seg42->SetSegRadii(rseg2); 
210         seg42->SetPadSize(0.75, 2.0);
211         seg42->SetPadDivision(nseg2);
212         seg42->SetDAnod(3.0/3./4);
213         
214         pMUON->SetSegmentationModel(chamber-1, 2, seg42);
215         
216         pMUON->SetResponseModel(chamber-1, response0);      
217         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
218         
219         
220 //--------------------------------------------------------
221 // Configuration for Chamber TC5/6  (Station 3) ----------          
222 //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
223         Int_t   nseg3[4]={4, 4, 2, 1};
224         Int_t   npcb5[36] = {0,0,2,0,
225                              0,0,3,0,
226                              0,1,3,0,
227                              0,2,2,0,
228                              0,1,2,0, 
229                              0,2,2,0, 
230                              0,1,3,0, 
231                              0,0,3,0,
232                              0,0,2,0};
233         
234         Float_t shift = 1.5/2.;
235         Float_t xpos5[9]    = {2., 2., 2., 2.,33., 2., 2., 2., 2.};
236         Float_t ypos5       = -(20.+4.*(40.-2.*shift));
237         
238         chamber=5;
239         pMUON->SetNsec(chamber-1,2);
240         AliMUONSegmentationSlat *seg51=new AliMUONSegmentationSlat(4);
241         seg51->SetNSlats(9); 
242         seg51->SetShift(shift);  
243         seg51->SetNPCBperSector(npcb5); 
244         seg51->SetSlatXPositions(xpos5);
245         seg51->SetSlatYPosition(ypos5);
246         seg51->SetPadSize(10.,0.5);
247         seg51->SetDAnod(0.25);
248         seg51->SetPadDivision(nseg3);
249         pMUON->SetSegmentationModel(chamber-1, 1, seg51);
250         
251         AliMUONSegmentationSlatN *seg52=new AliMUONSegmentationSlatN(4);
252         seg52->SetNSlats(9); 
253         seg52->SetShift(shift);  
254         seg52->SetNPCBperSector(npcb5); 
255         seg52->SetSlatXPositions(xpos5);
256         seg52->SetSlatYPosition(ypos5);
257         seg52->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
258         seg52->SetDAnod(0.25);
259         seg52->SetPadDivision(nseg3);
260         pMUON->SetSegmentationModel(chamber-1, 2, seg52);
261         pMUON->SetResponseModel(chamber-1, response0);      
262         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
263         
264         chamber=6;
265         pMUON->SetNsec(chamber-1,2);
266         AliMUONSegmentationSlat *seg61=new AliMUONSegmentationSlat(4);
267         seg61->SetNSlats(9); 
268         seg61->SetShift(shift);  
269         seg61->SetNPCBperSector(npcb5); 
270         seg61->SetSlatXPositions(xpos5);
271         seg61->SetSlatYPosition(ypos5);
272         seg61->SetPadSize(10.,0.5);
273         seg61->SetDAnod(0.25);
274         seg61->SetPadDivision(nseg3);
275         pMUON->SetSegmentationModel(chamber-1, 1, seg61);
276         
277         AliMUONSegmentationSlatN *seg62=new AliMUONSegmentationSlatN(4);
278         seg62->SetNSlats(9); 
279         seg62->SetShift(shift);  
280         seg62->SetNPCBperSector(npcb5); 
281         seg62->SetSlatXPositions(xpos5);
282         seg62->SetSlatYPosition(ypos5);
283         seg62->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
284         seg62->SetDAnod(0.25);
285         seg62->SetPadDivision(nseg3);
286         pMUON->SetSegmentationModel(chamber-1, 2, seg62);
287         pMUON->SetResponseModel(chamber-1, response0);      
288         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
289         
290 //--------------------------------------------------------
291 // Configuration for Chamber TC7/8  (Station 4) ----------           
292 //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
293
294         Int_t   nseg4[4]={4, 4, 2, 1};
295         
296         chamber=7;
297 //      ^^^^^^^^^
298         
299         pMUON->SetNsec(chamber-1,2);
300 //
301         AliMUONSegmentationSlat *seg71=new AliMUONSegmentationSlat(4);
302         Int_t npcb7[44] = {0,0,0,3,
303                            0,0,2,2,
304                            0,0,3,2,
305                            0,2,2,1,
306                            0,2,2,1,
307                            0,1,2,1, 
308                            0,2,2,1, 
309                            0,2,2,1, 
310                            0,0,3,2, 
311                            0,0,2,2, 
312                            0,0,0,3};
313         Float_t xpos7[11]   = {2., 2., 2., 2., 2., 40.5, 2., 2., 2., 2., 2.};
314         Float_t ypos7       = -(20.+5.*(40.-2.*shift));
315         
316         seg71->SetNSlats(11);  
317         seg71->SetShift(shift);  
318         seg71->SetNPCBperSector(npcb7); 
319         seg71->SetSlatXPositions(xpos7);
320         seg71->SetSlatYPosition(ypos7);
321         
322         seg71->SetPadSize(10.,0.5);
323         seg71->SetDAnod(0.25);
324         seg71->SetPadDivision(nseg4);
325         pMUON->SetSegmentationModel(chamber-1, 1, seg71);
326         
327         AliMUONSegmentationSlatN *seg72=new AliMUONSegmentationSlatN(4);
328         
329         pMUON->SetSegmentationModel(chamber-1, 2, seg72);
330         seg72->SetNSlats(11);  
331         seg72->SetShift(shift);   
332         seg72->SetNPCBperSector(npcb7); 
333         seg72->SetSlatXPositions(xpos7);
334         seg72->SetSlatYPosition(ypos7);
335         seg72->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
336         seg72->SetDAnod(0.25);
337         seg72->SetPadDivision(nseg4);
338         
339         pMUON->SetResponseModel(chamber-1, response0);      
340         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
341         
342         chamber=8;
343 //      ^^^^^^^^^
344         pMUON->SetNsec(chamber-1,2);
345 //
346         AliMUONSegmentationSlat *seg81=new AliMUONSegmentationSlat(4);
347         
348         seg81->SetNSlats(11);  
349         seg81->SetShift(shift);  
350         seg81->SetNPCBperSector(npcb7); 
351         seg81->SetSlatXPositions(xpos7);
352         seg81->SetSlatYPosition(ypos7);
353         seg81->SetPadSize(10.,0.5);
354         seg81->SetDAnod(0.25);
355         seg81->SetPadDivision(nseg4);
356         pMUON->SetSegmentationModel(chamber-1, 1, seg81);
357         
358         AliMUONSegmentationSlat *seg82=new AliMUONSegmentationSlatN(4);
359         
360         pMUON->SetSegmentationModel(chamber-1, 2, seg82);
361         seg82->SetNSlats(11);  
362         seg82->SetShift(shift);  
363         seg82->SetNPCBperSector(npcb7); 
364         seg82->SetSlatXPositions(xpos7);
365         seg82->SetSlatYPosition(ypos7);
366         seg82->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
367         seg82->SetDAnod(0.25);
368         seg82->SetPadDivision(nseg4);
369         
370         pMUON->SetResponseModel(chamber-1, response0);      
371         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
372         
373
374 //--------------------------------------------------------
375 // Configuration for Chamber TC9/10  (Station 5) ---------           
376 //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
377         chamber=9;
378 //      ^^^^^^^^^
379
380         pMUON->SetNsec(chamber-1,2);
381 //
382         AliMUONSegmentationSlat *seg91=new AliMUONSegmentationSlat(4);
383         Int_t   npcb9[52] = {0,0,0,3,
384                              0,0,0,4,
385                              0,0,2,3,
386                              0,0,3,3,
387                              0,2,2,2,
388                              0,2,2,2,
389                              0,1,2,2, 
390                              0,2,2,2, 
391                              0,2,2,2, 
392                              0,0,3,3, 
393                              0,0,2,3, 
394                              0,0,0,4, 
395                              0,0,0,3};   
396         
397         Float_t xpos9[13]   = {2., 2., 2., 2., 2., 2., 40.5, 2., 2., 2., 2., 2., 2.};
398         Float_t ypos9       = -(20.+6.*(40.-2.*shift));
399         
400         seg91->SetNSlats(13);  
401         seg91->SetShift(shift);  
402         seg91->SetNPCBperSector(npcb9); 
403         seg91->SetSlatXPositions(xpos9);
404         seg91->SetSlatYPosition(ypos9);
405         seg91->SetPadSize(10.,0.5);
406         seg91->SetDAnod(0.25);
407         seg91->SetPadDivision(nseg4);
408         pMUON->SetSegmentationModel(chamber-1, 1, seg91);
409         
410         AliMUONSegmentationSlatN *seg92=new AliMUONSegmentationSlatN(4);
411         
412         pMUON->SetSegmentationModel(chamber-1, 2, seg92);
413         seg92->SetNSlats(13);  
414         seg92->SetShift(shift);   
415         seg92->SetNPCBperSector(npcb9); 
416         seg92->SetSlatXPositions(xpos9);
417         seg92->SetSlatYPosition(ypos9);
418         seg92->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
419         seg92->SetDAnod(0.25);
420         seg92->SetPadDivision(nseg4);
421         
422         pMUON->SetResponseModel(chamber-1, response0);      
423         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
424         
425         chamber=10;
426 //      ^^^^^^^^^
427         pMUON->SetNsec(chamber-1,2);
428 //
429         AliMUONSegmentationSlat *seg101=new AliMUONSegmentationSlat(4);
430         
431         seg101->SetNSlats(13);  
432         seg101->SetShift(shift);  
433         seg101->SetNPCBperSector(npcb9); 
434         seg101->SetSlatXPositions(xpos9);
435         seg101->SetSlatYPosition(ypos9);
436         seg101->SetPadSize(10.,0.5);
437         seg101->SetDAnod(0.25);
438         seg101->SetPadDivision(nseg4);
439         pMUON->SetSegmentationModel(chamber-1, 1, seg101);
440         
441         AliMUONSegmentationSlatN *seg102=new AliMUONSegmentationSlatN(4);
442         
443         pMUON->SetSegmentationModel(chamber-1, 2, seg102);
444         seg102->SetNSlats(13);  
445         seg102->SetShift(shift);   
446         seg102->SetNPCBperSector(npcb9); 
447         seg102->SetSlatXPositions(xpos9);
448         seg102->SetSlatYPosition(ypos9);
449         seg102->SetPadSize(1., 10.); // DeltaX(non bending) = 2 * DeltaY(bending)
450         seg102->SetDAnod(0.25);
451         seg102->SetPadDivision(nseg4);
452         
453         pMUON->SetResponseModel(chamber-1, response0);      
454         pMUON->Chamber(chamber-1).SetChargeCorrel(0.11); // 11% charge spread
455
456 //--------------------------------------------------------
457 // Configuration for Trigger Stations -------------------- 
458 //^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
459 // Cluster-size off
460         AliMUONResponseTrigger* responseTrigger0 =  new AliMUONResponseTrigger;
461 // Cluster-size on  
462 // AliMUONResponseTriggerV1* responseTrigger0 =  new AliMUONResponseTriggerV1;
463  
464         chamber=11;
465         pMUON->SetNsec(chamber-1,2);
466         AliMUONSegmentationTriggerX *seg111=new AliMUONSegmentationTriggerX;
467         pMUON->SetSegmentationModel(chamber-1, 1, seg111);
468         AliMUONSegmentationTriggerY *seg112=new AliMUONSegmentationTriggerY;
469         pMUON->SetSegmentationModel(chamber-1, 2, seg112);
470         
471         pMUON->SetResponseModel(chamber-1, responseTrigger0);      
472         pMUON->Chamber(chamber-1).SetChargeCorrel(0); // same charge on cathodes
473         
474  
475         chamber=12;
476         pMUON->SetNsec(chamber-1,2);
477         AliMUONSegmentationTriggerX *seg121=new AliMUONSegmentationTriggerX;
478         pMUON->SetSegmentationModel(chamber-1, 1, seg121);
479         AliMUONSegmentationTriggerY *seg122=new AliMUONSegmentationTriggerY;
480         pMUON->SetSegmentationModel(chamber-1, 2, seg122);
481         
482         pMUON->SetResponseModel(chamber-1, responseTrigger0);
483         pMUON->Chamber(chamber-1).SetChargeCorrel(0); // same charge on cathodes
484         
485         chamber=13;
486         pMUON->SetNsec(chamber-1,2);
487         AliMUONSegmentationTriggerX *seg131=new AliMUONSegmentationTriggerX;
488         pMUON->SetSegmentationModel(chamber-1, 1, seg131);
489         AliMUONSegmentationTriggerY *seg132=new AliMUONSegmentationTriggerY;
490         pMUON->SetSegmentationModel(chamber-1, 2, seg132);
491         pMUON->SetResponseModel(chamber-1, responseTrigger0);      
492         pMUON->Chamber(chamber-1).SetChargeCorrel(0); // same charge on cathodes
493         
494         chamber=14;
495         pMUON->SetNsec(chamber-1,2);
496         AliMUONSegmentationTriggerX *seg141=new AliMUONSegmentationTriggerX;
497         pMUON->SetSegmentationModel(chamber-1, 1, seg141);
498         AliMUONSegmentationTriggerY *seg142=new AliMUONSegmentationTriggerY;
499         pMUON->SetSegmentationModel(chamber-1, 2, seg142);
500         
501         pMUON->SetResponseModel(chamber-1, responseTrigger0); 
502         pMUON->Chamber(chamber-1).SetChargeCorrel(0); // same charge on cathodes
503     } else {
504       if(pMUON->GetDebug()) {
505         printf("\nAliMUONFactory: --------AliMUONFactory------------------------------");
506         printf("\nAliMUONFactory:  Non default version of MUON selected               ");
507         printf("\nAliMUONFactory:  You have to construct yourself the MUON elements !!");       
508         printf("\nAliMUONFactory: ----------------------------------------------------");
509       }
510     }
511 }
512