ATLAS Offline Software
Classes | Public Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | Static Private Attributes | List of all members
LArG4::EC::EnergyCalculator Class Reference

#include <EnergyCalculator.h>

Inheritance diagram for LArG4::EC::EnergyCalculator:
Collaboration diagram for LArG4::EC::EnergyCalculator:

Classes

struct  Fold_Efield_Map
 
struct  FoldArea
 
struct  geometry_t
 
struct  Wheel_Efield_Map
 
struct  WheelGeometry
 

Public Member Functions

 EnergyCalculator (const std::string &name, ISvcLocator *pSvcLocator)
 
void CorrectionTypeHandler (Gaudi::Details::PropertyBase &)
 
void SolidTypeHandler (Gaudi::Details::PropertyBase &)
 
virtual StatusCode initialize () override final
 
virtual StatusCode finalize () override final
 
virtual G4float OOTcut () const override final
 
virtual G4bool Process (const G4Step *, std::vector< LArHitData > &) const override final
 
virtual G4bool isInTime (G4double hitTime) const override final
 
virtual void initializeForSDCreation () override
 

Protected Attributes

bool m_BirksLaw
 
double m_Birksk
 
double m_OOTcut
 

Private Member Functions

G4bool Process_Default (const G4Step *, std::vector< LArHitData > &) const
 
G4bool Process_Barrett (const G4Step *, std::vector< LArHitData > &) const
 
G4bool FindIdentifier_Default (const G4Step *, std::vector< LArHitData > &, G4ThreeVector &, G4ThreeVector &) const
 
G4bool FindIdentifier_Barrett (const G4Step *, G4double, std::vector< LArHitData > &, G4ThreeVector &, G4ThreeVector &) const
 
G4bool FindDMIdentifier_Barrett (const G4Step *step, std::vector< LArHitData > &) const
 
G4bool GetCompartment_Barrett (const G4ThreeVector &, G4double, G4double, G4double, G4int &, G4int &) const
 
G4double GetHV_Value (const G4ThreeVector &p, G4double PhiStartOfPhiDiv) const
 
G4double GetGapSize_Default (const G4ThreeVector &p) const
 
G4double GetGapSize_Barrett (const G4ThreeVector &p) const
 
G4int GetPhiGap_Barrett (const G4ThreeVector &p, G4double PhiStartOfPhiDiv) const
 
G4double distance_to_the_nearest_electrode_Default (const G4ThreeVector &p, G4double) const
 
G4double distance_to_the_nearest_electrode_Barrett (const G4ThreeVector &p, G4double Barret_PhiStart) const
 
void SetConst_OuterBarrett (void)
 
G4bool GetVolumeIndex (const G4Step *, G4int &, G4int &) const
 
G4double dummy_correction_method (G4double e, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GapAdjustment_old (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GapAdjustment (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GapAdjustment_E (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GapAdjustment_s (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GapAdjustment__sE (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double CalculateChargeCollection (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double CalculateChargeCollection1 (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
G4double GApower () const
 
G4double ElectrodeFanHalfThickness () const
 
G4double FanEleThicknessOld () const
 
G4double FanEleFoldRadiusOld () const
 
G4double FanAbsThickness () const
 
G4double FanEleThickness () const
 
G4double WaveLength () const
 
const Wheel_Efield_MapChCollWheelType () const
 
void CreateArrays (Wheel_Efield_Map &, G4int)
 
G4int Index (const Fold_Efield_Map *foldmap, G4int i, G4int j, G4int k) const
 
void SetFoldArea (G4double, FoldArea &) const
 
void SetHalfWave (G4double, WheelGeometry &) const
 
void GetPhiGap (const G4double *, WheelGeometry &) const
 
void SetYlimitsofPhigapinWheel (G4double, G4double, const WheelGeometry &wg, G4double *Ylimits) const
 
G4double YofSurface (G4double, G4double, G4double, const WheelGeometry &) const
 
G4double YofNeutralFibre (G4double alpha, G4double rho, const WheelGeometry &wg) const
 
G4double FoldingAngle (G4double) const
 
G4double HalfLArGapSize (G4double, G4double) const
 
void IniGeomforFieldMaps (void)
 
void LoadFieldMaps (const G4String &)
 
void PrepareFieldMap (Wheel_Efield_Map *ChCollWheelType)
 
G4double GetCurrent (const G4double *, const G4double *, G4double, G4double Barret_PhiStart) const
 
void TransformWheeltoFieldMap (const G4double *, G4double *, const WheelGeometry &wg, const FoldArea &fa) const
 
void SetYlimitsofPhigapinFieldMap (G4int, const WheelGeometry &wg, G4double *Ylimits) const
 
void TransFromBarrtoWheel (const G4double *, G4double PhiStartOfPhiDiv, G4double *) const
 
G4double GetWeightfromFieldMap (G4int, G4double, G4double, const FoldArea &fa) const
 
G4double HalfLArGapSizeOld (G4double) const
 
G4double CHC_Esr () const
 
G4double GetGapSize (const G4ThreeVector &p) const
 
G4double distance_to_the_nearest_electrode (const G4ThreeVector &p) const
 
const LArWheelCalculatorlwc () const
 
const LArWheelCalculatorelc () const
 
G4double GetCurrent1 (const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
 EnergyCalculator (const EnergyCalculator &)
 
EnergyCalculatoroperator= (const EnergyCalculator &)
 
G4int _getIRlayer (G4double rforalpha) const
 
G4int _getIRlayerA (G4double rforalpha) const
 
G4double _interpolateCurrentSubStep (G4double rforalpha, G4int gapup, const G4double vmap[], G4double tol, const FoldArea &fa, G4int &gaperr) const
 
G4double _interpolateCurrentSubStep1 (G4double rforalpha, const G4double vmap[], const G4ThreeVector &Pe, int side_dte, int Pe_fan, const G4ThreeVector &Pa, int side_dta, int Pa_fan, const FoldArea &fa, G4int &gaperr) const
 
G4double _AdjustedPhiOfPoint_Barrett (const G4ThreeVector &p, G4double PhiStartOfPhiDiv) const
 
G4double getPhiStartOfPhiDiv (const G4Step *step) const
 
G4double DistanceToEtaLine (const G4ThreeVector &p, G4double eta) const
 
G4bool GetBarrettePCE (const G4ThreeVector &p, G4double PhiStartOfPhiDiv, G4double &phi, G4int &compartment, G4int &eta_bin) const
 

Static Private Member Functions

static G4double IonReco (const G4double Efield)
 
static G4double DriftVelo (const G4double T, const G4double Efield)
 
static G4double _normalizeAngle2Pi (G4double a)
 

Private Attributes

G4bool(EnergyCalculator::* m_Process_type )(const G4Step *, std::vector< LArHitData > &) const
 
G4double(EnergyCalculator::* m_GetGapSize_type )(const G4ThreeVector &p) const
 
G4double(EnergyCalculator::* m_distance_to_the_nearest_electrode_type )(const G4ThreeVector &p, G4double) const
 
ServiceHandle< ILArCalibCalculatorSvcm_supportCalculator {this, "SupportCalculator", "EMECSupportCalibrationCalculator"}
 
G4double m_RefzDist = 0.0
 
G4double m_S3_Rlim [21]
 
G4double m_rlim [50]
 
G4double m_zlim [4]
 
UnsignedIntegerProperty m_corrProp {8}
 
EnergyCorrection_t m_correction_type {EMEC_ECOR_CHCL1}
 
G4double(EnergyCalculator::* m_ecorr_method )(G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
 
DoubleProperty m_GApower {this, "EMECGapPower", 1.4}
 
G4double m_ElectrodeFanHalfThickness = 0.0
 
G4double m_FanEleThicknessOld = 0.0
 
G4double m_FanEleFoldRadiusOld = 0.0
 
G4double m_FanAbsThickness = 0.0
 
G4double m_FanEleThickness = 0.0
 
G4double m_WaveLength = 0.0
 
G4double m_zsep12 [44]
 
G4double m_ziw [7]
 
G4double m_zsep23 [22]
 
G4String m_FieldMapVersion
 
Wheel_Efield_Map m_ChCollInner {}
 
Wheel_Efield_Map m_ChCollOuter {}
 
Wheel_Efield_Mapm_ChCollWheelType = nullptr
 
StringProperty m_HVMapVersion {this, "EMECHVMap", "v02"}
 
BooleanProperty m_DB_HV {this, "EMECHVEnable", false}
 
DoubleProperty m_CHC_Esr {this, "EMECRsr", 0.2*CLHEP::mm}
 
UnsignedIntegerProperty m_solidtypeProp {0}
 
LArG4::LArWheelCalculator_t m_solidtype {LArG4::InnerAbsorberWheel}
 
IntegerProperty m_zside {this, "zSide", 1}
 
LArG4BirksLawm_birksLaw {}
 
LArWheelCalculatorm_lwc {}
 
ServiceHandle< IGeoModelSvcm_geoModel {this, "GeoModelSvc", "GeoModelSvc"}
 
ServiceHandle< IGeoDbTagSvcm_geoDbTagSvc {this, "GeoDbTagSvc", "GeoDbTagSvc"}
 
StringProperty m_suffix {this, "EMECChMap", "v03"}
 
LArWheelCalculatorm_electrode_calculator {}
 
std::unique_ptr< const HVHelperm_HVHelper
 

Static Private Attributes

static const G4double s_LongBarThickness
 
static const G4double s_ColdCorrection
 
static const G4double s_StripWidth
 
static const G4double s_KapGap
 
static const G4double s_EdgeWidth
 
static const G4double s_DistOfEndofCuFromBack
 
static const G4double s_DistOfStartofCuFromBack
 
static const G4double s_ZmaxOfSignal
 
static const G4double s_S3_Etalim [21]
 
static const G4double s_Rmeas_outer [50]
 
static const G4double s_Zmeas_outer [2]
 
static const G4double s_GridSize
 
static const G4double s_AverageGap
 
static const G4double s_inv_AverageGap
 
static const G4double s_AverageHV
 
static const G4double s_AverageEfield
 
static const G4double s_AverageCurrent
 
static const G4double s_LArTemperature_ECC0
 
static const G4double s_LArTemperature_ECC1
 
static const G4double s_LArTemperature_ECC5
 
static const G4double s_LArTemperature_av
 
static const G4double s_GA_SubstepSize
 
static const geometry_t s_geometry []
 

Detailed Description

Definition at line 53 of file EnergyCalculator.h.

Constructor & Destructor Documentation

◆ EnergyCalculator() [1/2]

LArG4::EC::EnergyCalculator::EnergyCalculator ( const std::string &  name,
ISvcLocator *  pSvcLocator 
)

◆ EnergyCalculator() [2/2]

LArG4::EC::EnergyCalculator::EnergyCalculator ( const EnergyCalculator )
private

Member Function Documentation

◆ _AdjustedPhiOfPoint_Barrett()

G4double LArG4::EC::EnergyCalculator::_AdjustedPhiOfPoint_Barrett ( const G4ThreeVector &  p,
G4double  PhiStartOfPhiDiv 
) const
private

◆ _getIRlayer()

G4int LArG4::EC::EnergyCalculator::_getIRlayer ( G4double  rforalpha) const
private

◆ _getIRlayerA()

G4int LArG4::EC::EnergyCalculator::_getIRlayerA ( G4double  rforalpha) const
private

◆ _interpolateCurrentSubStep()

G4double LArG4::EC::EnergyCalculator::_interpolateCurrentSubStep ( G4double  rforalpha,
G4int  gapup,
const G4double  vmap[],
G4double  tol,
const FoldArea fa,
G4int &  gaperr 
) const
private

◆ _interpolateCurrentSubStep1()

G4double LArG4::EC::EnergyCalculator::_interpolateCurrentSubStep1 ( G4double  rforalpha,
const G4double  vmap[],
const G4ThreeVector &  Pe,
int  side_dte,
int  Pe_fan,
const G4ThreeVector &  Pa,
int  side_dta,
int  Pa_fan,
const FoldArea fa,
G4int &  gaperr 
) const
private

◆ _normalizeAngle2Pi()

static G4double LArG4::EC::EnergyCalculator::_normalizeAngle2Pi ( G4double  a)
inlinestaticprivate

Definition at line 351 of file EnergyCalculator.h.

351  {
352  return ( a<0.) ?
353  a + CLHEP::twopi
354  :
355  (a >= CLHEP::twopi ? a - CLHEP::twopi: a);
356  }

◆ CalculateChargeCollection()

G4double LArG4::EC::EnergyCalculator::CalculateChargeCollection ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ CalculateChargeCollection1()

G4double LArG4::EC::EnergyCalculator::CalculateChargeCollection1 ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ CHC_Esr()

G4double LArG4::EC::EnergyCalculator::CHC_Esr ( ) const
inlineprivate

Definition at line 297 of file EnergyCalculator.h.

297 { return m_CHC_Esr; };

◆ ChCollWheelType()

const Wheel_Efield_Map* LArG4::EC::EnergyCalculator::ChCollWheelType ( ) const
inlineprivate

Definition at line 225 of file EnergyCalculator.h.

225 { return m_ChCollWheelType; };

◆ CorrectionTypeHandler()

void LArG4::EC::EnergyCalculator::CorrectionTypeHandler ( Gaudi::Details::PropertyBase &  )

◆ CreateArrays()

void LArG4::EC::EnergyCalculator::CreateArrays ( Wheel_Efield_Map ,
G4int   
)
private

◆ distance_to_the_nearest_electrode()

G4double LArG4::EC::EnergyCalculator::distance_to_the_nearest_electrode ( const G4ThreeVector &  p) const
private

◆ distance_to_the_nearest_electrode_Barrett()

G4double LArG4::EC::EnergyCalculator::distance_to_the_nearest_electrode_Barrett ( const G4ThreeVector &  p,
G4double  Barret_PhiStart 
) const
private

◆ distance_to_the_nearest_electrode_Default()

G4double LArG4::EC::EnergyCalculator::distance_to_the_nearest_electrode_Default ( const G4ThreeVector &  p,
G4double   
) const
inlineprivate

Definition at line 96 of file EnergyCalculator.h.

96  {
98  }

◆ DistanceToEtaLine()

G4double LArG4::EC::EnergyCalculator::DistanceToEtaLine ( const G4ThreeVector &  p,
G4double  eta 
) const
private

◆ DriftVelo()

static G4double LArG4::EC::EnergyCalculator::DriftVelo ( const G4double  T,
const G4double  Efield 
)
inlinestaticprivate

Definition at line 262 of file EnergyCalculator.h.

262  {
263  if( Efield <= 0.000001) {return 0.;}
264  return ( (-0.01481*(T-90.371)+1.)*
265  ( 0.141*Efield*log(1.+12.4/Efield)+
266  1.627*pow(Efield,0.317) )
267  -0.0075*(T-90.371)
268  );
269  }

◆ dummy_correction_method()

G4double LArG4::EC::EnergyCalculator::dummy_correction_method ( G4double  e,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
inlineprivate

Definition at line 129 of file EnergyCalculator.h.

130  {
131  return e;
132  }

◆ elc()

const LArWheelCalculator* LArG4::EC::EnergyCalculator::elc ( ) const
inlineprivate

Definition at line 330 of file EnergyCalculator.h.

330 { return m_electrode_calculator; }

◆ ElectrodeFanHalfThickness()

G4double LArG4::EC::EnergyCalculator::ElectrodeFanHalfThickness ( ) const
inlineprivate

Definition at line 183 of file EnergyCalculator.h.

183 { return m_ElectrodeFanHalfThickness; };

◆ FanAbsThickness()

G4double LArG4::EC::EnergyCalculator::FanAbsThickness ( ) const
inlineprivate

Definition at line 186 of file EnergyCalculator.h.

186 { return m_FanAbsThickness; };

◆ FanEleFoldRadiusOld()

G4double LArG4::EC::EnergyCalculator::FanEleFoldRadiusOld ( ) const
inlineprivate

Definition at line 185 of file EnergyCalculator.h.

185 { return m_FanEleFoldRadiusOld; };

◆ FanEleThickness()

G4double LArG4::EC::EnergyCalculator::FanEleThickness ( ) const
inlineprivate

Definition at line 187 of file EnergyCalculator.h.

187 { return m_FanEleThickness; };

◆ FanEleThicknessOld()

G4double LArG4::EC::EnergyCalculator::FanEleThicknessOld ( ) const
inlineprivate

Definition at line 184 of file EnergyCalculator.h.

184 { return m_FanEleThicknessOld; };

◆ finalize()

virtual StatusCode LArG4::EC::EnergyCalculator::finalize ( )
finaloverridevirtual

◆ FindDMIdentifier_Barrett()

G4bool LArG4::EC::EnergyCalculator::FindDMIdentifier_Barrett ( const G4Step *  step,
std::vector< LArHitData > &   
) const
private

◆ FindIdentifier_Barrett()

G4bool LArG4::EC::EnergyCalculator::FindIdentifier_Barrett ( const G4Step *  ,
G4double  ,
std::vector< LArHitData > &  ,
G4ThreeVector &  ,
G4ThreeVector &   
) const
private

◆ FindIdentifier_Default()

G4bool LArG4::EC::EnergyCalculator::FindIdentifier_Default ( const G4Step *  ,
std::vector< LArHitData > &  ,
G4ThreeVector &  ,
G4ThreeVector &   
) const
private

◆ FoldingAngle()

G4double LArG4::EC::EnergyCalculator::FoldingAngle ( G4double  ) const
private

◆ GapAdjustment()

G4double LArG4::EC::EnergyCalculator::GapAdjustment ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GapAdjustment__sE()

G4double LArG4::EC::EnergyCalculator::GapAdjustment__sE ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GapAdjustment_E()

G4double LArG4::EC::EnergyCalculator::GapAdjustment_E ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GapAdjustment_old()

G4double LArG4::EC::EnergyCalculator::GapAdjustment_old ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GapAdjustment_s()

G4double LArG4::EC::EnergyCalculator::GapAdjustment_s ( G4double  ,
const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GApower()

G4double LArG4::EC::EnergyCalculator::GApower ( ) const
inlineprivate

Definition at line 143 of file EnergyCalculator.h.

143 { return m_GApower; };

◆ GetBarrettePCE()

G4bool LArG4::EC::EnergyCalculator::GetBarrettePCE ( const G4ThreeVector &  p,
G4double  PhiStartOfPhiDiv,
G4double &  phi,
G4int &  compartment,
G4int &  eta_bin 
) const
private

◆ GetCompartment_Barrett()

G4bool LArG4::EC::EnergyCalculator::GetCompartment_Barrett ( const G4ThreeVector &  ,
G4double  ,
G4double  ,
G4double  ,
G4int &  ,
G4int &   
) const
private

◆ GetCurrent()

G4double LArG4::EC::EnergyCalculator::GetCurrent ( const G4double *  ,
const G4double *  ,
G4double  ,
G4double  Barret_PhiStart 
) const
private

◆ GetCurrent1()

G4double LArG4::EC::EnergyCalculator::GetCurrent1 ( const G4ThreeVector &  ,
const G4ThreeVector &  ,
G4double   
) const
private

◆ GetGapSize()

G4double LArG4::EC::EnergyCalculator::GetGapSize ( const G4ThreeVector &  p) const
private

◆ GetGapSize_Barrett()

G4double LArG4::EC::EnergyCalculator::GetGapSize_Barrett ( const G4ThreeVector &  p) const
private

◆ GetGapSize_Default()

G4double LArG4::EC::EnergyCalculator::GetGapSize_Default ( const G4ThreeVector &  p) const
inlineprivate

Definition at line 91 of file EnergyCalculator.h.

91  {
92  return GetGapSize(p);
93  }

◆ GetHV_Value()

G4double LArG4::EC::EnergyCalculator::GetHV_Value ( const G4ThreeVector &  p,
G4double  PhiStartOfPhiDiv 
) const
private

◆ GetPhiGap()

void LArG4::EC::EnergyCalculator::GetPhiGap ( const G4double *  ,
WheelGeometry  
) const
private

◆ GetPhiGap_Barrett()

G4int LArG4::EC::EnergyCalculator::GetPhiGap_Barrett ( const G4ThreeVector &  p,
G4double  PhiStartOfPhiDiv 
) const
private

◆ getPhiStartOfPhiDiv()

G4double LArG4::EC::EnergyCalculator::getPhiStartOfPhiDiv ( const G4Step *  step) const
private

◆ GetVolumeIndex()

G4bool LArG4::EC::EnergyCalculator::GetVolumeIndex ( const G4Step *  ,
G4int &  ,
G4int &   
) const
private

◆ GetWeightfromFieldMap()

G4double LArG4::EC::EnergyCalculator::GetWeightfromFieldMap ( G4int  ,
G4double  ,
G4double  ,
const FoldArea fa 
) const
private

◆ HalfLArGapSize()

G4double LArG4::EC::EnergyCalculator::HalfLArGapSize ( G4double  ,
G4double   
) const
private

◆ HalfLArGapSizeOld()

G4double LArG4::EC::EnergyCalculator::HalfLArGapSizeOld ( G4double  ) const
private

◆ Index()

G4int LArG4::EC::EnergyCalculator::Index ( const Fold_Efield_Map foldmap,
G4int  i,
G4int  j,
G4int  k 
) const
inlineprivate

Definition at line 237 of file EnergyCalculator.h.

237  {
238  return foldmap->pLayer[i]+j*foldmap->NofPointsinLayer[i]+k;
239  };

◆ IniGeomforFieldMaps()

void LArG4::EC::EnergyCalculator::IniGeomforFieldMaps ( void  )
private

◆ initialize()

virtual StatusCode LArG4::EC::EnergyCalculator::initialize ( )
finaloverridevirtual

◆ initializeForSDCreation()

virtual void LArCalculatorSvcImp::initializeForSDCreation ( )
inlineoverridevirtualinherited

Reimplemented in LArBarrelCalculator, and LArHECWheelCalculator.

Definition at line 18 of file LArCalculatorSvcImp.h.

18 {};

◆ IonReco()

static G4double LArG4::EC::EnergyCalculator::IonReco ( const G4double  Efield)
inlinestaticprivate

Definition at line 256 of file EnergyCalculator.h.

256  {
257  if(Efield<=0.000001){return 0.;}
258  if(Efield>2.) {return (1./(1. +0.36/Efield));}
259  return (1./(1.04+0.28/Efield));
260  }

◆ isInTime()

virtual G4bool LArG4::EC::EnergyCalculator::isInTime ( G4double  hitTime) const
inlinefinaloverridevirtual

Definition at line 71 of file EnergyCalculator.h.

72  {
73  return !(hitTime > m_OOTcut); //FIXME should we be checking the absolute value of hitTime here?
74  }

◆ LoadFieldMaps()

void LArG4::EC::EnergyCalculator::LoadFieldMaps ( const G4String &  )
private

◆ lwc()

const LArWheelCalculator* LArG4::EC::EnergyCalculator::lwc ( ) const
inlineprivate

Definition at line 322 of file EnergyCalculator.h.

322 { return m_lwc; }

◆ OOTcut()

virtual G4float LArG4::EC::EnergyCalculator::OOTcut ( ) const
inlinefinaloverridevirtual

Definition at line 67 of file EnergyCalculator.h.

67 { return m_OOTcut; }

◆ operator=()

EnergyCalculator& LArG4::EC::EnergyCalculator::operator= ( const EnergyCalculator )
private

◆ PrepareFieldMap()

void LArG4::EC::EnergyCalculator::PrepareFieldMap ( Wheel_Efield_Map ChCollWheelType)
private

◆ Process()

virtual G4bool LArG4::EC::EnergyCalculator::Process ( const G4Step *  ,
std::vector< LArHitData > &   
) const
finaloverridevirtual

◆ Process_Barrett()

G4bool LArG4::EC::EnergyCalculator::Process_Barrett ( const G4Step *  ,
std::vector< LArHitData > &   
) const
private

◆ Process_Default()

G4bool LArG4::EC::EnergyCalculator::Process_Default ( const G4Step *  ,
std::vector< LArHitData > &   
) const
private

◆ SetConst_OuterBarrett()

void LArG4::EC::EnergyCalculator::SetConst_OuterBarrett ( void  )
private

◆ SetFoldArea()

void LArG4::EC::EnergyCalculator::SetFoldArea ( G4double  ,
FoldArea  
) const
private

◆ SetHalfWave()

void LArG4::EC::EnergyCalculator::SetHalfWave ( G4double  ,
WheelGeometry  
) const
private

◆ SetYlimitsofPhigapinFieldMap()

void LArG4::EC::EnergyCalculator::SetYlimitsofPhigapinFieldMap ( G4int  ,
const WheelGeometry wg,
G4double *  Ylimits 
) const
private

◆ SetYlimitsofPhigapinWheel()

void LArG4::EC::EnergyCalculator::SetYlimitsofPhigapinWheel ( G4double  ,
G4double  ,
const WheelGeometry wg,
G4double *  Ylimits 
) const
private

◆ SolidTypeHandler()

void LArG4::EC::EnergyCalculator::SolidTypeHandler ( Gaudi::Details::PropertyBase &  )

◆ TransformWheeltoFieldMap()

void LArG4::EC::EnergyCalculator::TransformWheeltoFieldMap ( const G4double *  ,
G4double *  ,
const WheelGeometry wg,
const FoldArea fa 
) const
private

◆ TransFromBarrtoWheel()

void LArG4::EC::EnergyCalculator::TransFromBarrtoWheel ( const G4double *  ,
G4double  PhiStartOfPhiDiv,
G4double *   
) const
private

◆ WaveLength()

G4double LArG4::EC::EnergyCalculator::WaveLength ( ) const
inlineprivate

Definition at line 188 of file EnergyCalculator.h.

188 { return m_WaveLength; };

◆ YofNeutralFibre()

G4double LArG4::EC::EnergyCalculator::YofNeutralFibre ( G4double  alpha,
G4double  rho,
const WheelGeometry wg 
) const
inlineprivate

Definition at line 277 of file EnergyCalculator.h.

277  {
278  return YofSurface(alpha,rho,0., wg);
279  }

◆ YofSurface()

G4double LArG4::EC::EnergyCalculator::YofSurface ( G4double  ,
G4double  ,
G4double  ,
const WheelGeometry  
) const
private

Member Data Documentation

◆ m_Birksk

double LArCalculatorSvcImp::m_Birksk
protectedinherited

Definition at line 25 of file LArCalculatorSvcImp.h.

◆ m_BirksLaw

bool LArCalculatorSvcImp::m_BirksLaw
protectedinherited

Definition at line 22 of file LArCalculatorSvcImp.h.

◆ m_birksLaw

LArG4BirksLaw* LArG4::EC::EnergyCalculator::m_birksLaw {}
private

Definition at line 320 of file EnergyCalculator.h.

◆ m_CHC_Esr

DoubleProperty LArG4::EC::EnergyCalculator::m_CHC_Esr {this, "EMECRsr", 0.2*CLHEP::mm}
private

Definition at line 296 of file EnergyCalculator.h.

◆ m_ChCollInner

Wheel_Efield_Map LArG4::EC::EnergyCalculator::m_ChCollInner {}
private

Definition at line 222 of file EnergyCalculator.h.

◆ m_ChCollOuter

Wheel_Efield_Map LArG4::EC::EnergyCalculator::m_ChCollOuter {}
private

Definition at line 222 of file EnergyCalculator.h.

◆ m_ChCollWheelType

Wheel_Efield_Map* LArG4::EC::EnergyCalculator::m_ChCollWheelType = nullptr
private

Definition at line 223 of file EnergyCalculator.h.

◆ m_correction_type

EnergyCorrection_t LArG4::EC::EnergyCalculator::m_correction_type {EMEC_ECOR_CHCL1}
private

Definition at line 126 of file EnergyCalculator.h.

◆ m_corrProp

UnsignedIntegerProperty LArG4::EC::EnergyCalculator::m_corrProp {8}
private

Definition at line 125 of file EnergyCalculator.h.

◆ m_DB_HV

BooleanProperty LArG4::EC::EnergyCalculator::m_DB_HV {this, "EMECHVEnable", false}
private

Definition at line 243 of file EnergyCalculator.h.

◆ m_distance_to_the_nearest_electrode_type

G4double(EnergyCalculator::* LArG4::EC::EnergyCalculator::m_distance_to_the_nearest_electrode_type) (const G4ThreeVector &p, G4double) const
inlineprivate

Definition at line 80 of file EnergyCalculator.h.

80 {};

◆ m_ecorr_method

G4double(EnergyCalculator::* LArG4::EC::EnergyCalculator::m_ecorr_method) (G4double, const G4ThreeVector &, const G4ThreeVector &, G4double) const
inlineprivate

Definition at line 128 of file EnergyCalculator.h.

128 {};

◆ m_electrode_calculator

LArWheelCalculator* LArG4::EC::EnergyCalculator::m_electrode_calculator {}
private

Definition at line 329 of file EnergyCalculator.h.

◆ m_ElectrodeFanHalfThickness

G4double LArG4::EC::EnergyCalculator::m_ElectrodeFanHalfThickness = 0.0
private

Definition at line 171 of file EnergyCalculator.h.

◆ m_FanAbsThickness

G4double LArG4::EC::EnergyCalculator::m_FanAbsThickness = 0.0
private

Definition at line 174 of file EnergyCalculator.h.

◆ m_FanEleFoldRadiusOld

G4double LArG4::EC::EnergyCalculator::m_FanEleFoldRadiusOld = 0.0
private

Definition at line 173 of file EnergyCalculator.h.

◆ m_FanEleThickness

G4double LArG4::EC::EnergyCalculator::m_FanEleThickness = 0.0
private

Definition at line 175 of file EnergyCalculator.h.

◆ m_FanEleThicknessOld

G4double LArG4::EC::EnergyCalculator::m_FanEleThicknessOld = 0.0
private

Definition at line 172 of file EnergyCalculator.h.

◆ m_FieldMapVersion

G4String LArG4::EC::EnergyCalculator::m_FieldMapVersion
private

Definition at line 192 of file EnergyCalculator.h.

◆ m_GApower

DoubleProperty LArG4::EC::EnergyCalculator::m_GApower {this, "EMECGapPower", 1.4}
private

Definition at line 142 of file EnergyCalculator.h.

◆ m_geoDbTagSvc

ServiceHandle<IGeoDbTagSvc> LArG4::EC::EnergyCalculator::m_geoDbTagSvc {this, "GeoDbTagSvc", "GeoDbTagSvc"}
private

Definition at line 325 of file EnergyCalculator.h.

◆ m_geoModel

ServiceHandle<IGeoModelSvc> LArG4::EC::EnergyCalculator::m_geoModel {this, "GeoModelSvc", "GeoModelSvc"}
private

Definition at line 324 of file EnergyCalculator.h.

◆ m_GetGapSize_type

G4double(EnergyCalculator::* LArG4::EC::EnergyCalculator::m_GetGapSize_type) (const G4ThreeVector &p) const
inlineprivate

Definition at line 79 of file EnergyCalculator.h.

79 {};

◆ m_HVHelper

std::unique_ptr<const HVHelper> LArG4::EC::EnergyCalculator::m_HVHelper
private

Definition at line 361 of file EnergyCalculator.h.

◆ m_HVMapVersion

StringProperty LArG4::EC::EnergyCalculator::m_HVMapVersion {this, "EMECHVMap", "v02"}
private

Definition at line 242 of file EnergyCalculator.h.

◆ m_lwc

LArWheelCalculator* LArG4::EC::EnergyCalculator::m_lwc {}
private

Definition at line 321 of file EnergyCalculator.h.

◆ m_OOTcut

double LArCalculatorSvcImp::m_OOTcut
protectedinherited

Definition at line 28 of file LArCalculatorSvcImp.h.

◆ m_Process_type

G4bool(EnergyCalculator::* LArG4::EC::EnergyCalculator::m_Process_type) (const G4Step *, std::vector< LArHitData > &) const
inlineprivate

Definition at line 78 of file EnergyCalculator.h.

78 {};

◆ m_RefzDist

G4double LArG4::EC::EnergyCalculator::m_RefzDist = 0.0
private

Definition at line 117 of file EnergyCalculator.h.

◆ m_rlim

G4double LArG4::EC::EnergyCalculator::m_rlim[50]
private

Definition at line 122 of file EnergyCalculator.h.

◆ m_S3_Rlim

G4double LArG4::EC::EnergyCalculator::m_S3_Rlim[21]
private

Definition at line 121 of file EnergyCalculator.h.

◆ m_solidtype

LArG4::LArWheelCalculator_t LArG4::EC::EnergyCalculator::m_solidtype {LArG4::InnerAbsorberWheel}
private

Definition at line 318 of file EnergyCalculator.h.

◆ m_solidtypeProp

UnsignedIntegerProperty LArG4::EC::EnergyCalculator::m_solidtypeProp {0}
private

Definition at line 317 of file EnergyCalculator.h.

◆ m_suffix

StringProperty LArG4::EC::EnergyCalculator::m_suffix {this, "EMECChMap", "v03"}
private

Definition at line 326 of file EnergyCalculator.h.

◆ m_supportCalculator

ServiceHandle<ILArCalibCalculatorSvc> LArG4::EC::EnergyCalculator::m_supportCalculator {this, "SupportCalculator", "EMECSupportCalibrationCalculator"}
private

Definition at line 101 of file EnergyCalculator.h.

◆ m_WaveLength

G4double LArG4::EC::EnergyCalculator::m_WaveLength = 0.0
private

Definition at line 176 of file EnergyCalculator.h.

◆ m_ziw

G4double LArG4::EC::EnergyCalculator::m_ziw[7]
private

Definition at line 179 of file EnergyCalculator.h.

◆ m_zlim

G4double LArG4::EC::EnergyCalculator::m_zlim[4]
private

Definition at line 123 of file EnergyCalculator.h.

◆ m_zsep12

G4double LArG4::EC::EnergyCalculator::m_zsep12[44]
private

Definition at line 178 of file EnergyCalculator.h.

◆ m_zsep23

G4double LArG4::EC::EnergyCalculator::m_zsep23[22]
private

Definition at line 180 of file EnergyCalculator.h.

◆ m_zside

IntegerProperty LArG4::EC::EnergyCalculator::m_zside {this, "zSide", 1}
private

Definition at line 319 of file EnergyCalculator.h.

◆ s_AverageCurrent

const G4double LArG4::EC::EnergyCalculator::s_AverageCurrent
staticprivate

Definition at line 247 of file EnergyCalculator.h.

◆ s_AverageEfield

const G4double LArG4::EC::EnergyCalculator::s_AverageEfield
staticprivate

Definition at line 246 of file EnergyCalculator.h.

◆ s_AverageGap

const G4double LArG4::EC::EnergyCalculator::s_AverageGap
staticprivate

Definition at line 195 of file EnergyCalculator.h.

◆ s_AverageHV

const G4double LArG4::EC::EnergyCalculator::s_AverageHV
staticprivate

Definition at line 245 of file EnergyCalculator.h.

◆ s_ColdCorrection

const G4double LArG4::EC::EnergyCalculator::s_ColdCorrection
staticprivate

Definition at line 106 of file EnergyCalculator.h.

◆ s_DistOfEndofCuFromBack

const G4double LArG4::EC::EnergyCalculator::s_DistOfEndofCuFromBack
staticprivate

Definition at line 110 of file EnergyCalculator.h.

◆ s_DistOfStartofCuFromBack

const G4double LArG4::EC::EnergyCalculator::s_DistOfStartofCuFromBack
staticprivate

Definition at line 111 of file EnergyCalculator.h.

◆ s_EdgeWidth

const G4double LArG4::EC::EnergyCalculator::s_EdgeWidth
staticprivate

Definition at line 109 of file EnergyCalculator.h.

◆ s_GA_SubstepSize

const G4double LArG4::EC::EnergyCalculator::s_GA_SubstepSize
staticprivate

Definition at line 362 of file EnergyCalculator.h.

◆ s_geometry

const geometry_t LArG4::EC::EnergyCalculator::s_geometry[]
staticprivate

Definition at line 375 of file EnergyCalculator.h.

◆ s_GridSize

const G4double LArG4::EC::EnergyCalculator::s_GridSize
staticprivate

Definition at line 194 of file EnergyCalculator.h.

◆ s_inv_AverageGap

const G4double LArG4::EC::EnergyCalculator::s_inv_AverageGap
staticprivate

Definition at line 196 of file EnergyCalculator.h.

◆ s_KapGap

const G4double LArG4::EC::EnergyCalculator::s_KapGap
staticprivate

Definition at line 108 of file EnergyCalculator.h.

◆ s_LArTemperature_av

const G4double LArG4::EC::EnergyCalculator::s_LArTemperature_av
staticprivate

Definition at line 252 of file EnergyCalculator.h.

◆ s_LArTemperature_ECC0

const G4double LArG4::EC::EnergyCalculator::s_LArTemperature_ECC0
staticprivate

Definition at line 249 of file EnergyCalculator.h.

◆ s_LArTemperature_ECC1

const G4double LArG4::EC::EnergyCalculator::s_LArTemperature_ECC1
staticprivate

Definition at line 250 of file EnergyCalculator.h.

◆ s_LArTemperature_ECC5

const G4double LArG4::EC::EnergyCalculator::s_LArTemperature_ECC5
staticprivate

Definition at line 251 of file EnergyCalculator.h.

◆ s_LongBarThickness

const G4double LArG4::EC::EnergyCalculator::s_LongBarThickness
staticprivate

Definition at line 105 of file EnergyCalculator.h.

◆ s_Rmeas_outer

const G4double LArG4::EC::EnergyCalculator::s_Rmeas_outer[50]
staticprivate

Definition at line 115 of file EnergyCalculator.h.

◆ s_S3_Etalim

const G4double LArG4::EC::EnergyCalculator::s_S3_Etalim[21]
staticprivate

Definition at line 114 of file EnergyCalculator.h.

◆ s_StripWidth

const G4double LArG4::EC::EnergyCalculator::s_StripWidth
staticprivate

Definition at line 107 of file EnergyCalculator.h.

◆ s_ZmaxOfSignal

const G4double LArG4::EC::EnergyCalculator::s_ZmaxOfSignal
staticprivate

Definition at line 112 of file EnergyCalculator.h.

◆ s_Zmeas_outer

const G4double LArG4::EC::EnergyCalculator::s_Zmeas_outer[2]
staticprivate

Definition at line 116 of file EnergyCalculator.h.


The documentation for this class was generated from the following file:
LArG4::EC::EnergyCalculator::m_electrode_calculator
LArWheelCalculator * m_electrode_calculator
Definition: EnergyCalculator.h:329
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
LArG4::EC::EnergyCalculator::distance_to_the_nearest_electrode
G4double distance_to_the_nearest_electrode(const G4ThreeVector &p) const
conifer::pow
constexpr int pow(int x)
Definition: conifer.h:20
LArG4::EC::EnergyCalculator::YofSurface
G4double YofSurface(G4double, G4double, G4double, const WheelGeometry &) const
LArG4::EC::EnergyCalculator::m_ElectrodeFanHalfThickness
G4double m_ElectrodeFanHalfThickness
Definition: EnergyCalculator.h:171
LArG4::EC::EnergyCalculator::m_WaveLength
G4double m_WaveLength
Definition: EnergyCalculator.h:176
LArG4::EC::EnergyCalculator::GetGapSize
G4double GetGapSize(const G4ThreeVector &p) const
LArG4::EC::EnergyCalculator::m_ChCollWheelType
Wheel_Efield_Map * m_ChCollWheelType
Definition: EnergyCalculator.h:223
LArG4::EC::EnergyCalculator::m_lwc
LArWheelCalculator * m_lwc
Definition: EnergyCalculator.h:321
LArG4::EC::EnergyCalculator::m_FanEleThickness
G4double m_FanEleThickness
Definition: EnergyCalculator.h:175
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
LArG4::EC::EnergyCalculator::m_FanAbsThickness
G4double m_FanAbsThickness
Definition: EnergyCalculator.h:174
lumiFormat.i
int i
Definition: lumiFormat.py:85
LArG4::EC::EnergyCalculator::m_FanEleFoldRadiusOld
G4double m_FanEleFoldRadiusOld
Definition: EnergyCalculator.h:173
LArG4::EC::EnergyCalculator::m_CHC_Esr
DoubleProperty m_CHC_Esr
Definition: EnergyCalculator.h:296
twopi
constexpr double twopi
Definition: VertexPointEstimator.cxx:16
LArG4::EC::EnergyCalculator::m_GApower
DoubleProperty m_GApower
Definition: EnergyCalculator.h:142
a
TList * a
Definition: liststreamerinfos.cxx:10
LArCalculatorSvcImp::m_OOTcut
double m_OOTcut
Definition: LArCalculatorSvcImp.h:28
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
hitTime
float hitTime(const AFP_SIDSimHit &hit)
Definition: AFP_SIDSimHit.h:39
LArG4::EC::EnergyCalculator::m_FanEleThicknessOld
G4double m_FanEleThicknessOld
Definition: EnergyCalculator.h:172
fitman.rho
rho
Definition: fitman.py:532
fitman.k
k
Definition: fitman.py:528