k4SimGeant4
Loading...
Searching...
No Matches
MaterialScan Class Reference

Service that facilitates material scan on initialize This service outputs a ROOT file containing a TTree with radiation lengths and material thickness For an example on how to read the file, see Examples/scripts/material_plots.py. More...

#include <MaterialScan.h>

Inheritance diagram for MaterialScan:
Collaboration diagram for MaterialScan:

Public Member Functions

 MaterialScan (const std::string &name, ISvcLocator *svcLoc)
 
virtual StatusCode initialize ()
 
virtual StatusCode finalize ()
 
virtual ~MaterialScan ()
 

Private Attributes

Gaudi::Property< std::string > m_filename {this, "filename", "", "file name to save the tree to"}
 name of the output file
 
ServiceHandle< IGeoSvc > m_geoSvc
 Handle to the geometry service from which the detector is retrieved.
 
Gaudi::Property< double > m_etaBinning {this, "etaBinning", 0.05, "eta bin size"}
 Step size in eta.
 
Gaudi::Property< double > m_etaMax {this, "etaMax", 6, "maximum eta value"}
 Maximum eta until which to scan, scan is performed from -m_etaMax to +m_etaMax.
 
Gaudi::Property< double > m_nPhiTrials
 number of random, uniformly distributed phi values to average over
 
Gaudi::Property< std::string > m_envelopeName
 Name of the envelope within which the material is measured (by default: world volume)
 
Rndm::Numbers m_flatPhiDist
 Flat random number generator.
 
Rndm::Numbers m_flatEtaDist
 Flat random number generator.
 

Detailed Description

Service that facilitates material scan on initialize This service outputs a ROOT file containing a TTree with radiation lengths and material thickness For an example on how to read the file, see Examples/scripts/material_plots.py.

!!! Superseeded by MaterialScan_genericAngle.h that extends this script by the possibility to use also theta (degrees), theta (radians) or cos(theta) instead of eta. !!!

Author
J. Lingemann

Constructor & Destructor Documentation

◆ MaterialScan()

MaterialScan::MaterialScan ( const std::string & name,
ISvcLocator * svcLoc )
explicit

◆ ~MaterialScan()

virtual MaterialScan::~MaterialScan ( )
inlinevirtual

Member Function Documentation

◆ finalize()

StatusCode MaterialScan::finalize ( )
virtual

◆ initialize()

StatusCode MaterialScan::initialize ( )
virtual

Member Data Documentation

◆ m_envelopeName

Gaudi::Property<std::string> MaterialScan::m_envelopeName
private
Initial value:
{this, "envelopeName", "world",
"name of the envelope within which the material is measured"}

Name of the envelope within which the material is measured (by default: world volume)

◆ m_etaBinning

Gaudi::Property<double> MaterialScan::m_etaBinning {this, "etaBinning", 0.05, "eta bin size"}
private

Step size in eta.

◆ m_etaMax

Gaudi::Property<double> MaterialScan::m_etaMax {this, "etaMax", 6, "maximum eta value"}
private

Maximum eta until which to scan, scan is performed from -m_etaMax to +m_etaMax.

◆ m_filename

Gaudi::Property<std::string> MaterialScan::m_filename {this, "filename", "", "file name to save the tree to"}
private

name of the output file

◆ m_flatEtaDist

Rndm::Numbers MaterialScan::m_flatEtaDist
private

Flat random number generator.

◆ m_flatPhiDist

Rndm::Numbers MaterialScan::m_flatPhiDist
private

Flat random number generator.

◆ m_geoSvc

ServiceHandle<IGeoSvc> MaterialScan::m_geoSvc
private

Handle to the geometry service from which the detector is retrieved.

◆ m_nPhiTrials

Gaudi::Property<double> MaterialScan::m_nPhiTrials
private
Initial value:
{this, "nPhiTrials", 100,
"number of random, uniformly distributed phi values to average over"}

number of random, uniformly distributed phi values to average over


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