CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
CMSCGENnorm.h
Go to the documentation of this file.
1 #ifndef CMSCGENnorm_h
2 #define CMSCGENnorm_h
3 //
4 // CMSCGENnorm.h P. Biallass 2006
5 //
6 // code based on l3cgen.f by T.Hebbeker
7 // implemented in CMSSW by P. Biallass 11.04.2006
8 //
10 //
11 // calculate normalisation factor (if statistics sufficient):
12 //
13 //
14 // flux dN/dOmega/dE/dA/dt at 100 GeV and zenith angle 0 (per sr-> theta<32.77 deg):
15 // 2.63 * E-3 +- 0.06 * E-3 / m**2 / sr / GeV / s (see Biallass+Hebbeker internal note 2007 "Improved Parametrization of the Cosmic Muon Flux for the generator CMSCGEN")
16 //
17 // percentage of rejected events and surface needs to be corrected for later!
18 //
19 // for this we also need to:
20 //
21 // count muons with energy 100 GeV
22 // and those with 1 - cos(theta) < 1/(2pi) (-> gives directly dN/dOmega/dE !) (this means theta<32.77deg)
23 //
24 
25 #include "TMath.h"
26 #include <iostream>
28 
29 class CMSCGENnorm {
30 private:
31  int n100;
32  int n100cos;
33  int n;
34  float flux;
35  float Nnorm;
36 
37 public:
38  // constructor
40  n100 = 0;
41  n100cos = 0;
42  }
43 
44  //destructor
46  n100 = 0;
47  n100cos = 0;
48  }
49 
50  int events_n100cos(double energy,
51  double theta); //count number of cosmic with energy 100 GeV and those with 1 - cos(theta) < 1/(2pi)
52 
53  float norm(int n100cos); //normalize to known flux
54 };
55 #endif
float norm(int n100cos)
Definition: CMSCGENnorm.cc:27
int events_n100cos(double energy, double theta)
Definition: CMSCGENnorm.cc:13
Geom::Theta< T > theta() const
float flux
Definition: CMSCGENnorm.h:34
float Nnorm
Definition: CMSCGENnorm.h:35