7#ifndef PILEUPCOMPS_FIXEDARRAYBM
8#define PILEUPCOMPS_FIXEDARRAYBM 1
18#include "Gaudi/Property.h"
33 virtual StatusCode
initialize()
override final;
37 virtual float normFactor(
int iXing)
const override final;
39 virtual void selectT0(
unsigned int ,
unsigned long long )
override final { }
44 virtual unsigned int getBCID(
int iXing)
const
51 "The number of slots in each LHC beam. Default: 3564."};
53 Gaudi::Property<unsigned int>
m_t0Offset{
this,
"T0Offset", 0,
54 "Offset of the T0 w.r.t. our intensity pattern"};
57 "Allow the offset of the T0 to sit in an empty bunch crossing."};
60 "An array of floats containing the beam intensity distribution as a function of "
61 "time in bins of 25ns. FixedArrayBM normalizes the distribution and uses it as a "
62 "stencil to determine the relative intensity at each beam xing in the simulated range"};
provides the relative beam intensity as a function of the bunch xing.
virtual void selectT0(unsigned int, unsigned long long) override final
Gaudi::Property< unsigned int > m_maxBunchCrossingPerOrbit
Gaudi::Property< unsigned int > m_t0Offset
double * m_intensityPattern
normalized intensity pattern.
Gaudi::Property< std::vector< float > > m_intensityPatternProp
virtual unsigned int getBCID(int iXing) const
virtual StatusCode initialize() override final
virtual float largestElementInPattern() const override final
Gaudi::Property< bool > m_allowEmptyT0BunchCrossing
unsigned int m_ipLength
length of the intensity pattern
FixedArrayBM(const std::string &name, ISvcLocator *svc)
virtual unsigned int getBeamPatternLength() const override final
float m_largestElementInPattern
The largest value in the pattern assuming that the pattern has mean value 1.0.
virtual unsigned int getCurrentT0BunchCrossing() const override final
virtual float normFactor(int iXing) const override final