CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes | Private Attributes
CSCOverlapsAlignmentAlgorithm Class Reference

#include <Alignment/CSCOverlapsAlignmentAlgorithm/interface/CSCOverlapsAlignmentAlgorithm.h>

Inheritance diagram for CSCOverlapsAlignmentAlgorithm:
AlignmentAlgorithmBase

Public Member Functions

 CSCOverlapsAlignmentAlgorithm (const edm::ParameterSet &iConfig)
 
void initialize (const edm::EventSetup &iSetup, AlignableTracker *alignableTracker, AlignableMuon *alignableMuon, AlignableExtras *alignableExtras, AlignmentParameterStore *alignmentParameterStore) override
 Call at beginning of job (must be implemented in derived class) More...
 
void run (const edm::EventSetup &iSetup, const EventInfo &eventInfo) override
 Run the algorithm (must be implemented in derived class) More...
 
void terminate (const edm::EventSetup &iSetup) override
 Call at end of each loop (must be implemented in derived class) More...
 
 ~CSCOverlapsAlignmentAlgorithm () override
 
- Public Member Functions inherited from AlignmentAlgorithmBase
virtual bool addCalibrations (const Calibrations &)
 
bool addCalibrations (const CalibrationsOwner &cals)
 
 AlignmentAlgorithmBase (const edm::ParameterSet &)
 Constructor. More...
 
virtual void beginLuminosityBlock (const edm::EventSetup &setup)
 called at begin of luminosity block (no lumi block info passed yet) More...
 
virtual void beginRun (const edm::Run &, const edm::EventSetup &, bool changed)
 called at begin of run More...
 
virtual void endLuminosityBlock (const edm::EventSetup &setup)
 called at end of luminosity block (no lumi block info passed yet) More...
 
virtual void endRun (const EndRunInfo &runInfo, const edm::EventSetup &setup)
 called at end of run - order of arguments like in EDProducer etc. More...
 
virtual bool processesEvents ()
 Returns whether algorithm proccesses events in current configuration. More...
 
virtual bool setParametersForRunRange (const RunRange &rr)
 
virtual void startNewLoop ()
 
virtual bool storeAlignments ()
 Returns whether algorithm produced results to be stored. More...
 
virtual bool supportsCalibrations ()
 
virtual void terminate ()
 Called at end of job (must be implemented in derived class) More...
 
virtual ~AlignmentAlgorithmBase ()
 Destructor. More...
 

Public Attributes

bool m_combineME11
 
TH1F * m_drdz
 
bool m_errorFromRMS
 
bool m_fiducial
 
TProfile * m_fiducial_ME11
 
TProfile * m_fiducial_ME12
 
TProfile * m_fiducial_MEx1
 
TProfile * m_fiducial_MEx2
 
TH1F * m_hitsPerChamber
 
bool m_makeHistograms
 
double m_maxdrdz
 
int m_minHitsPerChamber
 
int m_minStationsInTrackRefits
 
int m_minTracksPerOverlap
 
int m_mode
 
TH2F * m_occupancy
 
TH1F * m_offsetResiduals
 
TH1F * m_offsetResiduals_normalized
 
TH1F * m_offsetResiduals_weighted
 
TH2F * m_RPhipos_mem1
 
TH2F * m_RPhipos_mem2
 
TH2F * m_RPhipos_mem3
 
TH2F * m_RPhipos_mem4
 
TH2F * m_RPhipos_mep1
 
TH2F * m_RPhipos_mep2
 
TH2F * m_RPhipos_mep3
 
TH2F * m_RPhipos_mep4
 
TH1F * m_slope
 
TH1F * m_slope_MEm1
 
TH1F * m_slope_MEm2
 
TH1F * m_slope_MEm3
 
TH1F * m_slope_MEm4
 
TH1F * m_slope_MEp1
 
TH1F * m_slope_MEp2
 
TH1F * m_slope_MEp3
 
TH1F * m_slope_MEp4
 
bool m_slopeFromTrackRefit
 
TH1F * m_slopeResiduals
 
TH1F * m_slopeResiduals_normalized
 
TH1F * m_slopeResiduals_weighted
 
double m_truncateOffsetResid
 
double m_truncateSlopeResid
 
bool m_useHitWeights
 
bool m_useTrackWeights
 
TH2F * m_XYpos_mem1
 
TH2F * m_XYpos_mem2
 
TH2F * m_XYpos_mem3
 
TH2F * m_XYpos_mem4
 
TH2F * m_XYpos_mep1
 
TH2F * m_XYpos_mep2
 
TH2F * m_XYpos_mep3
 
TH2F * m_XYpos_mep4
 

Private Attributes

AlignableNavigatorm_alignableNavigator
 
align::Alignables m_alignables
 
AlignmentParameterStorem_alignmentParameterStore
 
bool m_doAlignment
 
std::vector< CSCChamberFitterm_fitters
 
TH1F * m_histP10
 
TH1F * m_histP100
 
TH1F * m_histP1000
 
double m_maxRedChi2
 
double m_minP
 
std::string m_mode_string
 
std::string m_propagatorName
 
const Propagatorm_propagatorPointer
 
std::map< std::pair< CSCDetId, CSCDetId >, CSCPairResidualsConstraint * > m_quickChamberLookup
 
std::vector< std::string > m_readTemporaryFiles
 
std::string m_reportFileName
 
std::vector< CSCPairResidualsConstraint * > m_residualsConstraints
 
TrackTransformerm_trackTransformer
 
std::string m_writeTemporaryFile
 

Additional Inherited Members

- Public Types inherited from AlignmentAlgorithmBase
typedef std::pair< const Trajectory *, const reco::Track * > ConstTrajTrackPair
 
typedef std::vector< ConstTrajTrackPairConstTrajTrackPairCollection
 
using RunNumber = align::RunNumber
 
using RunRange = align::RunRange
 

Detailed Description

Description: <one line="" class="" summary>="">

Implementation: <Notes on="" implementation>="">

Definition at line 61 of file CSCOverlapsAlignmentAlgorithm.h.

Constructor & Destructor Documentation

◆ CSCOverlapsAlignmentAlgorithm()

CSCOverlapsAlignmentAlgorithm::CSCOverlapsAlignmentAlgorithm ( const edm::ParameterSet iConfig)

Definition at line 3 of file CSCOverlapsAlignmentAlgorithm.cc.

4  : AlignmentAlgorithmBase(iConfig),
5  m_minHitsPerChamber(iConfig.getParameter<int>("minHitsPerChamber")),
6  m_maxdrdz(iConfig.getParameter<double>("maxdrdz")),
7  m_fiducial(iConfig.getParameter<bool>("fiducial")),
8  m_useHitWeights(iConfig.getParameter<bool>("useHitWeights")),
9  m_slopeFromTrackRefit(iConfig.getParameter<bool>("slopeFromTrackRefit")),
10  m_minStationsInTrackRefits(iConfig.getParameter<int>("minStationsInTrackRefits")),
11  m_truncateSlopeResid(iConfig.getParameter<double>("truncateSlopeResid")),
12  m_truncateOffsetResid(iConfig.getParameter<double>("truncateOffsetResid")),
13  m_combineME11(iConfig.getParameter<bool>("combineME11")),
14  m_useTrackWeights(iConfig.getParameter<bool>("useTrackWeights")),
15  m_errorFromRMS(iConfig.getParameter<bool>("errorFromRMS")),
16  m_minTracksPerOverlap(iConfig.getParameter<int>("minTracksPerOverlap")),
17  m_makeHistograms(iConfig.getParameter<bool>("makeHistograms")),
18  m_mode_string(iConfig.getParameter<std::string>("mode")),
19  m_reportFileName(iConfig.getParameter<std::string>("reportFileName")),
20  m_minP(iConfig.getParameter<double>("minP")),
21  m_maxRedChi2(iConfig.getParameter<double>("maxRedChi2")),
22  m_writeTemporaryFile(iConfig.getParameter<std::string>("writeTemporaryFile")),
23  m_readTemporaryFiles(iConfig.getParameter<std::vector<std::string> >("readTemporaryFiles")),
24  m_doAlignment(iConfig.getParameter<bool>("doAlignment")) {
25  if (m_mode_string == std::string("phiy"))
27  else if (m_mode_string == std::string("phipos"))
29  else if (m_mode_string == std::string("phiz"))
31  else if (m_mode_string == std::string("radius"))
33  else
34  throw cms::Exception("BadConfig") << "mode must be one of \"phiy\", \"phipos\", \"phiz\", \"radius\"" << std::endl;
35 
36  std::vector<edm::ParameterSet> fitters = iConfig.getParameter<std::vector<edm::ParameterSet> >("fitters");
37  for (std::vector<edm::ParameterSet>::const_iterator fitter = fitters.begin(); fitter != fitters.end(); ++fitter) {
39  }
40 
41  for (std::vector<CSCPairResidualsConstraint*>::const_iterator residualsConstraint = m_residualsConstraints.begin();
42  residualsConstraint != m_residualsConstraints.end();
43  ++residualsConstraint) {
44  (*residualsConstraint)->configure(this);
45  m_quickChamberLookup[std::pair<CSCDetId, CSCDetId>((*residualsConstraint)->id_i(), (*residualsConstraint)->id_j())] =
46  *residualsConstraint;
47  }
48 
50  m_trackTransformer = new TrackTransformer(iConfig.getParameter<edm::ParameterSet>("TrackTransformer"));
52  iConfig.getParameter<edm::ParameterSet>("TrackTransformer").getParameter<std::string>("Propagator");
53  } else {
54  m_trackTransformer = nullptr;
56  }
57 
58  m_propagatorPointer = nullptr;
59 
60  if (m_makeHistograms) {
61  edm::Service<TFileService> tFileService;
62  m_histP10 = tFileService->make<TH1F>("P10", "", 100, 0, 10);
63  m_histP100 = tFileService->make<TH1F>("P100", "", 100, 0, 100);
64  m_histP1000 = tFileService->make<TH1F>("P1000", "", 100, 0, 1000);
65 
66  m_hitsPerChamber = tFileService->make<TH1F>("hitsPerChamber", "", 10, -0.5, 9.5);
67 
68  m_fiducial_ME11 = tFileService->make<TProfile>("fiducial_ME11", "", 100, 0.075, 0.100);
69  m_fiducial_ME12 = tFileService->make<TProfile>("fiducial_ME12", "", 100, 0.080, 0.105);
70  m_fiducial_MEx1 = tFileService->make<TProfile>("fiducial_MEx1", "", 100, 0.160, 0.210);
71  m_fiducial_MEx2 = tFileService->make<TProfile>("fiducial_MEx2", "", 100, 0.080, 0.105);
72 
73  m_slope = tFileService->make<TH1F>("slope", "", 100, -0.5, 0.5);
74  m_slope_MEp4 = tFileService->make<TH1F>("slope_MEp4", "", 100, -0.5, 0.5);
75  m_slope_MEp3 = tFileService->make<TH1F>("slope_MEp3", "", 100, -0.5, 0.5);
76  m_slope_MEp2 = tFileService->make<TH1F>("slope_MEp2", "", 100, -0.5, 0.5);
77  m_slope_MEp1 = tFileService->make<TH1F>("slope_MEp1", "", 100, -0.5, 0.5);
78  m_slope_MEm1 = tFileService->make<TH1F>("slope_MEm1", "", 100, -0.5, 0.5);
79  m_slope_MEm2 = tFileService->make<TH1F>("slope_MEm2", "", 100, -0.5, 0.5);
80  m_slope_MEm3 = tFileService->make<TH1F>("slope_MEm3", "", 100, -0.5, 0.5);
81  m_slope_MEm4 = tFileService->make<TH1F>("slope_MEm4", "", 100, -0.5, 0.5);
82 
83  m_slopeResiduals = tFileService->make<TH1F>("slopeResiduals", "mrad", 300, -30., 30.);
84  m_slopeResiduals_weighted = tFileService->make<TH1F>("slopeResiduals_weighted", "mrad", 300, -30., 30.);
85  m_slopeResiduals_normalized = tFileService->make<TH1F>("slopeResiduals_normalized", "", 200, -20., 20.);
86  m_offsetResiduals = tFileService->make<TH1F>("offsetResiduals", "mm", 300, -30., 30.);
87  m_offsetResiduals_weighted = tFileService->make<TH1F>("offsetResiduals_weighted", "mm", 300, -30., 30.);
88  m_offsetResiduals_normalized = tFileService->make<TH1F>("offsetResiduals_normalized", "", 200, -20., 20.);
89 
90  m_drdz = tFileService->make<TH1F>("drdz", "", 100, -0.5, 0.5);
91 
92  m_occupancy = tFileService->make<TH2F>("occupancy", "", 36, 1, 37, 20, 1, 21);
93  for (int i = 1; i <= 36; i++) {
94  std::stringstream pairname;
95  pairname << i << "-";
96  if (i + 1 == 37)
97  pairname << 1;
98  else
99  pairname << (i + 1);
100  m_occupancy->GetXaxis()->SetBinLabel(i, pairname.str().c_str());
101  }
102  m_occupancy->GetYaxis()->SetBinLabel(1, "ME-4/2");
103  m_occupancy->GetYaxis()->SetBinLabel(2, "ME-4/1");
104  m_occupancy->GetYaxis()->SetBinLabel(3, "ME-3/2");
105  m_occupancy->GetYaxis()->SetBinLabel(4, "ME-3/1");
106  m_occupancy->GetYaxis()->SetBinLabel(5, "ME-2/2");
107  m_occupancy->GetYaxis()->SetBinLabel(6, "ME-2/1");
108  m_occupancy->GetYaxis()->SetBinLabel(7, "ME-1/3");
109  m_occupancy->GetYaxis()->SetBinLabel(8, "ME-1/2");
110  if (!m_combineME11) {
111  m_occupancy->GetYaxis()->SetBinLabel(9, "ME-1/1b");
112  m_occupancy->GetYaxis()->SetBinLabel(10, "ME-1/1a");
113  m_occupancy->GetYaxis()->SetBinLabel(11, "ME+1/1a");
114  m_occupancy->GetYaxis()->SetBinLabel(12, "ME+1/1b");
115  } else {
116  m_occupancy->GetYaxis()->SetBinLabel(9, "ME-1/1");
117  m_occupancy->GetYaxis()->SetBinLabel(10, "");
118  m_occupancy->GetYaxis()->SetBinLabel(11, "");
119  m_occupancy->GetYaxis()->SetBinLabel(12, "ME+1/1");
120  }
121  m_occupancy->GetYaxis()->SetBinLabel(13, "ME+1/2");
122  m_occupancy->GetYaxis()->SetBinLabel(14, "ME+1/3");
123  m_occupancy->GetYaxis()->SetBinLabel(15, "ME+2/1");
124  m_occupancy->GetYaxis()->SetBinLabel(16, "ME+2/2");
125  m_occupancy->GetYaxis()->SetBinLabel(17, "ME+3/1");
126  m_occupancy->GetYaxis()->SetBinLabel(18, "ME+3/2");
127  m_occupancy->GetYaxis()->SetBinLabel(19, "ME+4/1");
128  m_occupancy->GetYaxis()->SetBinLabel(20, "ME+4/2");
129 
130  m_XYpos_mep1 = tFileService->make<TH2F>("XYpos_mep1", "Positions: ME+1", 140, -700., 700., 140, -700., 700.);
131  m_XYpos_mep2 = tFileService->make<TH2F>("XYpos_mep2", "Positions: ME+2", 140, -700., 700., 140, -700., 700.);
132  m_XYpos_mep3 = tFileService->make<TH2F>("XYpos_mep3", "Positions: ME+3", 140, -700., 700., 140, -700., 700.);
133  m_XYpos_mep4 = tFileService->make<TH2F>("XYpos_mep4", "Positions: ME+4", 140, -700., 700., 140, -700., 700.);
134  m_XYpos_mem1 = tFileService->make<TH2F>("XYpos_mem1", "Positions: ME-1", 140, -700., 700., 140, -700., 700.);
135  m_XYpos_mem2 = tFileService->make<TH2F>("XYpos_mem2", "Positions: ME-2", 140, -700., 700., 140, -700., 700.);
136  m_XYpos_mem3 = tFileService->make<TH2F>("XYpos_mem3", "Positions: ME-3", 140, -700., 700., 140, -700., 700.);
137  m_XYpos_mem4 = tFileService->make<TH2F>("XYpos_mem4", "Positions: ME-4", 140, -700., 700., 140, -700., 700.);
138  m_RPhipos_mep1 = tFileService->make<TH2F>("RPhipos_mep1", "Positions: ME+1", 144, -M_PI, M_PI, 21, 0., 700.);
139  m_RPhipos_mep2 = tFileService->make<TH2F>("RPhipos_mep2", "Positions: ME+2", 144, -M_PI, M_PI, 21, 0., 700.);
140  m_RPhipos_mep3 = tFileService->make<TH2F>("RPhipos_mep3", "Positions: ME+3", 144, -M_PI, M_PI, 21, 0., 700.);
141  m_RPhipos_mep4 = tFileService->make<TH2F>("RPhipos_mep4", "Positions: ME+4", 144, -M_PI, M_PI, 21, 0., 700.);
142  m_RPhipos_mem1 = tFileService->make<TH2F>("RPhipos_mem1", "Positions: ME-1", 144, -M_PI, M_PI, 21, 0., 700.);
143  m_RPhipos_mem2 = tFileService->make<TH2F>("RPhipos_mem2", "Positions: ME-2", 144, -M_PI, M_PI, 21, 0., 700.);
144  m_RPhipos_mem3 = tFileService->make<TH2F>("RPhipos_mem3", "Positions: ME-3", 144, -M_PI, M_PI, 21, 0., 700.);
145  m_RPhipos_mem4 = tFileService->make<TH2F>("RPhipos_mem4", "Positions: ME-4", 144, -M_PI, M_PI, 21, 0., 700.);
146  } else {
147  m_histP10 = nullptr;
148  m_histP100 = nullptr;
149  m_histP1000 = nullptr;
150  m_hitsPerChamber = nullptr;
151  m_fiducial_ME11 = nullptr;
152  m_fiducial_ME12 = nullptr;
153  m_fiducial_MEx1 = nullptr;
154  m_fiducial_MEx2 = nullptr;
155  m_slope = nullptr;
156  m_slope_MEp4 = nullptr;
157  m_slope_MEp3 = nullptr;
158  m_slope_MEp2 = nullptr;
159  m_slope_MEp1 = nullptr;
160  m_slope_MEm1 = nullptr;
161  m_slope_MEm2 = nullptr;
162  m_slope_MEm3 = nullptr;
163  m_slope_MEm4 = nullptr;
164  m_slopeResiduals = nullptr;
165  m_slopeResiduals_weighted = nullptr;
166  m_slopeResiduals_normalized = nullptr;
167  m_offsetResiduals = nullptr;
168  m_offsetResiduals_weighted = nullptr;
170  m_drdz = nullptr;
171  m_occupancy = nullptr;
172  m_XYpos_mep1 = nullptr;
173  m_XYpos_mep2 = nullptr;
174  m_XYpos_mep3 = nullptr;
175  m_XYpos_mep4 = nullptr;
176  m_XYpos_mem1 = nullptr;
177  m_XYpos_mem2 = nullptr;
178  m_XYpos_mem3 = nullptr;
179  m_XYpos_mem4 = nullptr;
180  m_RPhipos_mep1 = nullptr;
181  m_RPhipos_mep2 = nullptr;
182  m_RPhipos_mep3 = nullptr;
183  m_RPhipos_mep4 = nullptr;
184  m_RPhipos_mem1 = nullptr;
185  m_RPhipos_mem2 = nullptr;
186  m_RPhipos_mem3 = nullptr;
187  m_RPhipos_mem4 = nullptr;
188  }
189 }

References Exception, alignBH_cfg::fitters, edm::ParameterSet::getParameter(), mps_fire::i, CSCPairResidualsConstraint::kModePhiPos, CSCPairResidualsConstraint::kModePhiy, CSCPairResidualsConstraint::kModePhiz, CSCPairResidualsConstraint::kModeRadius, m_combineME11, m_drdz, m_fiducial_ME11, m_fiducial_ME12, m_fiducial_MEx1, m_fiducial_MEx2, m_fitters, m_histP10, m_histP100, m_histP1000, m_hitsPerChamber, m_makeHistograms, m_mode, m_mode_string, m_occupancy, m_offsetResiduals, m_offsetResiduals_normalized, m_offsetResiduals_weighted, M_PI, m_propagatorName, m_propagatorPointer, m_quickChamberLookup, m_residualsConstraints, m_RPhipos_mem1, m_RPhipos_mem2, m_RPhipos_mem3, m_RPhipos_mem4, m_RPhipos_mep1, m_RPhipos_mep2, m_RPhipos_mep3, m_RPhipos_mep4, m_slope, m_slope_MEm1, m_slope_MEm2, m_slope_MEm3, m_slope_MEm4, m_slope_MEp1, m_slope_MEp2, m_slope_MEp3, m_slope_MEp4, m_slopeFromTrackRefit, m_slopeResiduals, m_slopeResiduals_normalized, m_slopeResiduals_weighted, m_trackTransformer, m_XYpos_mem1, m_XYpos_mem2, m_XYpos_mem3, m_XYpos_mem4, m_XYpos_mep1, m_XYpos_mep2, m_XYpos_mep3, m_XYpos_mep4, TFileService::make(), AlCaHLTBitMon_QueryRunRegistry::string, and HLT_FULL_cff::TrackTransformer.

◆ ~CSCOverlapsAlignmentAlgorithm()

CSCOverlapsAlignmentAlgorithm::~CSCOverlapsAlignmentAlgorithm ( )
override

Definition at line 191 of file CSCOverlapsAlignmentAlgorithm.cc.

191 {}

Member Function Documentation

◆ initialize()

void CSCOverlapsAlignmentAlgorithm::initialize ( const edm::EventSetup setup,
AlignableTracker tracker,
AlignableMuon muon,
AlignableExtras extras,
AlignmentParameterStore store 
)
overridevirtual

Call at beginning of job (must be implemented in derived class)

Implements AlignmentAlgorithmBase.

Definition at line 193 of file CSCOverlapsAlignmentAlgorithm.cc.

197  {
198  m_alignmentParameterStore = alignmentParameterStore;
200 
201  if (alignableTracker == nullptr)
202  m_alignableNavigator = new AlignableNavigator(alignableMuon);
203  else
204  m_alignableNavigator = new AlignableNavigator(alignableTracker, alignableMuon);
205 
206  for (const auto& alignable : m_alignables) {
207  DetId id = alignable->geomDetId();
208  if (id.det() != DetId::Muon || id.subdetId() != MuonSubdetId::CSC || CSCDetId(id.rawId()).layer() != 0) {
209  throw cms::Exception("BadConfig") << "Only CSC chambers may be alignable" << std::endl;
210  }
211 
212  std::vector<bool> selector = alignable->alignmentParameters()->selector();
213  for (std::vector<bool>::const_iterator i = selector.begin(); i != selector.end(); ++i) {
214  if (!(*i))
215  throw cms::Exception("BadConfig") << "All selector strings should be \"111111\"" << std::endl;
216  }
217  }
218 
219  edm::ESHandle<CSCGeometry> cscGeometry;
220  iSetup.get<MuonGeometryRecord>().get(cscGeometry);
221 
222  for (std::vector<CSCPairResidualsConstraint*>::const_iterator residualsConstraint = m_residualsConstraints.begin();
223  residualsConstraint != m_residualsConstraints.end();
224  ++residualsConstraint) {
225  (*residualsConstraint)->setZplane(&*cscGeometry);
226  }
227 
228  if (!m_readTemporaryFiles.empty()) {
229  std::vector<std::ifstream*> input;
230  for (std::vector<std::string>::const_iterator fileName = m_readTemporaryFiles.begin();
232  ++fileName) {
233  input.push_back(new std::ifstream(fileName->c_str()));
234  }
235 
236  for (std::vector<CSCPairResidualsConstraint*>::const_iterator residualsConstraint = m_residualsConstraints.begin();
237  residualsConstraint != m_residualsConstraints.end();
238  ++residualsConstraint) {
239  (*residualsConstraint)->read(input, m_readTemporaryFiles);
240  }
241 
242  for (std::vector<std::ifstream*>::const_iterator file = input.begin(); file != input.end(); ++file) {
243  delete (*file);
244  }
245  }
246 }

References AlignmentParameterStore::alignables(), MuonSubdetId::CSC, Exception, FrontierConditions_GlobalTag_cff::file, MillePedeFileConverter_cfg::fileName, edm::EventSetup::get(), get, mps_fire::i, input, m_alignableNavigator, m_alignables, m_alignmentParameterStore, m_readTemporaryFiles, m_residualsConstraints, and DetId::Muon.

◆ run()

void CSCOverlapsAlignmentAlgorithm::run ( const edm::EventSetup setup,
const EventInfo eventInfo 
)
overridevirtual

Run the algorithm (must be implemented in derived class)

Implements AlignmentAlgorithmBase.

Definition at line 248 of file CSCOverlapsAlignmentAlgorithm.cc.

248  {
250  if (m_slopeFromTrackRefit) {
252  if (m_propagatorPointer != &*propagator) {
254 
255  for (std::vector<CSCPairResidualsConstraint*>::const_iterator residualsConstraint =
256  m_residualsConstraints.begin();
257  residualsConstraint != m_residualsConstraints.end();
258  ++residualsConstraint) {
259  (*residualsConstraint)->setPropagator(m_propagatorPointer);
260  }
261  }
262  }
263 
264  edm::ESHandle<TransientTrackBuilder> transientTrackBuilder;
265  iSetup.get<TransientTrackRecord>().get("TransientTrackBuilder", transientTrackBuilder);
266 
267  if (m_trackTransformer != nullptr)
269 
270  const ConstTrajTrackPairCollection& trajtracks = eventInfo.trajTrackPairs();
271  for (ConstTrajTrackPairCollection::const_iterator trajtrack = trajtracks.begin(); trajtrack != trajtracks.end();
272  ++trajtrack) {
273  const Trajectory* traj = (*trajtrack).first;
274  const reco::Track* track = (*trajtrack).second;
275 
276  if (m_makeHistograms) {
277  m_histP10->Fill(track->p());
278  m_histP100->Fill(track->p());
279  m_histP1000->Fill(track->p());
280  }
281  if (track->p() >= m_minP) {
282  std::vector<TrajectoryMeasurement> measurements = traj->measurements();
283  reco::TransientTrack transientTrack = transientTrackBuilder->build(track);
284 
285  std::map<int, std::map<CSCDetId, bool> > stationsToChambers;
286  for (std::vector<TrajectoryMeasurement>::const_iterator measurement = measurements.begin();
287  measurement != measurements.end();
288  ++measurement) {
289  DetId id = measurement->recHit()->geographicalId();
290  if (id.det() == DetId::Muon && id.subdetId() == MuonSubdetId::CSC) {
291  CSCDetId cscid(id.rawId());
292  CSCDetId chamberId(cscid.endcap(), cscid.station(), cscid.ring(), cscid.chamber(), 0);
293  if (m_combineME11 && cscid.station() == 1 && cscid.ring() == 4)
294  chamberId = CSCDetId(cscid.endcap(), 1, 1, cscid.chamber(), 0);
295  int station = (cscid.endcap() == 1 ? 1 : -1) * cscid.station();
296 
297  if (stationsToChambers.find(station) == stationsToChambers.end())
298  stationsToChambers[station] = std::map<CSCDetId, bool>();
299  stationsToChambers[station][chamberId] = true;
300 
301  if (m_makeHistograms) {
302  GlobalPoint pos = measurement->recHit()->globalPosition();
303  if (cscid.endcap() == 1 && cscid.station() == 1) {
304  m_XYpos_mep1->Fill(pos.x(), pos.y());
305  m_RPhipos_mep1->Fill(pos.phi(), pos.perp());
306  }
307  if (cscid.endcap() == 1 && cscid.station() == 2) {
308  m_XYpos_mep2->Fill(pos.x(), pos.y());
309  m_RPhipos_mep2->Fill(pos.phi(), pos.perp());
310  }
311  if (cscid.endcap() == 1 && cscid.station() == 3) {
312  m_XYpos_mep3->Fill(pos.x(), pos.y());
313  m_RPhipos_mep3->Fill(pos.phi(), pos.perp());
314  }
315  if (cscid.endcap() == 1 && cscid.station() == 4) {
316  m_XYpos_mep4->Fill(pos.x(), pos.y());
317  m_RPhipos_mep4->Fill(pos.phi(), pos.perp());
318  }
319  if (cscid.endcap() == 2 && cscid.station() == 1) {
320  m_XYpos_mem1->Fill(pos.x(), pos.y());
321  m_RPhipos_mem1->Fill(pos.phi(), pos.perp());
322  }
323  if (cscid.endcap() == 2 && cscid.station() == 2) {
324  m_XYpos_mem2->Fill(pos.x(), pos.y());
325  m_RPhipos_mem2->Fill(pos.phi(), pos.perp());
326  }
327  if (cscid.endcap() == 2 && cscid.station() == 3) {
328  m_XYpos_mem3->Fill(pos.x(), pos.y());
329  m_RPhipos_mem3->Fill(pos.phi(), pos.perp());
330  }
331  if (cscid.endcap() == 2 && cscid.station() == 4) {
332  m_XYpos_mem4->Fill(pos.x(), pos.y());
333  m_RPhipos_mem4->Fill(pos.phi(), pos.perp());
334  }
335  }
336  }
337  }
338 
339  std::map<CSCPairResidualsConstraint*, bool> residualsConstraints;
340  for (std::map<int, std::map<CSCDetId, bool> >::const_iterator iter = stationsToChambers.begin();
341  iter != stationsToChambers.end();
342  ++iter) {
343  for (std::map<CSCDetId, bool>::const_iterator one = iter->second.begin(); one != iter->second.end(); ++one) {
344  for (std::map<CSCDetId, bool>::const_iterator two = one; two != iter->second.end(); ++two) {
345  if (one != two) {
346  std::map<std::pair<CSCDetId, CSCDetId>, CSCPairResidualsConstraint*>::const_iterator quick;
347 
348  quick = m_quickChamberLookup.find(std::pair<CSCDetId, CSCDetId>(one->first, two->first));
349  if (quick != m_quickChamberLookup.end())
350  residualsConstraints[quick->second] = true;
351 
352  quick = m_quickChamberLookup.find(std::pair<CSCDetId, CSCDetId>(two->first, one->first));
353  if (quick != m_quickChamberLookup.end())
354  residualsConstraints[quick->second] = true;
355  }
356  }
357  }
358  }
359 
360  for (std::map<CSCPairResidualsConstraint*, bool>::const_iterator residualsConstraint =
361  residualsConstraints.begin();
362  residualsConstraint != residualsConstraints.end();
363  ++residualsConstraint) {
364  residualsConstraint->first->addTrack(measurements, transientTrack, m_trackTransformer);
365  }
366  }
367  }
368 }

References TransientTrackBuilder::build(), CSCDetId::chamber(), MuonSubdetId::CSC, CSCDetId::endcap(), ZMuMuAnalysisNtupler_cff::eventInfo, edm::EventSetup::get(), get, m_combineME11, m_histP10, m_histP100, m_histP1000, m_makeHistograms, m_minP, m_propagatorName, m_propagatorPointer, m_quickChamberLookup, m_residualsConstraints, m_RPhipos_mem1, m_RPhipos_mem2, m_RPhipos_mem3, m_RPhipos_mem4, m_RPhipos_mep1, m_RPhipos_mep2, m_RPhipos_mep3, m_RPhipos_mep4, m_slopeFromTrackRefit, m_trackTransformer, m_XYpos_mem1, m_XYpos_mem2, m_XYpos_mem3, m_XYpos_mem4, m_XYpos_mep1, m_XYpos_mep2, m_XYpos_mep3, m_XYpos_mep4, genParticles_cff::map, Trajectory::measurements(), DetId::Muon, SiPixelPI::one, TrackCandidateProducer_cfi::propagator, CSCDetId::ring(), TrackTransformer::setServices(), relativeConstraints::station, CSCDetId::station(), HLT_FULL_cff::track, and SiPixelPI::two.

Referenced by DTWorkflow.DTWorkflow::all(), Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), and o2olib.O2OTool::execute().

◆ terminate()

void CSCOverlapsAlignmentAlgorithm::terminate ( const edm::EventSetup iSetup)
overridevirtual

Call at end of each loop (must be implemented in derived class)

Implements AlignmentAlgorithmBase.

Definition at line 370 of file CSCOverlapsAlignmentAlgorithm.cc.

370  {
371  // write residuals partial fits to temporary files for collection
372  if (m_writeTemporaryFile != std::string("")) {
373  std::ofstream output(m_writeTemporaryFile.c_str());
374  for (std::vector<CSCPairResidualsConstraint*>::const_iterator residualsConstraint = m_residualsConstraints.begin();
375  residualsConstraint != m_residualsConstraints.end();
376  ++residualsConstraint) {
377  (*residualsConstraint)->write(output);
378  }
379  }
380 
381  // write report for alignment results
382  if (m_doAlignment) {
383  std::ofstream report;
384  bool writeReport = (m_reportFileName != std::string(""));
385  if (writeReport) {
386  report.open(m_reportFileName.c_str());
387  report << "cscReports = []" << std::endl
388  << std::endl
389  << "class CSCChamberCorrection:" << std::endl
390  << " def __init__(self, name, detid, value):" << std::endl
391  << " self.name, self.detid, self.value = name, detid, value" << std::endl
392  << std::endl
393  << "class CSCErrorMode:" << std::endl
394  << " def __init__(self, error):" << std::endl
395  << " self.error = error" << std::endl
396  << " self.terms = {}" << std::endl
397  << " self.detids = {}" << std::endl
398  << " def addTerm(self, name, detid, coefficient):" << std::endl
399  << " self.terms[name] = coefficient" << std::endl
400  << " self.detids[name] = detid" << std::endl
401  << std::endl
402  << "class CSCConstraintResidual:" << std::endl
403  << " def __init__(self, i, j, before, uncert, residual, pull):" << std::endl
404  << " self.i, self.j, self.before, self.error, self.residual, self.pull = i, j, before, uncert, "
405  "residual, pull"
406  << std::endl
407  << std::endl
408  << "class CSCFitterReport:" << std::endl
409  << " def __init__(self, name, oldchi2, newchi2):" << std::endl
410  << " self.name, self.oldchi2, self.newchi2 = name, oldchi2, newchi2" << std::endl
411  << " self.chamberCorrections = []" << std::endl
412  << " self.errorModes = []" << std::endl
413  << " self.constraintResiduals = []" << std::endl
414  << std::endl
415  << " def addChamberCorrection(self, name, detid, value):" << std::endl
416  << " self.chamberCorrections.append(CSCChamberCorrection(name, detid, value))" << std::endl
417  << std::endl
418  << " def addErrorMode(self, error):" << std::endl
419  << " self.errorModes.append(CSCErrorMode(error))" << std::endl
420  << std::endl
421  << " def addErrorModeTerm(self, name, detid, coefficient):" << std::endl
422  << " self.errorModes[-1].addTerm(name, detid, coefficient)" << std::endl
423  << std::endl
424  << " def addCSCConstraintResidual(self, i, j, before, uncert, residual, pull):" << std::endl
425  << " self.constraintResiduals.append(CSCConstraintResidual(i, j, before, uncert, residual, pull))"
426  << std::endl
427  << std::endl
428  << "import re" << std::endl
429  << "def nameToKey(name):" << std::endl
430  << " match = re.match(\"ME([\\+\\-])([1-4])/([1-4])/([0-9]{2})\", name)" << std::endl
431  << " if match is None: return None" << std::endl
432  << " endcap, station, ring, chamber = match.groups()" << std::endl
433  << " if endcap == \"+\": endcap = 1" << std::endl
434  << " else: endcap = 2" << std::endl
435  << " station = int(station)" << std::endl
436  << " ring = int(ring)" << std::endl
437  << " chamber = int(chamber)" << std::endl
438  << " return endcap, station, ring, chamber" << std::endl
439  << std::endl;
440  }
441 
442  for (std::vector<CSCChamberFitter>::const_iterator fitter = m_fitters.begin(); fitter != m_fitters.end();
443  ++fitter) {
446 
447  } else {
448  std::vector<CSCAlignmentCorrections*> corrections;
449  fitter->fit(corrections);
450 
451  // corrections only exist if the fit was successful
452  for (std::vector<CSCAlignmentCorrections*>::iterator correction = corrections.begin();
453  correction != corrections.end();
454  ++correction) {
455  (*correction)->applyAlignment(m_alignableNavigator, m_alignmentParameterStore, m_mode, m_combineME11);
456  if (m_makeHistograms)
457  (*correction)->plot();
458  if (writeReport)
459  (*correction)->report(report);
460  }
461  }
462  }
463  }
464 }

References pfMETCorrectionType0_cfi::correction, CSCPairResidualsConstraint::kModeRadius, m_alignableNavigator, m_alignmentParameterStore, m_combineME11, m_doAlignment, m_fitters, m_makeHistograms, m_mode, m_reportFileName, m_residualsConstraints, m_writeTemporaryFile, convertSQLitetoXML_cfg::output, edmIntegrityCheck::report, and AlCaHLTBitMon_QueryRunRegistry::string.

Member Data Documentation

◆ m_alignableNavigator

AlignableNavigator* CSCOverlapsAlignmentAlgorithm::m_alignableNavigator
private

Definition at line 146 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by initialize(), and terminate().

◆ m_alignables

align::Alignables CSCOverlapsAlignmentAlgorithm::m_alignables
private

Definition at line 145 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by initialize().

◆ m_alignmentParameterStore

AlignmentParameterStore* CSCOverlapsAlignmentAlgorithm::m_alignmentParameterStore
private

Definition at line 144 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by initialize(), and terminate().

◆ m_combineME11

bool CSCOverlapsAlignmentAlgorithm::m_combineME11

◆ m_doAlignment

bool CSCOverlapsAlignmentAlgorithm::m_doAlignment
private

Definition at line 142 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by terminate().

◆ m_drdz

TH1F* CSCOverlapsAlignmentAlgorithm::m_drdz

◆ m_errorFromRMS

bool CSCOverlapsAlignmentAlgorithm::m_errorFromRMS

Definition at line 131 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCPairResidualsConstraint::error().

◆ m_fiducial

bool CSCOverlapsAlignmentAlgorithm::m_fiducial

◆ m_fiducial_ME11

TProfile* CSCOverlapsAlignmentAlgorithm::m_fiducial_ME11

◆ m_fiducial_ME12

TProfile* CSCOverlapsAlignmentAlgorithm::m_fiducial_ME12

◆ m_fiducial_MEx1

TProfile* CSCOverlapsAlignmentAlgorithm::m_fiducial_MEx1

◆ m_fiducial_MEx2

TProfile* CSCOverlapsAlignmentAlgorithm::m_fiducial_MEx2

◆ m_fitters

std::vector<CSCChamberFitter> CSCOverlapsAlignmentAlgorithm::m_fitters
private

Definition at line 147 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and terminate().

◆ m_histP10

TH1F* CSCOverlapsAlignmentAlgorithm::m_histP10
private

Definition at line 155 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_histP100

TH1F* CSCOverlapsAlignmentAlgorithm::m_histP100
private

Definition at line 156 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_histP1000

TH1F* CSCOverlapsAlignmentAlgorithm::m_histP1000
private

Definition at line 157 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_hitsPerChamber

TH1F* CSCOverlapsAlignmentAlgorithm::m_hitsPerChamber

◆ m_makeHistograms

bool CSCOverlapsAlignmentAlgorithm::m_makeHistograms

◆ m_maxdrdz

double CSCOverlapsAlignmentAlgorithm::m_maxdrdz

◆ m_maxRedChi2

double CSCOverlapsAlignmentAlgorithm::m_maxRedChi2
private

Definition at line 139 of file CSCOverlapsAlignmentAlgorithm.h.

◆ m_minHitsPerChamber

int CSCOverlapsAlignmentAlgorithm::m_minHitsPerChamber

◆ m_minP

double CSCOverlapsAlignmentAlgorithm::m_minP
private

Definition at line 138 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by run().

◆ m_minStationsInTrackRefits

int CSCOverlapsAlignmentAlgorithm::m_minStationsInTrackRefits

◆ m_minTracksPerOverlap

int CSCOverlapsAlignmentAlgorithm::m_minTracksPerOverlap

Definition at line 132 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCPairResidualsConstraint::valid().

◆ m_mode

int CSCOverlapsAlignmentAlgorithm::m_mode

◆ m_mode_string

std::string CSCOverlapsAlignmentAlgorithm::m_mode_string
private

Definition at line 136 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm().

◆ m_occupancy

TH2F* CSCOverlapsAlignmentAlgorithm::m_occupancy

◆ m_offsetResiduals

TH1F* CSCOverlapsAlignmentAlgorithm::m_offsetResiduals

◆ m_offsetResiduals_normalized

TH1F* CSCOverlapsAlignmentAlgorithm::m_offsetResiduals_normalized

◆ m_offsetResiduals_weighted

TH1F* CSCOverlapsAlignmentAlgorithm::m_offsetResiduals_weighted

◆ m_propagatorName

std::string CSCOverlapsAlignmentAlgorithm::m_propagatorName
private

Definition at line 152 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_propagatorPointer

const Propagator* CSCOverlapsAlignmentAlgorithm::m_propagatorPointer
private

Definition at line 153 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_quickChamberLookup

std::map<std::pair<CSCDetId, CSCDetId>, CSCPairResidualsConstraint *> CSCOverlapsAlignmentAlgorithm::m_quickChamberLookup
private

Definition at line 149 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_readTemporaryFiles

std::vector<std::string> CSCOverlapsAlignmentAlgorithm::m_readTemporaryFiles
private

Definition at line 141 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by initialize().

◆ m_reportFileName

std::string CSCOverlapsAlignmentAlgorithm::m_reportFileName
private

Definition at line 137 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by terminate().

◆ m_residualsConstraints

std::vector<CSCPairResidualsConstraint *> CSCOverlapsAlignmentAlgorithm::m_residualsConstraints
private

◆ m_RPhipos_mem1

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem1

Definition at line 115 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mem2

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem2

Definition at line 116 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mem3

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem3

Definition at line 117 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mem4

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem4

Definition at line 118 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mep1

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep1

Definition at line 111 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mep2

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep2

Definition at line 112 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mep3

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep3

Definition at line 113 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_RPhipos_mep4

TH2F* CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep4

Definition at line 114 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_slope

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope

◆ m_slope_MEm1

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEm1

◆ m_slope_MEm2

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEm2

◆ m_slope_MEm3

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEm3

◆ m_slope_MEm4

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEm4

◆ m_slope_MEp1

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEp1

◆ m_slope_MEp2

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEp2

◆ m_slope_MEp3

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEp3

◆ m_slope_MEp4

TH1F* CSCOverlapsAlignmentAlgorithm::m_slope_MEp4

◆ m_slopeFromTrackRefit

bool CSCOverlapsAlignmentAlgorithm::m_slopeFromTrackRefit

◆ m_slopeResiduals

TH1F* CSCOverlapsAlignmentAlgorithm::m_slopeResiduals

◆ m_slopeResiduals_normalized

TH1F* CSCOverlapsAlignmentAlgorithm::m_slopeResiduals_normalized

◆ m_slopeResiduals_weighted

TH1F* CSCOverlapsAlignmentAlgorithm::m_slopeResiduals_weighted

◆ m_trackTransformer

TrackTransformer* CSCOverlapsAlignmentAlgorithm::m_trackTransformer
private

Definition at line 151 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_truncateOffsetResid

double CSCOverlapsAlignmentAlgorithm::m_truncateOffsetResid

◆ m_truncateSlopeResid

double CSCOverlapsAlignmentAlgorithm::m_truncateSlopeResid

◆ m_useHitWeights

bool CSCOverlapsAlignmentAlgorithm::m_useHitWeights

◆ m_useTrackWeights

bool CSCOverlapsAlignmentAlgorithm::m_useTrackWeights

◆ m_writeTemporaryFile

std::string CSCOverlapsAlignmentAlgorithm::m_writeTemporaryFile
private

Definition at line 140 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by terminate().

◆ m_XYpos_mem1

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mem1

Definition at line 107 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mem2

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mem2

Definition at line 108 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mem3

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mem3

Definition at line 109 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mem4

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mem4

Definition at line 110 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mep1

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mep1

Definition at line 103 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mep2

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mep2

Definition at line 104 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mep3

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mep3

Definition at line 105 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

◆ m_XYpos_mep4

TH2F* CSCOverlapsAlignmentAlgorithm::m_XYpos_mep4

Definition at line 106 of file CSCOverlapsAlignmentAlgorithm.h.

Referenced by CSCOverlapsAlignmentAlgorithm(), and run().

CSCOverlapsAlignmentAlgorithm::m_slope_MEm4
TH1F * m_slope_MEm4
Definition: CSCOverlapsAlignmentAlgorithm.h:91
alignBH_cfg.fitters
fitters
Definition: alignBH_cfg.py:41
CSCOverlapsAlignmentAlgorithm::m_alignables
align::Alignables m_alignables
Definition: CSCOverlapsAlignmentAlgorithm.h:145
CSCOverlapsAlignmentAlgorithm::m_useTrackWeights
bool m_useTrackWeights
Definition: CSCOverlapsAlignmentAlgorithm.h:130
MuonSubdetId::CSC
static constexpr int CSC
Definition: MuonSubdetId.h:12
CSCOverlapsAlignmentAlgorithm::m_XYpos_mep2
TH2F * m_XYpos_mep2
Definition: CSCOverlapsAlignmentAlgorithm.h:104
CSCOverlapsAlignmentAlgorithm::m_offsetResiduals
TH1F * m_offsetResiduals
Definition: CSCOverlapsAlignmentAlgorithm.h:96
mps_fire.i
i
Definition: mps_fire.py:428
SiPixelPI::one
Definition: SiPixelPayloadInspectorHelper.h:39
AlignmentAlgorithmBase::ConstTrajTrackPairCollection
std::vector< ConstTrajTrackPair > ConstTrajTrackPairCollection
Definition: AlignmentAlgorithmBase.h:67
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11776
input
static const std::string input
Definition: EdmProvDump.cc:48
CSCOverlapsAlignmentAlgorithm::m_trackTransformer
TrackTransformer * m_trackTransformer
Definition: CSCOverlapsAlignmentAlgorithm.h:151
CSCOverlapsAlignmentAlgorithm::m_histP10
TH1F * m_histP10
Definition: CSCOverlapsAlignmentAlgorithm.h:155
CSCOverlapsAlignmentAlgorithm::m_reportFileName
std::string m_reportFileName
Definition: CSCOverlapsAlignmentAlgorithm.h:137
AlignmentParameterStore::alignables
const align::Alignables & alignables(void) const
get all alignables
Definition: AlignmentParameterStore.h:47
CSCOverlapsAlignmentAlgorithm::m_fitters
std::vector< CSCChamberFitter > m_fitters
Definition: CSCOverlapsAlignmentAlgorithm.h:147
CSCOverlapsAlignmentAlgorithm::m_fiducial_ME12
TProfile * m_fiducial_ME12
Definition: CSCOverlapsAlignmentAlgorithm.h:79
CSCOverlapsAlignmentAlgorithm::m_fiducial_ME11
TProfile * m_fiducial_ME11
Definition: CSCOverlapsAlignmentAlgorithm.h:78
TrackTransformer::setServices
void setServices(const edm::EventSetup &) override
set the services needed by the TrackTransformer
Definition: TrackTransformer.cc:79
convertSQLitetoXML_cfg.output
output
Definition: convertSQLitetoXML_cfg.py:72
relativeConstraints.station
station
Definition: relativeConstraints.py:67
CSCOverlapsAlignmentAlgorithm::m_maxdrdz
double m_maxdrdz
Definition: CSCOverlapsAlignmentAlgorithm.h:122
CSCOverlapsAlignmentAlgorithm::m_readTemporaryFiles
std::vector< std::string > m_readTemporaryFiles
Definition: CSCOverlapsAlignmentAlgorithm.h:141
CSCOverlapsAlignmentAlgorithm::m_propagatorName
std::string m_propagatorName
Definition: CSCOverlapsAlignmentAlgorithm.h:152
CSCOverlapsAlignmentAlgorithm::m_truncateSlopeResid
double m_truncateSlopeResid
Definition: CSCOverlapsAlignmentAlgorithm.h:127
pos
Definition: PixelAliasList.h:18
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep1
TH2F * m_RPhipos_mep1
Definition: CSCOverlapsAlignmentAlgorithm.h:111
CSCOverlapsAlignmentAlgorithm::m_histP1000
TH1F * m_histP1000
Definition: CSCOverlapsAlignmentAlgorithm.h:157
CSCOverlapsAlignmentAlgorithm::m_occupancy
TH2F * m_occupancy
Definition: CSCOverlapsAlignmentAlgorithm.h:102
CSCOverlapsAlignmentAlgorithm::m_makeHistograms
bool m_makeHistograms
Definition: CSCOverlapsAlignmentAlgorithm.h:133
CSCOverlapsAlignmentAlgorithm::m_quickChamberLookup
std::map< std::pair< CSCDetId, CSCDetId >, CSCPairResidualsConstraint * > m_quickChamberLookup
Definition: CSCOverlapsAlignmentAlgorithm.h:149
AlignmentAlgorithmBase::AlignmentAlgorithmBase
AlignmentAlgorithmBase(const edm::ParameterSet &)
Constructor.
Definition: AlignmentAlgorithmBase.h:114
MillePedeFileConverter_cfg.fileName
fileName
Definition: MillePedeFileConverter_cfg.py:32
CSCOverlapsAlignmentAlgorithm::m_XYpos_mep3
TH2F * m_XYpos_mep3
Definition: CSCOverlapsAlignmentAlgorithm.h:105
CSCOverlapsAlignmentAlgorithm::m_writeTemporaryFile
std::string m_writeTemporaryFile
Definition: CSCOverlapsAlignmentAlgorithm.h:140
CSCOverlapsAlignmentAlgorithm::m_minStationsInTrackRefits
int m_minStationsInTrackRefits
Definition: CSCOverlapsAlignmentAlgorithm.h:126
CSCOverlapsAlignmentAlgorithm::m_slope_MEm1
TH1F * m_slope_MEm1
Definition: CSCOverlapsAlignmentAlgorithm.h:88
CSCOverlapsAlignmentAlgorithm::m_truncateOffsetResid
double m_truncateOffsetResid
Definition: CSCOverlapsAlignmentAlgorithm.h:128
CSCOverlapsAlignmentAlgorithm::m_alignmentParameterStore
AlignmentParameterStore * m_alignmentParameterStore
Definition: CSCOverlapsAlignmentAlgorithm.h:144
DetId
Definition: DetId.h:17
CSCOverlapsAlignmentAlgorithm::m_fiducial_MEx2
TProfile * m_fiducial_MEx2
Definition: CSCOverlapsAlignmentAlgorithm.h:81
CSCOverlapsAlignmentAlgorithm::m_slopeResiduals
TH1F * m_slopeResiduals
Definition: CSCOverlapsAlignmentAlgorithm.h:93
CSCOverlapsAlignmentAlgorithm::m_drdz
TH1F * m_drdz
Definition: CSCOverlapsAlignmentAlgorithm.h:100
CSCOverlapsAlignmentAlgorithm::m_slope_MEp3
TH1F * m_slope_MEp3
Definition: CSCOverlapsAlignmentAlgorithm.h:85
TrackCandidateProducer_cfi.propagator
propagator
Definition: TrackCandidateProducer_cfi.py:17
CSCOverlapsAlignmentAlgorithm::m_slopeResiduals_weighted
TH1F * m_slopeResiduals_weighted
Definition: CSCOverlapsAlignmentAlgorithm.h:94
CSCOverlapsAlignmentAlgorithm::m_mode_string
std::string m_mode_string
Definition: CSCOverlapsAlignmentAlgorithm.h:136
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem4
TH2F * m_RPhipos_mem4
Definition: CSCOverlapsAlignmentAlgorithm.h:118
CSCOverlapsAlignmentAlgorithm::m_minP
double m_minP
Definition: CSCOverlapsAlignmentAlgorithm.h:138
TransientTrackRecord
Definition: TransientTrackRecord.h:11
reco::Track
Definition: Track.h:27
edm::ESHandle< CSCGeometry >
CSCOverlapsAlignmentAlgorithm::m_propagatorPointer
const Propagator * m_propagatorPointer
Definition: CSCOverlapsAlignmentAlgorithm.h:153
CSCOverlapsAlignmentAlgorithm::m_offsetResiduals_weighted
TH1F * m_offsetResiduals_weighted
Definition: CSCOverlapsAlignmentAlgorithm.h:97
CSCPairResidualsConstraint::kModePhiy
Definition: CSCPairResidualsConstraint.h:50
CSCPairResidualsConstraint
Definition: CSCPairResidualsConstraint.h:27
Point3DBase< float, GlobalTag >
AlignableNavigator
Definition: AlignableNavigator.h:25
HLT_FULL_cff.TrackTransformer
TrackTransformer
Definition: HLT_FULL_cff.py:9758
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
CSCOverlapsAlignmentAlgorithm::m_histP100
TH1F * m_histP100
Definition: CSCOverlapsAlignmentAlgorithm.h:156
CSCOverlapsAlignmentAlgorithm::m_offsetResiduals_normalized
TH1F * m_offsetResiduals_normalized
Definition: CSCOverlapsAlignmentAlgorithm.h:98
ZMuMuAnalysisNtupler_cff.eventInfo
eventInfo
Definition: ZMuMuAnalysisNtupler_cff.py:15
CSCOverlapsAlignmentAlgorithm::m_slope_MEp1
TH1F * m_slope_MEp1
Definition: CSCOverlapsAlignmentAlgorithm.h:87
CSCOverlapsAlignmentAlgorithm::m_minHitsPerChamber
int m_minHitsPerChamber
Definition: CSCOverlapsAlignmentAlgorithm.h:121
edm::ParameterSet
Definition: ParameterSet.h:47
CSCOverlapsAlignmentAlgorithm::m_XYpos_mep4
TH2F * m_XYpos_mep4
Definition: CSCOverlapsAlignmentAlgorithm.h:106
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep4
TH2F * m_RPhipos_mep4
Definition: CSCOverlapsAlignmentAlgorithm.h:114
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem3
TH2F * m_RPhipos_mem3
Definition: CSCOverlapsAlignmentAlgorithm.h:117
CSCPairResidualsConstraint::kModeRadius
Definition: CSCPairResidualsConstraint.h:50
CSCPairResidualsConstraint::kModePhiz
Definition: CSCPairResidualsConstraint.h:50
pfMETCorrectionType0_cfi.correction
correction
Definition: pfMETCorrectionType0_cfi.py:39
CSCOverlapsAlignmentAlgorithm::m_slope_MEm3
TH1F * m_slope_MEm3
Definition: CSCOverlapsAlignmentAlgorithm.h:90
CSCOverlapsAlignmentAlgorithm::m_errorFromRMS
bool m_errorFromRMS
Definition: CSCOverlapsAlignmentAlgorithm.h:131
CSCDetId
Definition: CSCDetId.h:26
CSCOverlapsAlignmentAlgorithm::m_mode
int m_mode
Definition: CSCOverlapsAlignmentAlgorithm.h:120
edm::Service< TFileService >
CSCPairResidualsConstraint::kModePhiPos
Definition: CSCPairResidualsConstraint.h:50
FrontierConditions_GlobalTag_cff.file
file
Definition: FrontierConditions_GlobalTag_cff.py:13
CSCOverlapsAlignmentAlgorithm::m_useHitWeights
bool m_useHitWeights
Definition: CSCOverlapsAlignmentAlgorithm.h:124
CSCOverlapsAlignmentAlgorithm::m_XYpos_mep1
TH2F * m_XYpos_mep1
Definition: CSCOverlapsAlignmentAlgorithm.h:103
CSCOverlapsAlignmentAlgorithm::m_fiducial_MEx1
TProfile * m_fiducial_MEx1
Definition: CSCOverlapsAlignmentAlgorithm.h:80
M_PI
#define M_PI
Definition: BXVectorInputProducer.cc:49
CSCOverlapsAlignmentAlgorithm::m_residualsConstraints
std::vector< CSCPairResidualsConstraint * > m_residualsConstraints
Definition: CSCOverlapsAlignmentAlgorithm.h:148
get
#define get
edmIntegrityCheck.report
report
Definition: edmIntegrityCheck.py:349
Trajectory::measurements
DataContainer const & measurements() const
Definition: Trajectory.h:178
CSCOverlapsAlignmentAlgorithm::m_fiducial
bool m_fiducial
Definition: CSCOverlapsAlignmentAlgorithm.h:123
CSCOverlapsAlignmentAlgorithm::m_XYpos_mem1
TH2F * m_XYpos_mem1
Definition: CSCOverlapsAlignmentAlgorithm.h:107
CSCOverlapsAlignmentAlgorithm::m_doAlignment
bool m_doAlignment
Definition: CSCOverlapsAlignmentAlgorithm.h:142
SiPixelPI::two
Definition: SiPixelPayloadInspectorHelper.h:39
reco::TransientTrack
Definition: TransientTrack.h:19
CSCChamberFitter
Definition: CSCChamberFitter.h:24
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep3
TH2F * m_RPhipos_mep3
Definition: CSCOverlapsAlignmentAlgorithm.h:113
CSCOverlapsAlignmentAlgorithm::m_slope_MEp4
TH1F * m_slope_MEp4
Definition: CSCOverlapsAlignmentAlgorithm.h:84
Trajectory
Definition: Trajectory.h:38
Exception
Definition: hltDiff.cc:246
CSCOverlapsAlignmentAlgorithm::m_slopeResiduals_normalized
TH1F * m_slopeResiduals_normalized
Definition: CSCOverlapsAlignmentAlgorithm.h:95
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
CSCOverlapsAlignmentAlgorithm::m_XYpos_mem3
TH2F * m_XYpos_mem3
Definition: CSCOverlapsAlignmentAlgorithm.h:109
CSCOverlapsAlignmentAlgorithm::m_hitsPerChamber
TH1F * m_hitsPerChamber
Definition: CSCOverlapsAlignmentAlgorithm.h:76
CSCOverlapsAlignmentAlgorithm::m_XYpos_mem2
TH2F * m_XYpos_mem2
Definition: CSCOverlapsAlignmentAlgorithm.h:108
TransientTrackBuilder::build
reco::TransientTrack build(const reco::Track *p) const
Definition: TransientTrackBuilder.cc:20
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem1
TH2F * m_RPhipos_mem1
Definition: CSCOverlapsAlignmentAlgorithm.h:115
CSCOverlapsAlignmentAlgorithm::m_slope
TH1F * m_slope
Definition: CSCOverlapsAlignmentAlgorithm.h:83
cms::Exception
Definition: Exception.h:70
DetId::Muon
Definition: DetId.h:26
CSCOverlapsAlignmentAlgorithm::m_slope_MEp2
TH1F * m_slope_MEp2
Definition: CSCOverlapsAlignmentAlgorithm.h:86
genParticles_cff.map
map
Definition: genParticles_cff.py:11
CSCOverlapsAlignmentAlgorithm::m_maxRedChi2
double m_maxRedChi2
Definition: CSCOverlapsAlignmentAlgorithm.h:139
CSCOverlapsAlignmentAlgorithm::m_slope_MEm2
TH1F * m_slope_MEm2
Definition: CSCOverlapsAlignmentAlgorithm.h:89
CSCOverlapsAlignmentAlgorithm::m_XYpos_mem4
TH2F * m_XYpos_mem4
Definition: CSCOverlapsAlignmentAlgorithm.h:110
CSCOverlapsAlignmentAlgorithm::m_alignableNavigator
AlignableNavigator * m_alignableNavigator
Definition: CSCOverlapsAlignmentAlgorithm.h:146
MuonGeometryRecord
Definition: MuonGeometryRecord.h:34
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mep2
TH2F * m_RPhipos_mep2
Definition: CSCOverlapsAlignmentAlgorithm.h:112
CSCOverlapsAlignmentAlgorithm::m_RPhipos_mem2
TH2F * m_RPhipos_mem2
Definition: CSCOverlapsAlignmentAlgorithm.h:116
CSCOverlapsAlignmentAlgorithm::m_slopeFromTrackRefit
bool m_slopeFromTrackRefit
Definition: CSCOverlapsAlignmentAlgorithm.h:125
TFileService::make
T * make(const Args &... args) const
make new ROOT object
Definition: TFileService.h:64
CSCOverlapsAlignmentAlgorithm::m_minTracksPerOverlap
int m_minTracksPerOverlap
Definition: CSCOverlapsAlignmentAlgorithm.h:132
CSCOverlapsAlignmentAlgorithm::m_combineME11
bool m_combineME11
Definition: CSCOverlapsAlignmentAlgorithm.h:129
TrackingComponentsRecord
Definition: TrackingComponentsRecord.h:12