]>
Commit | Line | Data |
---|---|---|
e087fe7f | 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 | ||
30178c30 | 16 | /* $Id$ */ |
e087fe7f | 17 | |
30178c30 | 18 | #include <TMath.h> |
19 | #include <TRandom.h> | |
e087fe7f | 20 | |
21 | #include "AliMUONResponseTriggerV1.h" | |
22 | #include "AliSegmentation.h" | |
e087fe7f | 23 | |
24 | ClassImp(AliMUONResponseTriggerV1) | |
25 | ||
26 | //------------------------------------------------------------------ | |
30178c30 | 27 | AliMUONResponseTriggerV1::AliMUONResponseTriggerV1() |
28 | : AliMUONResponseTrigger() | |
29 | { | |
e087fe7f | 30 | // default constructor |
31 | Float_t hv=9.2; | |
32 | SetParameters(hv); | |
33 | } | |
34 | ||
35 | //------------------------------------------------------------------ | |
30178c30 | 36 | AliMUONResponseTriggerV1::AliMUONResponseTriggerV1(Float_t hv) |
37 | : AliMUONResponseTrigger() | |
38 | { | |
e087fe7f | 39 | // Constructor |
40 | SetParameters(hv); | |
41 | } | |
42 | ||
43 | //------------------------------------------------------------------ | |
44 | void AliMUONResponseTriggerV1::SetParameters(Float_t hv){ | |
45 | // initialize parameters accoring to HV | |
46 | // (see V.Barret B.Espagnon and P.Rosnet Alice/note xxx) | |
47 | fA = 6.089 * hv - 52.70; | |
48 | fB = 2.966; | |
49 | fC = 4.3e-4 * hv - 3.5e-3; | |
50 | } | |
51 | ||
52 | //------------------------------------------------------------------ | |
53 | Int_t AliMUONResponseTriggerV1::SetGenerCluster(){ | |
54 | // Set the GenerCluster parameter and return 1 | |
55 | fGenerCluster = gRandom->Rndm(); | |
56 | return 1; | |
57 | } | |
58 | ||
59 | //------------------------------------------------------------------ | |
60 | Float_t AliMUONResponseTriggerV1::IntXY(AliSegmentation * segmentation){ | |
61 | // Returns 1 or 0 if the current strip is fired or not | |
62 | // get the "parameters" needed to evaluate the strip response | |
63 | // x1 : hit x(y) position | |
64 | // x2 : x(y) coordinate of the main strip | |
65 | // x3 : current strip real x(y) coordinate | |
66 | // x4 : dist. between x(y) hit pos. and the closest border of the current strip | |
67 | ||
68 | Float_t x1,x2,x3,x4; | |
69 | segmentation->IntegrationLimits(x1,x2,x3,x4); | |
70 | Float_t theta = 0.; // incident angle to be implemented | |
71 | ||
72 | return (fGenerCluster < FireStripProb(x4,theta)) ? 1:0; | |
73 | } | |
74 | ||
75 | //------------------------------------------------------------------ | |
76 | Float_t AliMUONResponseTriggerV1::FireStripProb(Float_t x4, Float_t theta){ | |
77 | // parametrisation of the probability that a strip neighbour of the main | |
78 | // strip is fired (V.Barret B.Espagnon and P.Rosnet Alice/note xxx) | |
79 | // WARNING : need to convert x4 from cm to mm | |
80 | ||
81 | return | |
82 | (TMath::Cos(theta)*fA/(fA+TMath::Cos(theta)*TMath::Power(x4*10.,fB))+fC)/ | |
83 | (TMath::Cos(theta)+fC); | |
84 | } | |
85 |