19#ifndef BDSPSCELLFLUXSCALED3D_H
20#define BDSPSCELLFLUXSCALED3D_H
23#include "G4THitsMap.hh"
24#include "G4VPrimitiveScorer.hh"
49 const G4String& unitIn =
"percm2",
50 G4int ni=1, G4int nj=1, G4int nk=1,
51 G4int depi=2, G4int depj=1, G4int depk=0);
57 const G4String& filename,
58 const G4String& unitIn =
"percm2",
59 G4int ni=1, G4int nj=1, G4int nk=1,
60 G4int depi=2, G4int depj=1, G4int depk=0);
65 void Initialize(G4HCofThisEvent* HCE)
override;
66 void EndOfEvent(G4HCofThisEvent* HCE)
override;
67 void clear()
override;
68 G4bool ProcessHits(G4Step* aStep, G4TouchableHistory*)
override;
69 G4int GetIndex(G4Step* aStep)
override;
71 virtual G4double GetConversionFactor(G4int particleID,
72 G4double kineticEnergy)
const;
93 std::map<G4VSolid*, G4double> volumeCache;
Mapping from axis indices to 1D index.
Primitive scorer for cell flux in a 3D mesh with a conversion factor.
G4THitsMap< G4double > * evtMap3D
Hits map.
const BDSHistBinMapper * mapper
Mapping from coordinate systems in mesh to global replica number.
G4int fDepthk
Depth in replica to look for each dimension.
G4PhysicsVector * conversionFactor
Conversion factor interpolator object.
G4int fDepthi
Depth in replica to look for each dimension.
G4int fDepthj
Depth in replica to look for each dimension.
void DefineUnitAndCategory() const
Define units -> taken from G4PSCellFlux.
G4int HCID3D
Collection ID.