TFCSVoxelHistoLateralCovarianceFluctuations class

Base classes

class TFCSLateralShapeParametrizationHitBase

Constructors, destructors, conversion operators

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

Public functions

void set_geometry(CaloGeo* geo) override
auto get_geometry() -> CaloGeo *
auto initialize(TFile* inputfile, const std::string& folder) -> bool
auto simulate(TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) const -> FCSReturnCode override
auto simulate_hit(Hit& hit, TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) -> FCSReturnCode override

Protected types

using weight_t = std::vector<std::vector<float>>
do not persistify

Protected functions

void MultiGaus(TFCSSimulationState& simulstate, TVectorD& genPars) const

Protected variables

CaloGeo* m_geo
std::vector<std::vector<std::vector<TFCS1DFunction*>>> m_transform
int m_nDim_x
int m_nDim_y
std::vector<TH2*> m_voxel_template
std::vector<TVectorD> m_parMeans
std::vector<TMatrixD> m_EigenVectors
std::vector<TVectorD> m_EigenValues

Function documentation

void TFCSVoxelHistoLateralCovarianceFluctuations::set_geometry(CaloGeo* geo) override

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

auto TFCSVoxelHistoLateralCovarianceFluctuations::simulate(TFCSSimulationState& simulstate, const TFCSTruthState* truth, const TFCSExtrapolationState* extrapol) const -> FCSReturnCode override

create one fluctuated shape for a shower to be applied as scale factor to the average shape Store the fluctuation in simulstate

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

weight the energy of one hit by the fluctuation calculated in simulate(...)