Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
Fireworks
Calo
src
thetaBins.cc
Go to the documentation of this file.
1
// -*- C++ -*-
2
//
3
// Package: Calo
4
// Class : thetaBins
5
//
6
// Implementation:
7
// <Notes on implementation>
8
//
9
// Original Author: Chris Jones
10
// Created: Thu Dec 11 22:59:38 EST 2008
11
// $Id: thetaBins.cc,v 1.4 2010/06/07 18:58:16 matevz Exp $
12
//
13
14
// system include files
15
#include <
math.h
>
16
17
// user include files
18
#include "
Fireworks/Calo/interface/thetaBins.h
"
19
#include "
Fireworks/Core/interface/fw3dlego_xbins.h
"
20
21
22
// NOTE:
23
// Here we assume 72 bins in phi. At high eta we have only 36 and at the
24
// very end 18 bins. These large bins are splited among smaller bins
25
// decreasing energy in each entry by factor of 2 and 4 for 36 and 18 bin
26
// cases. Other options will be implemented later
27
//
28
// http://ecal-od-software.web.cern.ch/ecal-od-software/documents/documents/cal_newedm_roadmap_v1_0.pdf
29
// Eta mapping:
30
// ieta - [-41,-1]+[1,41] - total 82 bins
31
// calo tower gives eta of the ceneter of each bin
32
// size:
33
// 0.087 - [-20,-1]+[1,20]
34
// the rest have variable size from 0.09-0.30
35
// Phi mapping:
36
// iphi - [1-72]
37
// calo tower gives phi of the center of each bin
38
// for |ieta|<=20 phi bins are all of the same size
39
// iphi 36-37 transition corresponds to 3.1 -> -3.1 transition
40
// for 20 < |ieta| < 40
41
// there are only 36 active bins corresponding to odd numbers
42
// iphi 35->37, corresponds to 3.05 -> -3.05 transition
43
// for |ieta| >= 40
44
// there are only 18 active bins 3,7,11,15 etc
45
// iphi 31 -> 35, corresponds to 2.79253 -> -3.14159 transition
46
47
namespace
fireworks {
48
std::vector<std::pair<double,double> >
49
thetaBins
()
50
{
51
const
int
n_bins =
fw3dlego::xbins_n
- 1;
52
std::vector<std::pair<double,double> >
thetaBins
(n_bins);
53
for
(
int
i
= 0;
i
< n_bins; ++
i
)
54
{
55
thetaBins[
i
].first = 2*atan(
exp
(-
fw3dlego::xbins
[
i
]) );
56
thetaBins[
i
].second = 2*atan(
exp
(-
fw3dlego::xbins
[i+1]) );
57
}
58
return
thetaBins
;
59
}
60
}
math.h
i
int i
Definition:
DBlmapReader.cc:9
create_public_lumi_plots.exp
tuple exp
Definition:
create_public_lumi_plots.py:1093
fw3dlego_xbins.h
thetaBins.h
fw3dlego::xbins
const double xbins[]
Definition:
fw3dlego_xbins.cc:18
fireworks::thetaBins
std::vector< std::pair< double, double > > thetaBins()
Definition:
thetaBins.cc:49
fw3dlego::xbins_n
const int xbins_n
Definition:
fw3dlego_xbins.cc:17
Generated for CMSSW Reference Manual by
1.8.5