ATLAS Offline Software
Loading...
Searching...
No Matches
PixelGeoDC2::GeoPixelLadder Class Reference

#include <PixelDetectorDC1DC2.h>

Inheritance diagram for PixelGeoDC2::GeoPixelLadder:
Collaboration diagram for PixelGeoDC2::GeoPixelLadder:

Public Member Functions

 GeoPixelLadder (InDetDD::PixelDetectorManager *ddmgr, PixelGeometryManager *mgr, GeoPixelSiCrystal &theSensor)
 GeoPixelLadder (const GeoPixelLadder &)=delete
GeoPixelLadderoperator= (const GeoPixelLadder &)=delete
virtual ~GeoPixelLadder ()=default
virtual GeoVPhysVol * Build () override
double Thickness ()

Protected Attributes

PixelGeometryManagerm_gmt_mgr {}
StoredMaterialManagerm_mat_mgr {}
InDetDD::PixelDetectorManagerm_DDmgr {}
const double m_epsilon {}

Private Attributes

GeoIntrusivePtr< GeoLogVol > m_theLadder
GeoPixelSiCrystalm_theSensor

Detailed Description

Definition at line 213 of file PixelDetectorDC1DC2.h.

Constructor & Destructor Documentation

◆ GeoPixelLadder() [1/2]

GeoPixelLadder::GeoPixelLadder ( InDetDD::PixelDetectorManager * ddmgr,
PixelGeometryManager * mgr,
GeoPixelSiCrystal & theSensor )

Definition at line 675 of file PixelDetectorDC1DC2.cxx.

678 : GeoVPixelFactory (ddmgr, mgr),
679 m_theSensor(theSensor)
680{
681 using std::max;
682
683 //
684 // Define the log volume in the constructor, so I do it only once.
685 //
686
687 //
688 // Length of the ladder is in the db
689 //
690 double halflength = m_gmt_mgr->PixelLadderHalfLength();
691 //
692 // The width is the maximum among the componenst widths
693 //
694 double width = max( max(
695 m_gmt_mgr->PixelBoardWidth(),
696 m_gmt_mgr->PixelHybridWidth()),
697 m_gmt_mgr->PixelChipWidth());
698 //
699 // The thickness has to be calculated
700 //
701 double thickness = this->Thickness();
702 const GeoMaterial* air = m_mat_mgr->getMaterial("std::Air");
703 const GeoBox* ladderBox = new GeoBox(thickness*0.5,width*0.5,halflength);
704 m_theLadder = new GeoLogVol("ladderLog",ladderBox,air);
705}
const double width
#define max(a, b)
Definition cfImp.cxx:41
GeoIntrusivePtr< GeoLogVol > m_theLadder
StoredMaterialManager * m_mat_mgr
PixelGeometryManager * m_gmt_mgr
GeoVPixelFactory(InDetDD::PixelDetectorManager *ddmgr, PixelGeometryManager *mgr)

◆ GeoPixelLadder() [2/2]

PixelGeoDC2::GeoPixelLadder::GeoPixelLadder ( const GeoPixelLadder & )
delete

◆ ~GeoPixelLadder()

virtual PixelGeoDC2::GeoPixelLadder::~GeoPixelLadder ( )
virtualdefault

Member Function Documentation

◆ Build()

virtual GeoVPhysVol * PixelGeoDC2::GeoPixelLadder::Build ( )
overridevirtual

◆ operator=()

GeoPixelLadder & PixelGeoDC2::GeoPixelLadder::operator= ( const GeoPixelLadder & )
delete

◆ Thickness()

double GeoPixelLadder::Thickness ( )

Definition at line 768 of file PixelDetectorDC1DC2.cxx.

768 {
769 //
770 // The thickness of the ladderis calculated starting from the thickness of
771 // its components: Board + Hybrid+Chips
772 // then the distance of the modules from the center is added and
773 // a factor is added to account for the tilt of ~1degree given to
774 // have a z overlap of the single modules
775 //
776 double tckincl = (m_gmt_mgr->PixelBoardLength()+m_gmt_mgr->PixelBalcony())*
777 sin(m_gmt_mgr->PixelModuleAngle())/2.;
778 double thick = m_gmt_mgr->PixelBoardThickness()+
779 m_gmt_mgr->PixelHybridThickness()+
780 m_gmt_mgr->PixelChipThickness()+
781 fabs(m_gmt_mgr->PixelModuleDrDistance())+
782 tckincl;
783 return thick;
784}

Member Data Documentation

◆ m_DDmgr

InDetDD::PixelDetectorManager* PixelGeoDC2::GeoVPixelFactory::m_DDmgr {}
protectedinherited

Definition at line 53 of file PixelDetectorDC1DC2.h.

53{};

◆ m_epsilon

const double PixelGeoDC2::GeoVPixelFactory::m_epsilon {}
protectedinherited

Definition at line 54 of file PixelDetectorDC1DC2.h.

54{};

◆ m_gmt_mgr

PixelGeometryManager* PixelGeoDC2::GeoVPixelFactory::m_gmt_mgr {}
protectedinherited

Definition at line 51 of file PixelDetectorDC1DC2.h.

51{};

◆ m_mat_mgr

StoredMaterialManager* PixelGeoDC2::GeoVPixelFactory::m_mat_mgr {}
protectedinherited

Definition at line 52 of file PixelDetectorDC1DC2.h.

52{};

◆ m_theLadder

GeoIntrusivePtr<GeoLogVol> PixelGeoDC2::GeoPixelLadder::m_theLadder
private

Definition at line 224 of file PixelDetectorDC1DC2.h.

◆ m_theSensor

GeoPixelSiCrystal& PixelGeoDC2::GeoPixelLadder::m_theSensor
private

Definition at line 225 of file PixelDetectorDC1DC2.h.


The documentation for this class was generated from the following files: