ATLAS Offline Software
Classes | Typedefs | Functions | Variables
MuonGM Namespace Reference

Ensure that the Athena extensions are properly loaded. More...

Classes

class  AlignPos
 
class  CbmComponent
 
struct  ChamberGrp
 
class  CHV
 
class  CMI
 
class  Component
 
class  CRO
 
class  Csc
 
class  CSC
 
class  CscComponent
 
class  CscMultiLayer
 
class  CscReadoutElement
 
class  Cutout
 
class  DblQ00Acut
 
class  DblQ00Alin
 
class  DblQ00Almn
 
class  DblQ00Aptp
 
class  DblQ00Asmp
 
class  DblQ00Aszt
 
class  DblQ00Atln
 
class  DblQ00Atyp
 
class  DblQ00Awln
 
class  DblQ00Dbam
 
class  DblQ00IAcsc
 
class  DblQ00Wchv
 
class  DblQ00Wcmi
 
class  DblQ00Wcro
 
class  DblQ00Wcsc
 
class  DblQ00Wded
 
class  DblQ00Wlbi
 
class  DblQ00Wmdt
 
class  DblQ00Wrpc
 
class  DblQ00Wspa
 
class  DblQ00Wsup
 
class  DblQ00Wtgc
 
class  DblQ00Xtomo
 
class  DBReader
 
class  DED
 
class  Ded
 
class  DetectorElement
 
class  DriftTube
 
class  FPVMAP
 
class  GeoModelCscTest
 
class  GeoModelMdtTest
 
class  GeoModelMmTest
 
class  GeoModelRpcTest
 
class  GeoModelsTgcTest
 
class  GeoModelTgcTest
 
class  LBI
 
class  LbiComponent
 
class  Mdt
 
class  MDT
 
class  MdtComponent
 
class  MdtReadoutElement
 
class  Micromegas
 
class  MicromegasComponent
 
class  MM_Technology
 
class  MMReadoutElement
 An MMReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station contains: More...
 
class  MMSpacer
 
class  MMSpacer_Technology
 
class  MMSpacerComponent
 
class  MultiLayer
 
class  MuonChamber
 
class  MuonChamberLite
 
struct  MuonChannelDesign
 
class  MuonClusterReadoutElement
 
class  MuonDetectorFactory001
 
class  MuonDetectorFactoryLite
 
class  MuonDetectorManager
 The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and provides access to all main blocks of information needed by generic clients of the geometry: XxxReadoutElements, MuonStations, MuonIdHelpers, geometryVersion, etc. More...
 
struct  MuonPadDesign
 Parameters defining the design of the readout sTGC pads. More...
 
class  MuonReadoutElement
 Base class for the XxxReadoutElement, with Xxx = Mdt, Rpc, Tgc, Csc. More...
 
class  MuonStation
 
struct  MuonStripDesign
 
class  MuonSystemDescription
 
class  MYSQL
 
class  Position
 
class  RDBReaderAtlas
 
class  RPC
 
class  Rpc
 
class  RpcComponent
 
class  RpcLayer
 
class  RpcReadoutElement
 An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station contains: More...
 
class  SimpleVolAction
 
class  SPA
 
class  Spacer
 
class  SpacerBeam
 
class  SpaComponent
 
class  StandardComponent
 
class  Station
 
class  StationSelector
 
class  sTGC
 
class  sTGC_Technology
 
class  sTGCComponent
 
class  sTgcReadoutElement
 An sTgcReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station contains: More...
 
class  SUP
 
class  SupComponent
 
class  Technology
 
class  TGC
 
class  Tgc
 
struct  TgcChamberLayout
 
class  TgcComponent
 
class  TgcReadoutElement
 A TgcReadoutElement corresponds to a single TGC chamber; therefore typically a TGC station contains several TgcReadoutElements. More...
 
class  TgcReadoutParams
 

Typedefs

typedef StandardComponent DedComponent
 
typedef std::map< std::string, GeoVPhysVol * >::const_iterator DetectorIterator
 
typedef std::map< int, std::string >::const_iterator AllocposIterator
 
typedef std::map< std::string, int >::const_iterator allocPosIterator
 
typedef std::map< int, Position, std::less< int > > PositionMap
 
typedef std::multimap< int, AlignPos, std::less< int > > AlignPosMap
 
typedef std::map< int, Position, std::less< int > >::const_iterator PositionIterator
 
typedef std::multimap< int, AlignPos, std::less< int > >::const_iterator AlignPosIterator
 
using GasGapIntArray = TgcReadoutParams::GasGapIntArray
 
using GasGapFloatArray = TgcReadoutParams::GasGapFloatArray
 
using WiregangArray = TgcReadoutParams::WiregangArray
 
using StripArray = TgcReadoutParams::StripArray
 
using PVRef = GeoRef< GeoPhysVol >
 

Functions

std::ostream & operator<< (std::ostream &os, const AlignPos &p)
 
std::ostream & operator<< (std::ostream &os, const Cutout &p)
 
float round (const float toRound, const unsigned int decimals)
 
std::ostream & operator<< (std::ostream &os, const MicromegasComponent &c)
 
std::ostream & operator<< (std::ostream &os, const MMSpacerComponent &c)
 
template<class T >
const T * getIdHelper (StoreGateSvc *pDetStore, const std::string &helperName)
 
std::ostream & operator<< (std::ostream &os, const Position &p)
 
std::ostream & operator<< (std::ostream &os, const StandardComponent &c)
 
std::ostream & operator<< (std::ostream &os, const Station &s)
 
std::ostream & operator<< (std::ostream &os, const sTGCComponent &c)
 
std::ostream & operator<< (std::ostream &os, const TgcComponent &c)
 
std::ostream & operator<< (std::ostream &ostr, const Amg::Transform3D &trans)
 
template<typename VType >
bool isEqual (const std::vector< VType > &a, const std::vector< VType > &b)
 
template<typename VType >
std::ostream & operator<< (std::ostream &ostr, const std::vector< VType > &v)
 
template<typename VType >
std::ostream & operator<< (std::ostream &ostr, const std::set< VType > &s)
 
int nStrips (const MuonGM::TgcReadoutElement &readoutEle, int layer)
 
std::string buildString (int i, int ncha)
 
int strtoint (std::string_view str, unsigned int istart, unsigned int length)
 
int stationPhiTGC (std::string_view stName, int fi, int zi_input)
 Converts the AMDB phi index to the Identifier phi Index. More...
 
int amdbPhiTGC (std::string_view stName, int phiIndex, int eta_index)
 Converts the Identifier phi index to the AMDB phi index. More...
 

Variables

constexpr int maxwlay = 4
 
constexpr int maxnlayers = 4
 An MdtReadoutElement corresponds to a single MDT multilayer; therefore typicaly a MDT chamber consists of two MdtReadoutElements, each identified by StationName, StationEta, StationPhi, Technology=0, and Multilayer. More...
 
constexpr int maxnsteps = 10
 

Detailed Description

Ensure that the Athena extensions are properly loaded.

Typedef Documentation

◆ AlignPosIterator

typedef std::multimap<int, AlignPos, std::less<int> >::const_iterator MuonGM::AlignPosIterator

Definition at line 38 of file Station.h.

◆ AlignPosMap

typedef std::multimap<int, AlignPos, std::less<int> > MuonGM::AlignPosMap

Definition at line 36 of file Station.h.

◆ AllocposIterator

typedef std::map<int, std::string>::const_iterator MuonGM::AllocposIterator

Definition at line 40 of file MYSQL.h.

◆ allocPosIterator

typedef std::map<std::string, int>::const_iterator MuonGM::allocPosIterator

Definition at line 41 of file MYSQL.h.

◆ DedComponent

Definition at line 10 of file DedComponent.h.

◆ DetectorIterator

typedef std::map<std::string, GeoVPhysVol *>::const_iterator MuonGM::DetectorIterator

Definition at line 15 of file FPVMAP.h.

◆ GasGapFloatArray

Definition at line 21 of file RDBReaderAtlas.cxx.

◆ GasGapIntArray

Definition at line 20 of file RDBReaderAtlas.cxx.

◆ PositionIterator

typedef std::map<int, Position, std::less<int> >::const_iterator MuonGM::PositionIterator

Definition at line 37 of file Station.h.

◆ PositionMap

typedef std::map<int, Position, std::less<int> > MuonGM::PositionMap

Definition at line 35 of file Station.h.

◆ PVRef

using MuonGM::PVRef = typedef GeoRef<GeoPhysVol>

Definition at line 41 of file Rpc.cxx.

◆ StripArray

Definition at line 23 of file RDBReaderAtlas.cxx.

◆ WiregangArray

Definition at line 22 of file RDBReaderAtlas.cxx.

Function Documentation

◆ amdbPhiTGC()

int MuonGM::amdbPhiTGC ( std::string_view  stName,
int  phiIndex,
int  eta_index 
)

Converts the Identifier phi index to the AMDB phi index.

For T4E the devil was certainly involved in the game. The backward conversion does not make any sense at all. Hardcode it...

For T4E the devil was certainly involved in the game. The backward conversion does not make any sense at all. Hardcode it...

Definition at line 89 of file GlobalUtilities.cxx.

99  {
100  case 21: return 1;
101  case 3 : return 2;
102  case 6: return 3;
103  case 9: return 4;
104  case 11: return 5;
105  case 14: return 6;
106  case 16: return 7;
107  case 19: return 8;
108  default: return 0;
109  }
110  return 0;
111  }
112 
113 
114 } // namespace MuonGM

◆ buildString()

std::string MuonGM::buildString ( int  i,
int  ncha 
)

Definition at line 23 of file GlobalUtilities.cxx.

23  {
24  int ij = i;
25  std::ostringstream ostigg;
26  for (int j = ncha - 1; j >= 0; j--) {
27  ostigg << int(ij / std::pow(10.0, j));
28  ij = int(ij % int(std::pow(10.0, j)));
29  }
30  return ostigg.str();
31  }
32  }
33 
34  int strtoint(std::string_view str, unsigned int istart, unsigned int length) {
35  std::string_view s(str.substr(istart, length));

◆ getIdHelper()

template<class T >
const T* MuonGM::getIdHelper ( StoreGateSvc pDetStore,
const std::string &  helperName 
)

Definition at line 27 of file MuonDetectorFactoryLite.cxx.

27  {
28  const T *helper;
29  StatusCode sc = pDetStore->retrieve(helper, helperName);
30  if (sc.isFailure()) {
31  return nullptr;
32  }
33  else {
34  return helper;
35  }
36  };

◆ isEqual()

template<typename VType >
bool MuonGM::isEqual ( const std::vector< VType > &  a,
const std::vector< VType > &  b 
)

Definition at line 18 of file MuonDetDescr/MuonGeoModelTest/src/GeoModelTgcTest.cxx.

19  {
20  if (a.size() != b.size()) {
21  return false;
22  }
23  for (size_t k =0 ; k < a.size() ; ++k) {
24  if ( std::abs(a[k] - b[k]) > std::numeric_limits<VType>::epsilon()){
25  return false;
26  }
27  }
28  return true;
29 }

◆ nStrips()

int MuonGM::nStrips ( const MuonGM::TgcReadoutElement readoutEle,
int  layer 
)
inline

Definition at line 46 of file MuonDetDescr/MuonGeoModelTest/src/GeoModelTgcTest.cxx.

46  {
47  return readoutEle.nStrips(layer) > 1 ? readoutEle.nStrips(layer) : 0;
48 }

◆ operator<<() [1/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const AlignPos p 
)

Definition at line 8 of file AlignPos.cxx.

8  {
9  os << "phi ind=" << p.phiindex << " z ind=" << p.zindex << " tra_s=" << p.tras << " tra_z=" << p.traz << " tra_t=" << p.trat << " (in mm)"
10  << " rot_s=" << p.rots * 1000. << " rot_z=" << p.rotz * 1000. << " rot_t=" << p.rott * 1000. << " (angles in milli-radians) "
11  << " is barrel? " << p.isBarrel << " station type= " << p.tectype;
12 
13  return os;
14  }

◆ operator<<() [2/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const Cutout p 
)

Definition at line 67 of file Cutout.cxx.

67  {
68  os << " Cutout: "
69  << " x/y/width_s/width_l/length/excent/dead1: " << p.dx << " " << p.dy << " " << p.widthXs << " " << p.widthXl << " " << p.lengthY << " " << p.excent << " " << p.dead1
70  << " component index=" << p.ijob;
71 
72  return os;
73  }

◆ operator<<() [3/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const MicromegasComponent c 
)

Definition at line 10 of file MicromegasComponent.cxx.

10  {
11  os << "Component " << c.name << std::endl;
12  return os;
13  }

◆ operator<<() [4/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const MMSpacerComponent c 
)

Definition at line 11 of file MMSpacerComponent.cxx.

11  {
12  os << "Component " << c.name << std::endl;
13  return os;
14  }

◆ operator<<() [5/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const Position p 
)

Definition at line 9 of file Position.cxx.

9  {
10  os << " Position eta/phi index " << p.zindex << "/" << p.phiindex << " phi/z/R/s_shift " << p.phi << " " << p.z << " " << p.radius << " " << p.shift << " alpha/beta/gamma "
11  << p.alpha << " " << p.beta << " " << p.gamma;
12 
13  return os;
14  }

◆ operator<<() [6/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const StandardComponent c 
)

Definition at line 19 of file StandardComponent.cxx.

19  {
20  os << "Component " << c.name << std::endl;
21  os << c.posx << " " << c.posy << " " << c.posz << " " << c.index << " " << c.name;
22  os << " " << c.iswap << " " << c.dx1 << " " << c.dx2 << " " << c.dy << " ";
23  os << c.excent << " " << c.deadx << " " << c.deady << std::endl;
24  return os;
25  }

◆ operator<<() [7/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const Station s 
)

Definition at line 326 of file Station.cxx.

326  {
327  os << "Station m_name: " << s.m_name << " " << s.m_components.size() << std::endl;
328  for (unsigned int i = 0; i < s.m_components.size(); i++)
329  os << "\t" << s.m_components[i].get() << std::endl;
330 
332  for (k = s.begin(); k != s.end(); ++k)
333  os << "\t\t" << (*k).second << std::endl;
334 
335  AlignPosIterator ak;
336  for (ak = s.abegin(); ak != s.aend(); ++ak)
337  os << "\t\t" << (*ak).second << std::endl;
338 
339  os << "--------------------------------------------------" << std::endl;
340  return os;
341  }

◆ operator<<() [8/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const sTGCComponent c 
)

Definition at line 8 of file sTGCComponent.cxx.

8  {
9  os << "Component " << c.name << std::endl;
10  return os;
11  }

◆ operator<<() [9/12]

std::ostream& MuonGM::operator<< ( std::ostream &  os,
const TgcComponent c 
)

Definition at line 12 of file TgcComponent.cxx.

12  {
13  os << "Component " << c.name << std::endl;
14  return os;
15  }

◆ operator<<() [10/12]

std::ostream& MuonGM::operator<< ( std::ostream &  ostr,
const Amg::Transform3D trans 
)

Definition at line 14 of file MuonDetDescr/MuonGeoModelTest/src/GeoModelMdtTest.cxx.

14  {
15  ostr<<Amg::toString(trans, 3);
16  return ostr;
17 }

◆ operator<<() [11/12]

template<typename VType >
std::ostream& MuonGM::operator<< ( std::ostream &  ostr,
const std::set< VType > &  s 
)

Definition at line 37 of file MuonDetDescr/MuonGeoModelTest/src/GeoModelTgcTest.cxx.

37  {
38  unsigned int k=1;
39  for (const VType& ele : s){
40  ostr<<ele;
41  if (k != s.size()) ostr<<";";
42  ++k;
43  }
44  return ostr;
45 }

◆ operator<<() [12/12]

template<typename VType >
std::ostream& MuonGM::operator<< ( std::ostream &  ostr,
const std::vector< VType > &  v 
)

Definition at line 30 of file MuonDetDescr/MuonGeoModelTest/src/GeoModelTgcTest.cxx.

30  {
31  for (size_t k = 0 ; k <v.size(); ++k){
32  ostr<<v[k];
33  if ( k+1 != v.size())ostr<<",";
34  }
35  return ostr;
36 }

◆ round()

float MuonGM::round ( const float  toRound,
const unsigned int  decimals 
)

Definition at line 27 of file Mdt.cxx.

27  {
28  unsigned int factor = std::pow(10, decimals);
29  return std::round(toRound * factor) / factor;
30  }

◆ stationPhiTGC()

int MuonGM::stationPhiTGC ( std::string_view  stName,
int  fi,
int  zi_input 
)

Converts the AMDB phi index to the Identifier phi Index.

Definition at line 44 of file GlobalUtilities.cxx.

49  {
50  switch (fi) {
51  case 0: stphi = zi; break;
52  case 1: stphi = zi + 3; break;
53  case 2: stphi = zi + 6; break;
54  case 3:
55  stphi = zi + 9; // zi are numbered in order, i.e. 1 and 2
56  break;
57  case 4: stphi = zi + 11; break;
58  case 5: stphi = zi + 14; break;
59  case 6: stphi = zi + 16; break;
60  case 7: stphi = zi + 19; break;
61  default: stphi = 0;
62  }
63  // minumum stPhi at phi 0
64  stphi = stphi - 1;
65  if (stphi < 1) stphi = stphi + 21;
66  } else {
67  int nch = 3;
68  if (stName[2] == 'E') nch = 6;
69  int fioff = std::abs(zi);
70  if (fioff > 3 && stName[2] == 'F') fioff = fioff - 3;
71  // minumum stPhi at phi 0
72  if (stName[2] == 'F')
73  fioff = fioff - 1;
74  else
75  fioff = fioff - 2;
76  stphi = fi * nch + fioff;
77  if (stphi < 1) {
78  if (stName[2] == 'F')
79  stphi = stphi + 24;
80  else
81  stphi = stphi + 48;
82  }
83  }
84  return stphi;
85  }
86  int amdbPhiTGC(std::string_view stName, int phiIndex, int eta_index) {
87  if (stName != "T4E") {
88  const int nch = 3*( stName[2] == 'E' ? 2 : 1);

◆ strtoint()

int MuonGM::strtoint ( std::string_view  str,
unsigned int  istart,
unsigned int  length 
)

Definition at line 37 of file GlobalUtilities.cxx.

41  {
42  // fi and zi_imput are the amdb indices (1, ... 8) and (-8, 8) are their ranges

Variable Documentation

◆ maxnlayers

constexpr int MuonGM::maxnlayers = 4
constexpr

An MdtReadoutElement corresponds to a single MDT multilayer; therefore typicaly a MDT chamber consists of two MdtReadoutElements, each identified by StationName, StationEta, StationPhi, Technology=0, and Multilayer.

Pointers to all MdtReadoutElements are created in the build() method of the MuonChamber class, and are held in arrays by the MuonDetectorManager, which is responsible for storing, deleting and providing access to these objects.

An MdtReadoutElement holds properties related to its internal structure (i.e. wire pitch) and general geometrical properties (size); it implements tracking interfaces and provides access to typical readout-geometry information: i.e. number of tubes, position of the tubes, distance of a point to the readout side, etc.

The globalToLocalCoords and globalToLocalTransform methods (+ their opposite) define the link between the ATLAS global reference frame and the internal (geo-model defined) local reference frame of any drift tube (which is the frame where local coordinates of SimHits, in output from G4, are expressed).

Definition at line 48 of file MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/MdtReadoutElement.h.

◆ maxnsteps

constexpr int MuonGM::maxnsteps = 10
constexpr

◆ maxwlay

constexpr int MuonGM::maxwlay = 4
constexpr

Definition at line 29 of file CscReadoutElement.h.

python.SystemOfUnits.s
int s
Definition: SystemOfUnits.py:131
CaloCellPos2Ntuple.int
int
Definition: CaloCellPos2Ntuple.py:24
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
MuonGM::round
float round(const float toRound, const unsigned int decimals)
Definition: Mdt.cxx:27
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
StoreGateSvc::retrieve
StatusCode retrieve(const T *&ptr) const
Retrieve the default object into a const T*.
runBeamSpotCalibration.helper
helper
Definition: runBeamSpotCalibration.py:112
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
Amg::toString
std::string toString(const Translation3D &translation, int precision=4)
GeoPrimitvesToStringConverter.
Definition: GeoPrimitivesToStringConverter.h:40
lumiFormat.i
int i
Definition: lumiFormat.py:85
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
MuonGM::PositionIterator
std::map< int, Position, std::less< int > >::const_iterator PositionIterator
Definition: Station.h:37
MuonGM::AlignPosIterator
std::multimap< int, AlignPos, std::less< int > >::const_iterator AlignPosIterator
Definition: Station.h:38
createCablingJSON.eta_index
int eta_index
Definition: createCablingJSON.py:9
MuonGM::TgcReadoutElement::nStrips
int nStrips(int gasGap) const
Returns the number of strips in a given gas gap.
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:77
MuonGM::amdbPhiTGC
int amdbPhiTGC(std::string_view stName, int phiIndex, int eta_index)
Converts the Identifier phi index to the AMDB phi index.
Definition: GlobalUtilities.cxx:89
MuonGM::strtoint
int strtoint(std::string_view str, unsigned int istart, unsigned int length)
Definition: GlobalUtilities.cxx:37
eflowRec::phiIndex
unsigned int phiIndex(float phi, float binsize)
calculate phi index for a given phi
Definition: EtaPhiLUT.cxx:23
python.PyAthena.v
v
Definition: PyAthena.py:154
a
TList * a
Definition: liststreamerinfos.cxx:10
checkFileSG.fi
fi
Definition: checkFileSG.py:65
str
Definition: BTagTrackIpAccessor.cxx:11
python.compressB64.c
def c
Definition: compressB64.py:93
length
double length(const pvec &v)
Definition: FPGATrackSimLLPDoubletHoughTransformTool.cxx:26
TSU::T
unsigned long long T
Definition: L1TopoDataTypes.h:35
fitman.k
k
Definition: fitman.py:528