ATLAS Offline Software
InDetServMatGeoModel/src/ServiceVolume.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "ServiceVolume.h"
6 #include "ServicesLayer.h"
7 #include "GeoModelKernel/Units.h"
8 #include <iostream>
9 
10 void ServiceVolume::dump( bool dumpMaterial) const
11 {
12  using namespace std;
13  if (shape() == Cylinder) cout << "Cylinder ";
14  else if (shape() == Disk) cout << "Disk";
15 
16  cout << "Radial extent " << m_rMin << "," << m_rMax
17  << " Z extent " << m_zMin << "," << m_zMax;
18 
19  cout << " routes " << layers().size() << " layers" << endl;
20 
21  if ( dumpMaterial && !materials().empty()) {
22  for (std::vector<ServiceMaterial>::const_iterator i=materials().begin(); i!=materials().end(); ++i) {
23  cout << " service material " << i->name() << " has the following components" << endl;
24  for ( ServiceMaterial::EntryIter ient= i->components().begin(); ient!=i->components().end(); ++ient) {
25  cout << ient->name << " linear? " << ient->linear
26  << " number " << ient->number
27  << " l/w " << ient->weight
28  << " total l/w " << ient->weight*ient->number << endl;
29  }
30  }
31  cout << endl;
32  }
33 }
34 
36 {
37  //FIXME: add it back!!!
38  /*
39  // Here we treat the fixed mass end of stave material as linear material, with mass per mm equal
40  // to the EOS mass of one stave (this should be set in the weight table), "length" inside the volume
41  // equal to the number of staves in the layer.
42  if (l->type() == DetType::Pixel) {
43  m_materials.push_back( ServiceMaterial( "PixelEOS", l->nStaves()));
44  }
45  else {
46  m_materials.push_back( ServiceMaterial( "StripEOS", l->nStaves()));
47  }
48  */
49 }
ServiceVolume::m_rMin
double m_rMin
Definition: InDetServMatGeoModel/src/ServiceVolume.h:94
ServiceVolume::addEosServices
void addEosServices(const ServicesLayer *l)
Definition: InDetServMatGeoModel/src/ServiceVolume.cxx:35
ServiceVolume.h
PlotCalibFromCool.begin
begin
Definition: PlotCalibFromCool.py:94
ServicesLayer
Definition: ServicesLayer.h:13
ServiceVolume::m_zMax
double m_zMax
Definition: InDetServMatGeoModel/src/ServiceVolume.h:97
empty
bool empty(TH1 *h)
Definition: computils.cxx:295
ServiceVolume::Cylinder
@ Cylinder
Definition: InDetServMatGeoModel/src/ServiceVolume.h:17
ServicesLayer.h
lumiFormat.i
int i
Definition: lumiFormat.py:85
ServiceVolume::m_rMax
double m_rMax
Definition: InDetServMatGeoModel/src/ServiceVolume.h:95
ServiceVolume::materials
const std::vector< ServiceMaterial > & materials() const
Definition: InDetServMatGeoModel/src/ServiceVolume.h:79
ServiceVolume::Disk
@ Disk
Definition: InDetServMatGeoModel/src/ServiceVolume.h:17
ServiceMaterial::EntryIter
EntryContainer::const_iterator EntryIter
Definition: ServiceMaterial.h:32
ServiceVolume::m_zMin
double m_zMin
Definition: InDetServMatGeoModel/src/ServiceVolume.h:96
ServiceVolume::layers
const LayerContainer & layers() const
Definition: InDetServMatGeoModel/src/ServiceVolume.h:69
ServiceVolume::dump
void dump(bool dumpMaterial=true) const
Definition: InDetServMatGeoModel/src/ServiceVolume.cxx:10
ServiceVolume::shape
Shape shape() const
Definition: InDetServMatGeoModel/src/ServiceVolume.h:36