19#include "BDSHistBinMapper.hh"
21BDSHistBinMapper::BDSHistBinMapper(G4int nBinsIIn, G4int nBinsJIn, G4int nBinsKIn, G4int nBinsLIn):
29BDSHistBinMapper::BDSHistBinMapper(G4int nBinsIIn, G4int nBinsJIn, G4int nBinsKIn, G4int nBinsLIn,
30 boost_histogram_axes_variant energyAxisIn):
35 energyAxis(energyAxisIn)
42G4int BDSHistBinMapper::GlobalFromIJKLIndex(G4int iIndex,
47 return iIndex * nBinsJ * nBinsK * nBinsL + jIndex * nBinsK * nBinsL + kIndex * nBinsL + lIndex;
50void BDSHistBinMapper::IJKLFromGlobal(G4int globalBin,
56 iIndex = globalBin / (nBinsL * nBinsK * nBinsJ);
57 jIndex = (globalBin - iIndex*nBinsL * nBinsK * nBinsJ) / (nBinsL * nBinsK);
58 kIndex = (globalBin - jIndex*nBinsL * nBinsK - iIndex * nBinsL * nBinsK * nBinsJ) / nBinsL;
59 lIndex = globalBin - kIndex*nBinsL - jIndex * nBinsL * nBinsK - iIndex*nBinsL * nBinsK * nBinsJ;