|
ATLAS Offline Software
|
Go to the documentation of this file.
10 ISvcLocator *pSvcLocator)
11 :
EL::AnaAlgorithm(
name, pSvcLocator)
17 const unsigned char *
p =
static_cast<const unsigned char *
>(
buffer);
18 for (
size_t i = 0;
i <
size;
i++) {
43 ANA_MSG_ERROR(
"The number of bootstrapped weights (toys) cannot be negative!");
44 return StatusCode::FAILURE;
47 ANA_CHECK(m_eventInfoHandle.initialize(m_systematicsList));
48 ANA_CHECK(m_decoration.initialize(m_systematicsList, m_eventInfoHandle));
49 ANA_CHECK(m_systematicsList.initialize());
51 return StatusCode::SUCCESS;
56 for (
const auto &
sys : m_systematicsList.systematicsVector())
65 m_weights.resize(m_nReplicas);
67 for (
int i = 0;
i < m_nReplicas;
i++)
69 m_weights.at(
i) = m_bootstrap.getBootstrap();
73 m_decoration.set(*evtInfo, m_weights,
sys);
76 return StatusCode::SUCCESS;
uint64_t eventNumber() const
The current event's event number.
void setSeed(std::uint64_t eventNumber, std::uint32_t runNumber, std::uint32_t mcChannelNumber)
set the seed of the random number generator based on event properties
uint32_t runNumber() const
The current event's run number.
uint32_t mcChannelNumber() const
The MC generator's channel number.
::StatusCode StatusCode
StatusCode definition for legacy code.
This module defines the arguments passed from the BATCH driver to the BATCH worker.
StatusCode execute() override
StatusCode initialize() override
Class describing the basic event information.
BootstrapGeneratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
std::uint64_t generateSeed(std::uint64_t eventNumber, std::uint32_t runNumber, std::uint32_t mcChannelNumber)
generate a unique seed based on event identifiers
std::uint64_t fnv1a_64(const void *buffer, size_t size, std::uint64_t offset_basis)
implementation of the hash function from https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo...