Skip to content

Commit 387021e

Browse files
committed
Move BTL phi order from 0 to 2pi to -pi to +pi
1 parent c32dd11 commit 387021e

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

Geometry/MTDNumberingBuilder/plugins/CmsMTDConstruction.cc

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@
99
#include "DataFormats/ForwardDetId/interface/ETLDetId.h"
1010
#include "Geometry/MTDCommonData/interface/MTDBaseNumber.h"
1111

12-
#include "DataFormats/Math/interface/deltaPhi.h"
13-
1412
using angle_units::operators::convertRadToDeg;
1513

1614
template <class FilteredView>
@@ -39,14 +37,14 @@ bool CmsMTDConstruction<FilteredView>::mtdOrderPhi(const GeometricTimingDet* a,
3937

4038
template <class FilteredView>
4139
bool CmsMTDConstruction<FilteredView>::btlOrderPhi(const GeometricTimingDet* a, const GeometricTimingDet* b) {
42-
return static_cast<int>(convertRadToDeg(angle0to2pi::make0To2pi(a->phi()))) <
43-
static_cast<int>(convertRadToDeg(angle0to2pi::make0To2pi(b->phi())));
40+
return static_cast<int>(convertRadToDeg(makempiToppi(a->phi()))) <
41+
static_cast<int>(convertRadToDeg(makempiToppi(b->phi())));
4442
}
4543

4644
template <class FilteredView>
4745
bool CmsMTDConstruction<FilteredView>::btlOrderZ(const GeometricTimingDet* a, const GeometricTimingDet* b) {
48-
bool order = (static_cast<int>(convertRadToDeg(angle0to2pi::make0To2pi(a->phi()))) ==
49-
static_cast<int>(convertRadToDeg(angle0to2pi::make0To2pi(b->phi())))) &&
46+
bool order = (static_cast<int>(convertRadToDeg(makempiToppi(a->phi()))) ==
47+
static_cast<int>(convertRadToDeg(makempiToppi(b->phi())))) &&
5048
(a->translation().z() < b->translation().z());
5149
return order;
5250
}

Geometry/MTDNumberingBuilder/plugins/CmsMTDConstruction.h

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,19 @@
77
#include "Geometry/MTDCommonData/interface/BTLNumberingScheme.h"
88
#include "Geometry/MTDCommonData/interface/ETLNumberingScheme.h"
99

10+
#include "DataFormats/Math/interface/deltaPhi.h"
11+
12+
namespace {
13+
14+
template <class valType>
15+
inline constexpr valType makempiToppi(valType angle) {
16+
constexpr valType twoPi = 2. * M_PI;
17+
constexpr valType epsilon = 1.e-13;
18+
auto tmpphi = angle0to2pi::make0To2pi(angle);
19+
return (tmpphi - M_PI > epsilon) ? tmpphi - twoPi : tmpphi;
20+
}
21+
} // namespace
22+
1023
/**
1124
* Adds GeometricTimingDets representing final modules to the previous level
1225
*/

0 commit comments

Comments
 (0)