ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
MdtCalibOutputDbSvc Class Reference

#include <MdtCalibOutputDbSvc.h>

Inheritance diagram for MdtCalibOutputDbSvc:
Collaboration diagram for MdtCalibOutputDbSvc:

Public Member Functions

 MdtCalibOutputDbSvc (const std::string &name, ISvcLocator *svc_locator)
 Constructor. More...
 
virtual ~MdtCalibOutputDbSvc ()=default
 Virtual destructor. More...
 
virtual StatusCode queryInterface (const InterfaceID &riid, void **ppvUnknown)
 method required by the base class which is need to obtain a pointer to the service in the standard way More...
 
virtual StatusCode initialize ()
 initialize method as required by the base class More...
 
virtual StatusCode finalize ()
 finalize method as required by the base class; the finalize method calls the method "save_calibration_results" More...
 
void AddRunNumber (int run_number)
 add a run number to the iov interval. More...
 
bool memorize (std::shared_ptr< const MuonCalib::IMdtCalibrationOutput > result)
 memorize the result of a particular calibration (given in result) for the calibration region "regionKey"; previous calibration result of the same type (e.g. More...
 
bool memorize (std::shared_ptr< const MuonCalib::IMdtCalibrationOutput > result, std::shared_ptr< const MuonCalib::IRtResolution > resol)
 memorize the result of a particular calibration (given in result) for the calibration region "regionKey"; a previous calibration result of the same type (e.g. More...
 
void reset ()
 reset, clear memory of results More...
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Methods required as defined in the base class "Service". More...
 

Private Member Functions

StatusCode saveCalibrationResults (void)
 write out all memorized results to text files (location specified in the job options) which can be uploaded to the calibration database; method returns true in case of success, false otherwise More...
 
void create_default_resolution (const std::shared_ptr< const MuonCalib::IRtRelation > &rt)
 

Static Private Member Functions

static const MuonCalib::MdtTubeFitContainerpostprocess_t0s (const MuonCalib::MdtTubeFitContainer *new_t0, const MuonCalib::NtupleStationId &id)
 

Private Attributes

std::shared_ptr< const MuonCalib::IMdtCalibrationOutputm_results
 
std::shared_ptr< const MuonCalib::IRtResolutionm_resolution
 
bool m_postprocess_calibration
 
double m_flat_default_resolution
 
bool m_force_default_resolution
 
ToolHandle< MuonCalib::ICalibrationIOToolm_calib_output_tool {this, "OutputTool", "MuonCalib::CalibrationFileIOTool"}
 
int m_iov_start
 
int m_iov_end
 
ServiceHandle< Muon::IMuonIdHelperSvcm_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"}
 
SG::ReadCondHandleKey< MuonGM::MuonDetectorManagerm_DetectorManagerKey
 
ServiceHandle< RegionSelectionSvcm_reg_sel_svc
 
ServiceHandle< MdtCalibInputSvcm_input_service
 
std::vector< MuonCalib::NtupleStationIdm_region_ids
 

Detailed Description

Service which holds the results of the calibration algorithms. In its initial version the class can only write out the calibration to text files as it is currently performed in the calibration algorithms. The location of the output file is given in the job options file.

The name of the service is MdtCalibOutputDbSvc. MdtCalibOutputDbSvc is a singleton.

Author
Olive.nosp@m.r.Ko.nosp@m.rtner.nosp@m.@CER.nosp@m.N.CH
Date
07.10.2006

Definition at line 46 of file MdtCalibOutputDbSvc.h.

Constructor & Destructor Documentation

◆ MdtCalibOutputDbSvc()

MdtCalibOutputDbSvc::MdtCalibOutputDbSvc ( const std::string &  name,
ISvcLocator *  svc_locator 
)

Constructor.

Definition at line 24 of file MdtCalibOutputDbSvc.cxx.

24  :
25  AthService(name, svc_locator),
26  m_results(nullptr),
28  m_iov_start(-1),
29  m_iov_end(-1),
30  m_reg_sel_svc("RegionSelectionSvc", name),
31  m_input_service("MdtCalibInputSvc", name) {
32  declareProperty("PostprocessCalibration", m_postprocess_calibration);
34  declareProperty("FlatDefaultResolution", m_flat_default_resolution);
36  declareProperty("ForceDefaultResolution", m_force_default_resolution);
37 
38  declareProperty("MdtCalibInputSvc", m_input_service);
39  declareProperty("RegionSelectionSvc", m_reg_sel_svc);
40 
41  // for the sake of coverity
42  m_resolution = nullptr;
43 }

◆ ~MdtCalibOutputDbSvc()

virtual MdtCalibOutputDbSvc::~MdtCalibOutputDbSvc ( )
virtualdefault

Virtual destructor.

Member Function Documentation

◆ AddRunNumber()

void MdtCalibOutputDbSvc::AddRunNumber ( int  run_number)

add a run number to the iov interval.

The interval will begin with the smallest run number, and end with the largest run number

Definition at line 108 of file MdtCalibOutputDbSvc.cxx.

108  {
110  if (run_number > m_iov_end || m_iov_end < 0) { m_iov_end = run_number; }
111 }

◆ create_default_resolution()

void MdtCalibOutputDbSvc::create_default_resolution ( const std::shared_ptr< const MuonCalib::IRtRelation > &  rt)
inlineprivate

Definition at line 282 of file MdtCalibOutputDbSvc.cxx.

282  {
283  // check if resolution is saved in input service
284  const IRtResolution *old_res = m_input_service->GetResolution();
285  const IRtRelation *old_rel = m_input_service->GetRtRelation();
286  if (old_res != nullptr && old_rel != nullptr && !m_force_default_resolution) {
287  // scale the old resolution to the new rt relation
288  ATH_MSG_INFO("Taken old resolution");
289  std::vector<SamplePoint> res_points(100);
290  for (unsigned int i = 0; i < 100; i++) {
291  double di = static_cast<double>(i);
292  double t_new = rt->tLower() + (di / 100.0) * (rt->tUpper() - rt->tLower());
293  double t_old = old_rel->tLower() + (di / 100.0) * (old_rel->tUpper() - old_rel->tLower());
294  res_points[i].set_x1(t_new);
295  res_points[i].set_x2(old_res->resolution(t_old));
296  if (res_points[i].x2() > 100 && i > 0) res_points[i].set_x2(res_points[i - 1].x2());
297  res_points[i].set_error(1);
298  }
299  RtResolutionFromPoints respoints;
300  m_resolution = std::make_shared<RtResolutionLookUp>(MuonCalib::RtResolutionFromPoints::getRtResolutionLookUp(res_points));
301  return;
302  }
303  ATH_MSG_INFO("Creating default resolution");
304  // parameters for default resolution curve
305  double alpha[9] = {0.31476, -0.217661, 0.118337, -0.0374466, 0.00692553, -0.000764969, 4.97305E-05, -1.75457E-06, 2.59E-08};
307 
308  if (m_flat_default_resolution < 0.0) {
309  double bin_width = (rt->tUpper() - rt->tLower()) / 100.0;
310  par_vec.resize(102);
311  par_vec[0] = rt->tLower();
312  par_vec[1] = bin_width;
313  for (unsigned int i = 0; i < 100; i++) {
314  double t = rt->tLower() + i * bin_width;
315  double r = rt->radius(t);
316  double resol(0.0);
317  for (int l = 0; l < 9; l++) { resol = resol + alpha[l] * std::pow(r, l); }
318  par_vec[i + 2] = resol;
319  }
320  } else {
321  par_vec.resize(4);
322  par_vec[0] = rt->tLower();
323  par_vec[1] = (rt->tUpper() - rt->tLower()) / 2.0;
324  par_vec[2] = m_flat_default_resolution;
325  par_vec[3] = m_flat_default_resolution;
326  }
327  m_resolution = std::make_shared<MuonCalib::RtResolutionLookUp>(par_vec);
328 } // end MdtCalibOutputDbSvc::create_default_resolution

◆ finalize()

StatusCode MdtCalibOutputDbSvc::finalize ( )
virtual

finalize method as required by the base class; the finalize method calls the method "save_calibration_results"

Definition at line 97 of file MdtCalibOutputDbSvc.cxx.

97  {
99  ATH_MSG_INFO("Results saved!");
100  return StatusCode::SUCCESS;
101 }

◆ initialize()

StatusCode MdtCalibOutputDbSvc::initialize ( )
virtual

initialize method as required by the base class

Definition at line 65 of file MdtCalibOutputDbSvc.cxx.

65  {
66  // to get service via static function
67  // m_MdtCalibOutputDbSvc_pointer = this;
68  ATH_MSG_INFO("initialize MdtCalibOutputDbSvc");
69 
70  // get id helper and detector manager if postprocessing of calibration is selected
72  // retrieve detector store
74  ATH_CHECK(serviceLocator()->service("DetectorStore", detStore));
75  // retrieve mdt id helper
76  ATH_CHECK(m_idHelperSvc.retrieve());
77  // retrieve detector manager from the conditions store
79  }
80 
81  // get region selection service
82  ATH_CHECK(m_reg_sel_svc.retrieve());
83  m_region_ids = m_reg_sel_svc->GetStationsInRegions();
84  ATH_MSG_INFO("Regions selected: " << m_region_ids.size());
85  // retrieve tool
86  ATH_CHECK(m_calib_output_tool.retrieve());
87  ATH_CHECK(m_input_service.retrieve());
88 
89  return StatusCode::SUCCESS;
90 }

◆ interfaceID()

static const InterfaceID& MdtCalibOutputDbSvc::interfaceID ( )
inlinestatic

Methods required as defined in the base class "Service".

interface

Definition at line 58 of file MdtCalibOutputDbSvc.h.

58  {
59  static const InterfaceID IID_IMdtCalibOutputDbSvc("MdtCalibOutputDbSvc", 1, 0);
60  return IID_IMdtCalibOutputDbSvc;
61  }

◆ memorize() [1/2]

bool MdtCalibOutputDbSvc::memorize ( std::shared_ptr< const MuonCalib::IMdtCalibrationOutput result)

memorize the result of a particular calibration (given in result) for the calibration region "regionKey"; previous calibration result of the same type (e.g.

r-t relation calibration) will be overwritten internally if overwrite is true; the calibration which is memorized will only be saved for ever after a call to the method "saved_calibration_results"; method return true in case of success, false otherwise

Definition at line 118 of file MdtCalibOutputDbSvc.cxx.

118  {
119  // no overwriting is allowed //
120  m_results = std::move(result);
121  m_resolution.reset();
122  return true;
123 }

◆ memorize() [2/2]

bool MdtCalibOutputDbSvc::memorize ( std::shared_ptr< const MuonCalib::IMdtCalibrationOutput result,
std::shared_ptr< const MuonCalib::IRtResolution resol 
)

memorize the result of a particular calibration (given in result) for the calibration region "regionKey"; a previous calibration result of the same type (e.g.

r-t relation calibration) will be overwritten internally if overwrite is true; the calibration which is memorized will only be saved for ever after a call to the method "saved_calibration_results"; method return true in case of success, false otherwise; the user can pass a pointer to a resolution function which should be associated with the calibration output

Definition at line 130 of file MdtCalibOutputDbSvc.cxx.

131  {
132  m_results = std::move(result);
133  m_resolution = std::move(resol);
134  return true;
135 }

◆ msg() [1/2]

MsgStream& AthCommonMsg< Service >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< Service >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msgLvl()

bool AthCommonMsg< Service >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ postprocess_t0s()

const MuonCalib::MdtTubeFitContainer * MdtCalibOutputDbSvc::postprocess_t0s ( const MuonCalib::MdtTubeFitContainer new_t0,
const MuonCalib::NtupleStationId id 
)
staticprivate

Definition at line 228 of file MdtCalibOutputDbSvc.cxx.

229  {
230  int n_layers(-1), n_tubes(-1);
231  if (id.NMultilayers() < 0) return t0;
232  // get the maximum number of layers and tubes per layer for this station
233  for (int i = 0; i < id.NMultilayers(); i++) {
234  if (n_layers < id.NLayers(i)) n_layers = id.NLayers(i);
235  if (n_tubes < id.NTubes(i)) n_tubes = id.NTubes(i);
236  }
237  MdtTubeFitContainer *new_t0 = new MdtTubeFitContainer(id.regionId(), id.NMultilayers(), n_layers, n_tubes);
238  new_t0->setImplementation(t0->implementation());
239  new_t0->setGroupBy(t0->GroupBy());
240 
241  // loop over tubes
242  double n_goods(0.0);
243  double mean_t0(0.0);
244  bool has_bad_fits(false);
245  for (unsigned int ml = 0; ml < t0->numMultilayers(); ml++) {
246  if (static_cast<int>(ml) == id.NMultilayers()) break;
247  for (unsigned int ly = 0; ly < t0->numLayers(); ly++) {
248  if (static_cast<int>(ly) == n_layers) break;
249  for (unsigned int tb = 0; tb < t0->numTubes(); tb++) {
250  if (static_cast<int>(tb) == n_tubes) break;
251  new_t0->setFit(ml, ly, tb, *(t0->getFit(ml, ly, tb)));
252  new_t0->setCalib(ml, ly, tb, *(t0->getCalib(ml, ly, tb)));
253  // if tube was ok use for mean t0
254  if (t0->getCalib(ml, ly, tb)->statusCode == 0) {
255  n_goods++;
256  mean_t0 += t0->getCalib(ml, ly, tb)->t0;
257  } else {
258  has_bad_fits = true;
259  }
260  }
261  }
262  }
263 
264  // check for bad fits and insert mean t0;
265  if (has_bad_fits) {
266  mean_t0 /= n_goods;
267  for (unsigned int ml = 0; ml < new_t0->numMultilayers(); ml++) {
268  for (unsigned int ly = 0; ly < new_t0->numLayers(); ly++) {
269  for (unsigned int tb = 0; tb < new_t0->numTubes(); tb++) {
270  if (t0->getCalib(ml, ly, tb)->statusCode != 0) {
272  calib.t0 = mean_t0;
273  new_t0->setCalib(ml, ly, tb, calib);
274  }
275  }
276  }
277  }
278  }
279  return new_t0;
280 } // end MdtCalibOutputDbSvc::postprocess_t0s

◆ queryInterface()

StatusCode MdtCalibOutputDbSvc::queryInterface ( const InterfaceID &  riid,
void **  ppvUnknown 
)
virtual

method required by the base class which is need to obtain a pointer to the service in the standard way

Definition at line 50 of file MdtCalibOutputDbSvc.cxx.

50  {
51  if (interfaceID().versionMatch(riid)) {
52  *ppvUnknown = (MdtCalibOutputDbSvc *)this;
53  } else {
54  return AthService::queryInterface(riid, ppvUnknown);
55  }
56 
57  return StatusCode::SUCCESS;
58 }

◆ reset()

void MdtCalibOutputDbSvc::reset ( )

reset, clear memory of results

Definition at line 224 of file MdtCalibOutputDbSvc.cxx.

224  {
225  m_results.reset();
226 }

◆ saveCalibrationResults()

StatusCode MdtCalibOutputDbSvc::saveCalibrationResults ( void  )
private

write out all memorized results to text files (location specified in the job options) which can be uploaded to the calibration database; method returns true in case of success, false otherwise

Definition at line 142 of file MdtCalibOutputDbSvc.cxx.

142  {
143  if (!m_results) return StatusCode::SUCCESS;
144 
146  const MuonGM::MuonDetectorManager *MuonDetMgr = DetectorManagerHandle.cptr();
147  if (!MuonDetMgr) {
148  ATH_MSG_ERROR("Null pointer to the read MuonDetectorManager conditions object");
149  return StatusCode::FAILURE;
150  }
151 
152  StatusCode sc;
153 
155  // VARIABLES //
157 
159  // LOOP OVER THE STORED RESULTS AND WRITE THEM OUT ACCORDING TO THEIR TYPE //
161 
162  //-----------------------------------------------------------------------------
163  for (const auto & region_id : m_region_ids) {
164  //-----------------------------------------------------------------------------
166  // get region geometry if required
168  if (!the_id.InitializeGeometry(m_idHelperSvc->mdtIdHelper(), MuonDetMgr)) {
169  ATH_MSG_ERROR("Faild to get geometry for " << the_id.regionId());
170  }
171  }
172  // t0 calibration //
173  std::shared_ptr<const T0CalibrationOutput> t0_output = std::dynamic_pointer_cast<const T0CalibrationOutput>(m_results);
174  if (t0_output != nullptr) {
175  ATH_MSG_INFO("Writing out t0s.");
176  const MdtTubeFitContainer *new_t0s = t0_output->t0s();
177  if (!t0_output->GetMap().empty()) {
178  std::map<NtupleStationId, MdtTubeFitContainer *>::const_iterator mit(t0_output->GetMap().find(region_id));
179  if (mit != t0_output->GetMap().end()) { new_t0s = mit->second; }
180  }
181  if (!new_t0s) continue;
182  if (m_postprocess_calibration) new_t0s = postprocess_t0s(new_t0s, the_id);
183 
184  sc = m_calib_output_tool->WriteT0(new_t0s, the_id, m_iov_start, m_iov_end);
185  if (sc.isFailure()) return sc;
186  }
187 
188  // r-t calibration //
189  bool real_resolution(true), real_rt(true);
190  std::shared_ptr<const RtCalibrationOutput> rt_output = std::dynamic_pointer_cast<const RtCalibrationOutput>(m_results);
191  if (rt_output) {
192  if (rt_output->rt()) {
193  if (!rt_output->rt()->HasTmaxDiff()) {
194  const IRtRelation *old_rel = m_input_service->GetRtRelation();
195  if (old_rel && old_rel->HasTmaxDiff()) {
196  std::const_pointer_cast<IRtRelation>(rt_output->rt())->SetTmaxDiff(old_rel->GetTmaxDiff());
197  }
198  }
199  }
200 
201  ATH_MSG_INFO("Writing out r-t relationships.");
202  if (!m_resolution) {
203  real_resolution = false;
204  create_default_resolution(rt_output->rt());
205  } else {
206  real_rt = false;
207  }
208  sc = m_calib_output_tool->WriteRt(rt_output.get(), m_resolution, the_id, m_iov_start, m_iov_end, real_rt, real_resolution);
209  if (sc.isFailure()) return sc;
210  }
211 
212  //-----------------------------------------------------------------------------
213  }
214  //-----------------------------------------------------------------------------
215  ATH_MSG_INFO("Finished writing");
216  return StatusCode::SUCCESS;
217 } // end MdtCalibOutputDbSvc::saveCalibrationResults

Member Data Documentation

◆ m_calib_output_tool

ToolHandle<MuonCalib::ICalibrationIOTool> MdtCalibOutputDbSvc::m_calib_output_tool {this, "OutputTool", "MuonCalib::CalibrationFileIOTool"}
private

Definition at line 108 of file MdtCalibOutputDbSvc.h.

◆ m_DetectorManagerKey

SG::ReadCondHandleKey<MuonGM::MuonDetectorManager> MdtCalibOutputDbSvc::m_DetectorManagerKey
private
Initial value:
{this, "DetectorManagerKey", "MuonDetectorManager",
"Key of input MuonDetectorManager condition data"}

Definition at line 115 of file MdtCalibOutputDbSvc.h.

◆ m_flat_default_resolution

double MdtCalibOutputDbSvc::m_flat_default_resolution
private

Definition at line 104 of file MdtCalibOutputDbSvc.h.

◆ m_force_default_resolution

bool MdtCalibOutputDbSvc::m_force_default_resolution
private

Definition at line 106 of file MdtCalibOutputDbSvc.h.

◆ m_idHelperSvc

ServiceHandle<Muon::IMuonIdHelperSvc> MdtCalibOutputDbSvc::m_idHelperSvc {this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"}
private

Definition at line 112 of file MdtCalibOutputDbSvc.h.

◆ m_input_service

ServiceHandle<MdtCalibInputSvc> MdtCalibOutputDbSvc::m_input_service
private

Definition at line 121 of file MdtCalibOutputDbSvc.h.

◆ m_iov_end

int MdtCalibOutputDbSvc::m_iov_end
private

Definition at line 110 of file MdtCalibOutputDbSvc.h.

◆ m_iov_start

int MdtCalibOutputDbSvc::m_iov_start
private

Definition at line 110 of file MdtCalibOutputDbSvc.h.

◆ m_postprocess_calibration

bool MdtCalibOutputDbSvc::m_postprocess_calibration
private

Definition at line 102 of file MdtCalibOutputDbSvc.h.

◆ m_reg_sel_svc

ServiceHandle<RegionSelectionSvc> MdtCalibOutputDbSvc::m_reg_sel_svc
private

Definition at line 119 of file MdtCalibOutputDbSvc.h.

◆ m_region_ids

std::vector<MuonCalib::NtupleStationId> MdtCalibOutputDbSvc::m_region_ids
private

Definition at line 122 of file MdtCalibOutputDbSvc.h.

◆ m_resolution

std::shared_ptr<const MuonCalib::IRtResolution> MdtCalibOutputDbSvc::m_resolution
private

Definition at line 97 of file MdtCalibOutputDbSvc.h.

◆ m_results

std::shared_ptr<const MuonCalib::IMdtCalibrationOutput> MdtCalibOutputDbSvc::m_results
private

Definition at line 94 of file MdtCalibOutputDbSvc.h.


The documentation for this class was generated from the following files:
AthService::AthService
AthService()
MdtCalibOutputDbSvc::m_postprocess_calibration
bool m_postprocess_calibration
Definition: MdtCalibOutputDbSvc.h:102
beamspotman.r
def r
Definition: beamspotman.py:676
MuonCalib::IRtResolution::resolution
virtual double resolution(double t, double bgRate=0.0) const =0
returns resolution for a give time and background rate
MdtCalibOutputDbSvc
Definition: MdtCalibOutputDbSvc.h:46
MuonCalib::MdtTubeFitContainer::setImplementation
void setImplementation(const std::string &impl)
set the name of the implementation used to fill this class
Definition: MdtTubeFitContainer.cxx:14
plotting.plot_kinematics.run_number
run_number
Definition: plot_kinematics.py:29
MuonCalib::IRtRelation::tUpper
virtual double tUpper(void) const =0
get_generator_info.result
result
Definition: get_generator_info.py:21
SG::ReadCondHandle
Definition: ReadCondHandle.h:44
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
MdtCalibOutputDbSvc::m_calib_output_tool
ToolHandle< MuonCalib::ICalibrationIOTool > m_calib_output_tool
Definition: MdtCalibOutputDbSvc.h:108
MdtCalibOutputDbSvc::m_input_service
ServiceHandle< MdtCalibInputSvc > m_input_service
Definition: MdtCalibOutputDbSvc.h:121
MdtCalibOutputDbSvc::m_reg_sel_svc
ServiceHandle< RegionSelectionSvc > m_reg_sel_svc
Definition: MdtCalibOutputDbSvc.h:119
MuonCalib::MdtTubeFitContainer::setGroupBy
void setGroupBy(const std::string &group_by)
Definition: MdtTubeFitContainer.cxx:37
CheckAppliedSFs.bin_width
bin_width
Definition: CheckAppliedSFs.py:242
MuonCalib::NtupleStationId
Definition: NtupleStationId.h:36
plotBeamSpotCompare.x2
x2
Definition: plotBeamSpotCompare.py:218
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
ALFA_EventTPCnv_Dict::t0
std::vector< ALFA_RawData_p1 > t0
Definition: ALFA_EventTPCnvDict.h:42
MuonCalib::IRtRelation::HasTmaxDiff
bool HasTmaxDiff() const
Definition: IRtRelation.h:29
MuonCalib::IRtRelation::GetTmaxDiff
float GetTmaxDiff() const
return the difference in total dirft time between the two multilayers (ML1 - ML2)
Definition: IRtRelation.h:27
MuonCalib::MdtTubeCalibContainer::numMultilayers
unsigned int numMultilayers() const
Definition: MdtTubeCalibContainer.h:49
MdtCalibOutputDbSvc::interfaceID
static const InterfaceID & interfaceID()
Methods required as defined in the base class "Service".
Definition: MdtCalibOutputDbSvc.h:58
UploadAMITag.l
list l
Definition: UploadAMITag.larcaf.py:158
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
MuonCalib::MdtTubeCalibContainer::getCalib
const SingleTubeCalib * getCalib(const Identifier &tubeId) const
return calibration constants of a single tube
Definition: MdtTubeCalibContainer.h:37
MuonCalib::MdtTubeCalibContainer::setCalib
bool setCalib(SingleTubeCalib &&val, const Identifier &tubeId, MsgStream &msg)
set the calibration constants of a single tube
Definition: MdtTubeCalibContainer.cxx:19
CalibCoolCompareRT.n_tubes
list n_tubes
Definition: CalibCoolCompareRT.py:93
CalibDbCompareRT.region_id
region_id
Definition: CalibDbCompareRT.py:68
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
MuonCalib::MdtTubeCalibContainer::numLayers
unsigned int numLayers() const
Definition: MdtTubeCalibContainer.h:50
Execution.tb
tb
Definition: Execution.py:15
MuonCalib::CalibFunc::ParVec
std::vector< double > ParVec
Definition: CalibFunc.h:36
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
MdtCalibOutputDbSvc::m_iov_start
int m_iov_start
Definition: MdtCalibOutputDbSvc.h:110
MdtCalibOutputDbSvc::m_results
std::shared_ptr< const MuonCalib::IMdtCalibrationOutput > m_results
Definition: MdtCalibOutputDbSvc.h:94
lumiFormat.i
int i
Definition: lumiFormat.py:92
Atlas.StoreGateSvc
StoreGateSvc
Definition: Atlas.UnixStandardJob.py:25
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonCalib::IRtRelation::tLower
virtual double tLower(void) const =0
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
MuonCalib::T0CalibrationOutput::GetMap
std::map< NtupleStationId, MdtTubeFitContainer * > & GetMap()
Definition: T0CalibrationOutput.h:28
MuonCalib::MdtTubeCalibContainer::numTubes
unsigned int numTubes() const
Definition: MdtTubeCalibContainer.h:51
python.PyKernel.detStore
detStore
Definition: PyKernel.py:41
MuonCalib::RtResolutionFromPoints::getRtResolutionLookUp
static RtResolutionLookUp getRtResolutionLookUp(const std::vector< SamplePoint > &sample_points)
Definition: RtResolutionFromPoints.cxx:80
MdtCalibOutputDbSvc::m_flat_default_resolution
double m_flat_default_resolution
Definition: MdtCalibOutputDbSvc.h:104
MuonCalib::IRtRelation::radius
virtual double radius(double t) const =0
returns drift radius for a given time
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
MuonCalib::T0CalibrationOutput::t0s
const MdtTubeFitContainer * t0s() const
Definition: T0CalibrationOutput.h:27
MdtCalibOutputDbSvc::m_region_ids
std::vector< MuonCalib::NtupleStationId > m_region_ids
Definition: MdtCalibOutputDbSvc.h:122
MuonCalib::RtCalibrationOutput::rt
std::shared_ptr< const IRtRelation > rt() const
access to private attributes
Definition: RtCalibrationOutput.h:27
SG::CondHandleKey::initialize
StatusCode initialize(bool used=true)
MdtCalibOutputDbSvc::saveCalibrationResults
StatusCode saveCalibrationResults(void)
write out all memorized results to text files (location specified in the job options) which can be up...
Definition: MdtCalibOutputDbSvc.cxx:142
PlotSFuncertainty.calib
calib
Definition: PlotSFuncertainty.py:110
MuonCalib::IRtResolution
generic interface for a resolution function
Definition: IRtResolution.h:14
MuonCalib::RtResolutionFromPoints
Definition: RtResolutionFromPoints.h:30
MuonGM::MuonDetectorManager
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/MuonDetectorManager.h:49
MdtCalibOutputDbSvc::create_default_resolution
void create_default_resolution(const std::shared_ptr< const MuonCalib::IRtRelation > &rt)
Definition: MdtCalibOutputDbSvc.cxx:282
MuonCalib::MdtTubeFitContainer
Holds single-tube full calibration information of one chamber.
Definition: MdtTubeFitContainer.h:16
MuonCalib::MdtTubeFitContainer::setFit
bool setFit(SingleTubeFit &&val, const Identifier &tubeId, MsgStream &log)
set the calibration constants of a single tube
Definition: MdtTubeFitContainer.cxx:26
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
MuonCalib::MdtTubeCalibContainer::SingleTubeCalib
Definition: MdtTubeCalibContainer.h:18
MdtCalibOutputDbSvc::m_resolution
std::shared_ptr< const MuonCalib::IRtResolution > m_resolution
Definition: MdtCalibOutputDbSvc.h:97
MdtCalibOutputDbSvc::m_iov_end
int m_iov_end
Definition: MdtCalibOutputDbSvc.h:110
MdtCalibOutputDbSvc::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MdtCalibOutputDbSvc.h:112
MuonCalib::IRtRelation
generic interface for a rt-relation
Definition: IRtRelation.h:14
MdtCalibOutputDbSvc::m_DetectorManagerKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_DetectorManagerKey
Definition: MdtCalibOutputDbSvc.h:115
MdtCalibOutputDbSvc::postprocess_t0s
static const MuonCalib::MdtTubeFitContainer * postprocess_t0s(const MuonCalib::MdtTubeFitContainer *new_t0, const MuonCalib::NtupleStationId &id)
Definition: MdtCalibOutputDbSvc.cxx:228
MdtCalibOutputDbSvc::m_force_default_resolution
bool m_force_default_resolution
Definition: MdtCalibOutputDbSvc.h:106