 |
Belle II Software
release-05-02-19
|
11 #ifndef PXDBackgroundMODULE_H_
12 #define PXDBackgroundMODULE_H_
14 #include <framework/core/Module.h>
15 #include <framework/gearbox/Unit.h>
16 #include <vxd/dataobjects/VxdID.h>
17 #include <vxd/geometry/SensorInfoBase.h>
18 #include <pxd/geometry/SensorInfo.h>
19 #include <vxd/geometry/GeoCache.h>
23 #include <vxd/background/niel_fun.h>
48 class PXDBackgroundModule:
public Module {
81 virtual void event()
override;
83 virtual void endRun()
override;
175 return info.getWidth() * info.getLength() * info.getThickness() *
c_densitySi;
181 return info.getWidth() * info.getLength();
std::unique_ptr< TNiel > m_nielPions
Pointer to Niel table for pions.
virtual void beginRun() override
Called when entering a new run.
static const double s
[second]
std::string m_outputDirectoryName
Path to directory where output data will be stored.
const TVector3 & vectorToGlobal(VxdID sensorID, const TVector3 &local)
Convert local vector coordinates to global.
Class to uniquely identify a any structure of the PXD and SVD.
const TVector3 & pointToGlobal(VxdID sensorID, const TVector3 &local)
Convert local sensor coordinates to global.
double m_occupancy
Occupancy.
std::string m_relTrueHitsSimHitsName
PXDTrueHitsToPXDSimHits RelationArray name.
std::string m_storeEnergyDepositsName
PXDEnergyDepositEvents StoreArray name.
unsigned short m_nfluxReportingLevel
0 - no data, 1 - summary only, 2 - ntuple
const PXD::SensorInfo & getInfo(VxdID sensorID) const
This is a shortcut to getting PXD::SensorInfo from the GeoCache.
std::string m_storeOccupancyEventsName
PXDOccupancyEvents StoreArray name.
std::string m_storeMCParticlesName
MCParticles StoreArray name.
static const SensorInfoBase & get(Belle2::VxdID id)
Return a reference to the SensorInfo of a given SensorID.
static const unsigned short c_reportSummary
Summary only.
std::string m_relClusterDigitName
PXDClustersToPXDDigits RelationArray name.
std::unique_ptr< TNiel > m_nielNeutrons
Pointer to Niel table for neutrons.
std::string m_storeClustersName
PXDClusters StoreArray name.
const std::string c_niel_electronFile
NIEL-correction file for electrons.
std::string m_storeTrueHitsName
PXDTrueHits StoreArray name.
void setLayerNumber(baseType layer)
Set the layer id.
int getNumSensors(int layerNum)
Get number of sensors in a layer.
unsigned short m_doseReportingLevel
0 - no data, 1 - summary only, 2 - ntuple
std::string m_relParticlesTrueHitsName
MCParticlesToPXDTrueHits RelationArray name.
std::map< VxdID, SensorData > m_sensorData
Struct to hold sensor-wise background data.
static const unsigned short c_reportNTuple
Summary and NTuple.
unsigned short m_occupancyReportingLevel
0 - no data, 1 - summary only, 2 - ntuple
double getSensorArea(VxdID sensorID) const
Return area of the sensor with the given sensor ID.
double m_neutronFlux
Neutron flux.
std::string m_relDigitsTrueHitsName
StoreArray name of PXDDigits to PXDTrueHits relation.
std::unique_ptr< TNiel > m_nielProtons
Pointer to Niel table for protons.
const std::set< Belle2::VxdID > & getSensors(Belle2::VxdID ladder) const
Return a set of all sensor IDs belonging to a given ladder.
std::unique_ptr< TNiel > m_nielElectrons
Pointer to Niel table for electrons.
const std::string c_niel_neutronFile
NIEL-correction file for neutrons.
Specific implementation of SensorInfo for PXD Sensors which provides additional pixel specific inform...
static GeoCache & getInstance()
Return a reference to the singleton instance.
Abstract base class for different kinds of events.
double getThickness() const
Return the thickness of the sensor.
const std::string c_niel_protonFile
NIEL-correction file for protons.
const double c_smy
Seconds in snowmass year.
std::string m_storeBgMetaDataName
Name of the persistent BackgroundMetaDta object.
double m_componentTime
Time of current component.
double m_dose
Dose (Gy/smy)
double getSensorMass(VxdID sensorID) const
Return mass of the sensor with the given sensor ID.
double m_integrationTime
Integration time of PXD.
virtual void initialize() override
Initialize the Module.
virtual void terminate() override
This method is called at the end of the event processing.
virtual void event() override
This method is the core of the module.
std::string m_relDigitsMCParticlesName
StoreArray name of PXDDigits to MCParticles relation.
virtual ~PXDBackgroundModule()
Destructor.
std::string m_storeFileMetaDataName
Name of the persistent FileMetaData object.
double getSensorThickness(VxdID sensorID) const
Return thickness of the sensor with the given sensor ID.
int getTotalSensors()
Get total number of sensors.
static const unsigned short c_reportNone
No reporting.
double m_fired
Fired pixels per cm2 and second, zero-suppression threshold.
PXDBackgroundModule()
Constructor.
const std::string c_niel_pionFile
NIEL-correction file for pions.
virtual void endRun() override
This method is called if the current run ends.
std::string m_storeNeutronFluxesName
PXDNeutronFluxEvents StoreArray name.
std::string m_storeSimHitsName
PXDSimHits StoreArray name.
const double c_densitySi
Density of crystalline Silicon.
double m_expo
Exposition (energy deposited per cm2 and 1 second)
std::string m_componentName
Name of the current bg component.
static const double g_cm3
Practical units with the value set at 1.
std::string m_storeDigitsName
PXDDigits StoreArray name.