TFCSBinnedShowerBase class

Base classes

class TFCSLateralShapeParametrizationHitBase

Derived classes

class TFCSBinnedShower
class TFCSBinnedShowerONNX

Public types

enum FCSEnergyInitializationStatusBits { kOnlyScaleEnergy = BIT(18) }
Status bit for energy initialization.

Constructors, destructors, conversion operators

TFCSBinnedShowerBase(const char* name = nullptr, const char* title = nullptr)
~TFCSBinnedShowerBase() override

Public functions

auto OnlyScaleEnergy() const -> bool
void set_OnlyScaleEnergy()
void reset_OnlyScaleEnergy()
void set_default_hit_energy(float energy)
void set_max_hits_per_voxel(int max_hits)
auto get_default_hit_energy() const -> float
auto get_max_hits_per_voxel() const -> int
auto simulate(TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) const -> FCSReturnCode override
Method in all derived classes to do some simulation.
auto simulate_hit(Hit& hit, TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) -> FCSReturnCode override
auto get_geometry() -> CaloGeo *
void set_geometry(CaloGeo* geo) override
auto get_number_of_hits(TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) const -> int override

Protected functions

void get_event(TFCSSimulationState& simulstate, float eta_center, float phi_center, float e_init, long unsigned int reference_layer_index) const pure virtual
do not persistify
auto get_n_hits(TFCSSimulationState& simulstate, long unsigned int layer_index) const -> long unsigned int pure virtual
auto get_layer_energy(TFCSSimulationState& simulstate, long unsigned int layer_index) const -> float pure virtual
auto get_hit_position_and_energy(TFCSSimulationState& simulstate, long unsigned int layer_index, long unsigned int hit_index) const -> std::tuple< float, float, float > pure virtual
void delete_event(TFCSSimulationState& simulstate) const pure virtual

Protected variables

CaloGeo* m_geo
float m_default_hit_energy
int m_max_hits_per_voxel

Enum documentation

enum TFCSBinnedShowerBase::FCSEnergyInitializationStatusBits

Status bit for energy initialization.

Enumerators
kOnlyScaleEnergy

Set this bit in the TObject bit field the simulated energy should only be scaled by the GAN

Function documentation

auto TFCSBinnedShowerBase::simulate_hit(Hit& hit, TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) -> FCSReturnCode override

simulated one hit position with some energy. As last step in TFCSLateralShapeParametrizationHitChain::simulate, the hit should be mapped into a cell and this cell recorded in simulstate. All hits/cells should be resacled such that their final sum is simulstate->E(sample)

void TFCSBinnedShowerBase::set_geometry(CaloGeo* geo) override

Method to set the geometry access pointer. Loops over daughter objects if present

auto TFCSBinnedShowerBase::get_number_of_hits(TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) const -> int override

Call get_number_of_hits() only once per shower simulation, as it could be calculated with random numbers and give different results each time. Return a value of -1 if this instance can't determine

auto TFCSBinnedShowerBase::get_layer_energy(TFCSSimulationState& simulstate, long unsigned int layer_index) const -> float pure virtual protected

Returns the total deposited energy in the given layer for the current event