ATLAS Offline Software
Loading...
Searching...
No Matches
LuminosityCondData.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2/*
3 * Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration.
4 */
11
12
13#ifndef LUMIBLOCKDATA_LUMINOSITYCONDDATA_H
14#define LUMIBLOCKDATA_LUMINOSITYCONDDATA_H
15
16
19#include <vector>
20
21
23{
24public:
25 // Total number of BCIDs in one turn - this must match value used
26 // in /TDAQ/OLC/BUNCHLUMIS for storage mode 1
27 static constexpr unsigned int TOTAL_LHC_BCIDS = 3564;
28
29 // Instantaneous luminosity information from /TRIGGER/LUMI/LBLESTONL or LBLESTOFL
30 // In ub-1 s-1 => 10^30 cm-2 s-1
31 float lbAverageLuminosity() const;
33 unsigned int lbAverageValid() const; // Validity flag from COOL
34
35 // Instantaneous luminosity per BCID
36 // Non-zero values only filled for BCIDs in the physics bunch group, or found to have collisions by the bunch currents
37
38 // Return vector with all BCIDs indexed by bcid number
39 const std::vector<float>& lbLuminosityPerBCIDVector() const; // In ub-1 s-1 => 10^30 cm-2 s-1
40
41 // Conversion factor from OLC. lumiPerBCID/muToLumi = interactionsPerCrossingPerBCID
42 float muToLumi() const;
43
44
45 // Setter methods.
46 void setLbAverageLuminosity (float val);
48 void setLbAverageValid (uint32_t val);
49 void setLbLuminosityPerBCIDVector (std::vector<float>&& val);
50 void setMuToLumi (float val);
51
52
53private:
54 // Data from LBLESTOFL
55 float m_LBAvInstLumi = 0; // in ub-1 s-1 => 10^30 cm-2 s-1
56 float m_LBAvEvtsPerBX = 0;
57 uint32_t m_Valid = 0xffffffff;
58
59 // Luminosity per beam crossing (for a specific BCID)
60 std::vector<float> m_LBInstLumi = std::vector<float> (TOTAL_LHC_BCIDS);
61
62 // Conversion factor from calibrations
63 float m_MuToLumi = 0;
64};
65
66
67CLASS_DEF (LuminosityCondData, 222148049, 0)
69
70
71#endif // not LUMIBLOCKDATA_LUMINOSITYCONDDATA_H
Hold mappings of ranges to condition objects.
#define CONDCONT_MIXED_DEF(...)
Definition CondCont.h:1446
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
void setMuToLumi(float val)
void setLbAverageLuminosity(float val)
const std::vector< float > & lbLuminosityPerBCIDVector() const
void setLbAverageInteractionsPerCrossing(float val)
void setLbAverageValid(uint32_t val)
static constexpr unsigned int TOTAL_LHC_BCIDS
float lbAverageLuminosity() const
unsigned int lbAverageValid() const
void setLbLuminosityPerBCIDVector(std::vector< float > &&val)
std::vector< float > m_LBInstLumi
float lbAverageInteractionsPerCrossing() const