65 weighted(true),divideByArea(true)
76 weighted(true),divideByArea(true)
89 assert(
dynamic_cast<G4Tubs*
>(solid) );
96 if (fDirection ==
fFlux_InOut || dirFlag == fDirection ){
114 G4double angleFactor = (localdir.
x()*localpos.
x()+localdir.
y()*localpos.
y())
115 /std::sqrt(localdir.
x()*localdir.
x()
116 +localdir.
y()*localdir.
y()+localdir.
z()*localdir.
z())
117 /std::sqrt(localpos.
x()*localpos.
x()+localpos.
y()*localpos.
y());
119 if ( angleFactor < 0 ) angleFactor *= -1.;
124 if ( weighted ) flux *=preStep->
GetWeight();
127 flux = flux/angleFactor;
128 if ( divideByArea ) flux /= square;
131 EvtMap->
add(index,flux);
139 "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
167 if ( std::fabs(localpos1.
z()) > tubsSolid->
GetZHalfLength() )
return -1;
171 G4double localR2 = localpos1.
x()*localpos1.
x()+localpos1.
y()*localpos1.
y();
184 if ( std::fabs(localpos2.
z()) > tubsSolid->
GetZHalfLength() )
return -1;
188 G4double localR2 = localpos2.
x()*localpos2.
x()+localpos2.
y()*localpos2.
y();
222 std::map<G4int,G4double*>::iterator itr = EvtMap->
GetMap()->begin();
223 for(; itr != EvtMap->
GetMap()->end(); itr++) {
224 G4cout <<
" copy no.: " << itr->first
233 if ( divideByArea ) {
248 new G4UnitDefinition(
"percentimeter2",
"percm2",
"Per Unit Surface",(1./cm2));
249 new G4UnitDefinition(
"permillimeter2",
"permm2",
"Per Unit Surface",(1./mm2));
const G4double kCarTolerance
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
G4GLOB_DLL std::ostream G4cout
G4double GetSurfaceTolerance() const
static G4GeometryTolerance * GetInstance()
void AddHitsCollection(G4int HCID, G4VHitsCollection *aHC)
const G4AffineTransform & GetTopTransform() const
virtual void EndOfEvent(G4HCofThisEvent *)
virtual void Initialize(G4HCofThisEvent *)
virtual G4bool ProcessHits(G4Step *, G4TouchableHistory *)
G4PSCylinderSurfaceFlux(G4String name, G4int direction, G4int depth=0)
virtual ~G4PSCylinderSurfaceFlux()
virtual void SetUnit(const G4String &unit)
virtual void DefineUnitAndCategory()
G4int IsSelectedSurface(G4Step *, G4Tubs *)
G4StepStatus GetStepStatus() const
const G4ThreeVector & GetPosition() const
const G4ThreeVector & GetMomentumDirection() const
const G4TouchableHandle & GetTouchableHandle() const
G4double GetKineticEnergy() const
G4double GetWeight() const
G4StepPoint * GetPreStepPoint() const
G4StepPoint * GetPostStepPoint() const
G4double GetZHalfLength() const
G4double GetInnerRadius() const
G4double GetDeltaPhiAngle() const
std::map< G4int, G4int > hitIDMap
virtual G4int GetIndex(G4Step *)
G4MultiFunctionalDetector * GetMultiFunctionalDetector() const
const G4String & GetUnit() const
G4MultiFunctionalDetector * detector
G4int GetCollectionID(G4int)
void CheckAndSetUnit(const G4String &unit, const G4String &category)
G4double GetUnitValue() const
G4VSolid * ComputeCurrentSolid(G4Step *aStep)
static G4VScoreHistFiller * Instance()
size_t add(const G4int &key, U *&aHit) const
virtual const G4NavigationHistory * GetHistory() const