Geant4  10.02.p03
Run Class Reference

#include <Run.hh>

Inheritance diagram for Run:
Collaboration diagram for Run:

Classes

struct  NuclChannel
 
struct  ParticleData
 

Public Member Functions

 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void SumEvents_1 (G4int, G4double, G4double)
 
void SumEvents_2 (G4double, G4double, G4double)
 
void DetailedLeakage (G4int, G4double)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountTraks0 (G4int nt)
 
void CountTraks1 (G4int nt)
 
void CountSteps0 (G4int ns)
 
void CountSteps1 (G4int ns)
 
void CountProcesses (G4String procName)
 
void AddEdep (G4double val)
 
void AddTrueRange (G4double l)
 
void AddProjRange (G4double x)
 
void AddTransvDev (G4double y)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *detector)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddEdep (G4double e)
 
void AddTrackLength (G4double t)
 
void AddProjRange (G4double x)
 
void AddStepSize (G4int nb, G4double st)
 
void AddTrackStatus (G4int i)
 
void SetCsdaRange (G4int i, G4double value)
 
void SetXfrontNorm (G4int i, G4double value)
 
G4double GetCsdaRange (G4int i)
 
G4double GetXfrontNorm (G4int i)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *detector)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddEdep (G4double e)
 
void AddTrackLength (G4double t)
 
void AddProjRange (G4double x)
 
void AddStepSize (G4int nb, G4double st)
 
void SetCsdaRange (G4double value)
 
G4double GetCsdaRange ()
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountProcesses (G4String procName)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountProcesses (G4String procName)
 
void SumTrack (G4double track)
 
void SumeTransf (G4double energy)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run ()
 
 ~Run ()
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *, PrimaryGeneratorAction *)
 
virtual ~Run ()
 
virtual void Merge (const G4Run *)
 
void InitializePerEvent ()
 
void FillPerEvent ()
 
void FillPerTrack (G4double, G4double)
 
void FillPerStep (G4double, G4int, G4int)
 
void AddStep (G4double q)
 
void EndOfRun (G4double edep, G4double rms, G4double &limit)
 
void SetVerbose (G4int val)
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void FillPerEvent (G4int, G4double, G4double)
 
void SumEnergyFlow (G4int plane, G4double Eflow)
 
void SumLateralEleak (G4int cell, G4double Eflow)
 
void AddChargedStep ()
 
void AddNeutralStep ()
 
void AddSecondaryTrack (const G4Track *)
 
void SetEdepAndRMS (G4int, G4double, G4double, G4double)
 
void SetApplyLimit (G4bool)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddEnergy (G4double edep)
 
void AddTrakLenCharg (G4double length)
 
void AddTrakLenNeutr (G4double length)
 
void AddMscProjTheta (G4double theta)
 
void CountStepsCharg (G4int nSteps)
 
void CountStepsNeutr (G4int nSteps)
 
void CountParticles (G4ParticleDefinition *part)
 
void CountTransmit (G4int flag)
 
void CountReflect (G4int flag)
 
void AddEnergyLeak (G4double eleak, G4int index)
 
G4double ComputeMscHighland ()
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run ()
 
virtual ~Run ()
 
virtual void Merge (const G4Run *)
 
void BeginOfRun ()
 
void EndOfRun ()
 
void BeginOfEvent ()
 
void EndOfEvent ()
 
void AddEnergy (G4double edep, const G4Step *)
 
void SetVerbose (G4int value)
 
G4int GetVerbose () const
 
G4double GetTotStepGas () const
 
G4double GetTotCluster () const
 
G4double GetMeanCluster () const
 
const G4StatDoubleGetStat () const
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void SetTargetXXX (G4bool)
 
void CountProcesses (G4VProcess *process)
 
void SumTrack (G4double)
 
void CountNuclearChannel (G4String, G4double)
 
void ParticleCount (G4String, G4double)
 
void Balance (G4double)
 
void CountGamma (G4int)
 
virtual void Merge (const G4Run *)
 
void EndOfRun (G4bool)
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void CountProcesses (const G4VProcess *process)
 
void ParticleCount (G4String, G4double)
 
void SumTrackLength (G4int, G4int, G4double, G4double, G4double, G4double)
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void EndOfRun ()
 
virtual void Merge (const G4Run *)
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountProcesses (const G4VProcess *process)
 
void ParticleCount (G4String, G4double)
 
void AddEdep (G4double edep)
 
void AddEflow (G4double eflow)
 
void ParticleFlux (G4String, G4double)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (const DetectorConstruction *detector)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddEdep (G4double e)
 
void AddTrackLength (G4double t)
 
void AddProjRange (G4double x)
 
void AddPenetration (G4double x)
 
void AddStepSize (G4int nb, G4double st)
 
G4double GetEdep () const
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (const DetectorConstruction *detector)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddEdep (G4double e)
 
void AddTrackLength (G4double t)
 
void AddProjRange (G4double x)
 
void AddStepSize (G4int nb, G4double st)
 
G4double GetEdep () const
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (const DetectorConstruction *detector)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void AddInelastic (G4int nb)
 
void AddEdep (G4double e)
 
void AddTrackLength (G4double t)
 
void AddProjRange (G4double x)
 
void AddStepSize (G4int nb, G4double st)
 
G4double GetEdep () const
 
G4double GetInelastic () const
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle)
 
void EndOfRun ()
 
void SumFluence (G4double, G4double)
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
virtual void Merge (const G4Run *)
 
 Run (DetectorConstruction *, PrimaryGeneratorAction *)
 
 ~Run ()
 
virtual void Merge (const G4Run *)
 
void SurveyConvergence (G4int)
 
void EndOfRun ()
 
void CountProcesses (G4String)
 
void sumEsecond (G4double e)
 
void FlowInCavity (G4int k, G4double e)
 
void AddEdepCavity (G4double de)
 
void AddTrakCavity (G4double dt)
 
void StepInWall (G4double s)
 
void StepInCavity (G4double s)
 
 Run (DetectorConstruction *det, PrimaryGeneratorAction *, bool isMaster)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountProcesses (G4String)
 
void SurveyConvergence (G4int)
 
void FlowInCavity (G4int k, G4double e)
 
void AddEdepCavity (G4double de)
 
void AddTrakCavity (G4double dt)
 
void StepInWall (G4double s)
 
void StepInCavity (G4double s)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
 Run ()
 
virtual ~Run ()
 
void Merge (const G4Run *)
 
G4int GetCounter () const
 
 Run ()
 
 ~Run ()
 
void ParticleCount (G4String, G4double)
 
void Balance (G4double, G4double)
 
void EventTiming (G4double)
 
void PrimaryTiming (G4double)
 
void EvisEvent (G4double)
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void EndOfRun ()
 
virtual void Merge (const G4Run *)
 
 Run (DetectorConstruction *)
 
 ~Run ()
 
void SetPrimary (G4ParticleDefinition *particle, G4double energy)
 
void CountProcesses (const G4VProcess *process, G4int iVol)
 
void ParticleCount (G4String, G4double, G4int)
 
void AddEdep (G4double edep1, G4double edep2)
 
virtual void Merge (const G4Run *)
 
void EndOfRun ()
 
void WriteActivity (G4int)
 
- Public Member Functions inherited from G4Run
 G4Run ()
 
virtual ~G4Run ()
 
virtual void RecordEvent (const G4Event *)
 
G4int GetRunID () const
 
G4int GetNumberOfEvent () const
 
G4int GetNumberOfEventToBeProcessed () const
 
const G4HCtableGetHCtable () const
 
const G4DCtableGetDCtable () const
 
const G4StringGetRandomNumberStatus () const
 
void SetRunID (G4int id)
 
void SetNumberOfEventToBeProcessed (G4int n_ev)
 
void SetHCtable (G4HCtable *HCtbl)
 
void SetDCtable (G4DCtable *DCtbl)
 
void SetRandomNumberStatus (G4String &st)
 
void StoreEvent (G4Event *evt)
 
const std::vector< const G4Event * > * GetEventVector () const
 

Public Attributes

G4int f_n_gam_sync
 
G4double f_e_gam_sync
 
G4double f_e_gam_sync2
 
G4double f_e_gam_sync_max
 
G4double f_lam_gam_sync
 

Private Member Functions

void Reset ()
 
void InitFluence ()
 
void ComputeFluenceError ()
 
void PrintFluence (G4int)
 

Private Attributes

DetectorConstructionfDetector
 
G4ParticleDefinitionfParticle
 
G4double fEkin
 
G4int nbOfModules
 
G4int nbOfLayers
 
G4int kLayerMax
 
std::vector< G4doubleEtotLayer
 
std::vector< G4doubleEtot2Layer
 
std::vector< G4doubleEvisLayer
 
std::vector< G4doubleEvis2Layer
 
G4double EtotCalor
 
G4double Etot2Calor
 
G4double EvisCalor
 
G4double Evis2Calor
 
G4double Eleak
 
G4double Eleak2
 
G4double EdLeak [3]
 
G4int fNbOfTraks0
 
G4int fNbOfTraks1
 
G4int fNbOfSteps0
 
G4int fNbOfSteps1
 
G4double fEdep
 
G4double fTrueRange
 
G4double fTrueRange2
 
G4double fProjRange
 
G4double fProjRange2
 
G4double fTransvDev
 
G4double fTransvDev2
 
std::map< G4String, G4intfProcCounter
 
G4double fEdeposit
 
G4double fEdeposit2
 
G4double fTrackLen
 
G4double fTrackLen2
 
G4int fNbOfSteps
 
G4int fNbOfSteps2
 
G4double fStepSize
 
G4double fStepSize2
 
G4int fStatus [3]
 
G4double fCsdaRange [MaxAbsor]
 
G4double fXfrontNorm [MaxAbsor]
 
G4int fTotalCount
 
G4double fSumTrack
 
G4double fSumTrack2
 
G4double fEnTransfer
 
DetectorConstructionfDet
 
PrimaryGeneratorActionfKin
 
G4int f_nLbin
 
MyVector f_dEdL
 
MyVector fSumELongit
 
MyVector fSumE2Longit
 
MyVector fSumELongitCumul
 
MyVector fSumE2LongitCumul
 
G4int f_nRbin
 
MyVector f_dEdR
 
MyVector fSumERadial
 
MyVector fSumE2Radial
 
MyVector fSumERadialCumul
 
MyVector fSumE2RadialCumul
 
G4double fChargTrLength
 
G4double fSumChargTrLength
 
G4double fSum2ChargTrLength
 
G4double fNeutrTrLength
 
G4double fSumNeutrTrLength
 
G4double fSum2NeutrTrLength
 
G4double fChargedStep
 
G4double fNeutralStep
 
G4int fVerbose
 
G4double fSumEAbs [MaxAbsor]
 
G4double fSum2EAbs [MaxAbsor]
 
G4double fSumLAbs [MaxAbsor]
 
G4double fSum2LAbs [MaxAbsor]
 
std::vector< G4doublefEnergyFlow
 
std::vector< G4doublefLateralEleak
 
std::vector< G4doublefEnergyDeposit [MaxAbsor]
 
G4int fN_gamma
 
G4int fN_elec
 
G4int fN_pos
 
G4double fEdeptrue [MaxAbsor]
 
G4double fRmstrue [MaxAbsor]
 
G4double fLimittrue [MaxAbsor]
 
G4bool fApplyLimit
 
G4double fEnergyDeposit
 
G4double fEnergyDeposit2
 
G4double fTrakLenCharged
 
G4double fTrakLenCharged2
 
G4double fTrakLenNeutral
 
G4double fTrakLenNeutral2
 
G4double fNbStepsCharged
 
G4double fNbStepsCharged2
 
G4double fNbStepsNeutral
 
G4double fNbStepsNeutral2
 
G4double fMscProjecTheta
 
G4double fMscProjecTheta2
 
G4double fMscThetaCentral
 
G4int fNbGamma
 
G4int fNbElect
 
G4int fNbPosit
 
G4int fTransmit [2]
 
G4int fReflect [2]
 
G4int fMscEntryCentral
 
G4double fEnergyLeak [2]
 
G4double fEnergyLeak2 [2]
 
G4int fNbins
 
G4double fStepGas
 
G4double fMaxEnergy
 
G4double fCluster
 
G4double fTotStepGas
 
G4double fTotCluster
 
G4double fMeanCluster
 
G4double fFactorALICE
 
G4double fWidthALICE
 
G4double fEvt
 
G4double fTotEdep
 
G4StatDouble fEdep
 
G4double fOverflow
 
G4DataVector fEgas
 
G4ElectronIonPairfElIonPair
 
TestParametersfParam
 
G4int fGammaCount
 
std::map< G4String, NuclChannelfNuclChannelMap
 
std::map< G4String, ParticleDatafParticleDataMap
 
G4bool fTargetXXX
 
G4double fPbalance [3]
 
G4int fNbStep1
 
G4int fNbStep2
 
G4double fTrackLen1
 
G4double fTime1
 
G4double fTime2
 
G4double fEnergyFlow
 
G4double fEnergyFlow2
 
std::map< G4String, ParticleDatafParticleDataMap1
 
std::map< G4String, ParticleDatafParticleDataMap2
 
const DetectorConstructionfDetector
 
G4double fPenetration
 
G4double fPenetration2
 
G4double fNbInelastic
 
G4double fNbInelastic2
 
G4double fEnergy
 
G4int fNbBins
 
G4double fDr
 
std::vector< G4doublefluence
 
std::vector< G4doublefluence1
 
std::vector< G4doublefluence2
 
std::vector< G4intfNbEntries
 
PrimaryGeneratorActionfKinematic
 
ProcessesCountfProcCounter
 
G4double fEsecondary
 
G4double fEsecondary2
 
G4long fNbSec
 
G4long fPartFlowCavity [2]
 
G4double fEnerFlowCavity [2]
 
G4double fEdepCavity
 
G4double fEdepCavity2
 
G4double fTrkSegmCavity
 
G4long fNbEventCavity
 
G4double fOldEmean
 
G4double fOldDose
 
G4double fStepWall
 
G4double fStepWall2
 
G4double fStepCavity
 
G4double fStepCavity2
 
G4long fNbStepWall
 
G4long fNbStepCavity
 
G4double fWallThickness
 
G4double fWallRadius
 
G4MaterialfMateWall
 
G4double fDensityWall
 
G4double fCavityThickness
 
G4double fCavityRadius
 
G4double fSurfaceCavity
 
G4double fVolumeCavity
 
G4MaterialfMateCavity
 
G4double fDensityCavity
 
G4double fMassCavity
 
G4double fEnergyGun
 
G4double fMassWall
 
G4bool fIsMaster
 
G4int aDummyCounter
 
G4int fDecayCount
 
G4int fTimeCount
 
G4double fEkinTot [3]
 
G4double fEventTime [3]
 
G4double fPrimaryTime
 
G4double fEvisEvent [3]
 
G4double fEdepTarget
 
G4double fEdepTarget2
 
G4double fEdepDetect
 
G4double fEdepDetect2
 
std::map< G4String, G4intfProcCounter1
 
std::map< G4String, G4intfProcCounter2
 

Friends

class RunMerger
 

Additional Inherited Members

- Protected Attributes inherited from G4Run
G4int runID
 
G4int numberOfEvent
 
G4int numberOfEventToBeProcessed
 
G4HCtableHCtable
 
G4DCtableDCtable
 
G4String randomNumberStatus
 
std::vector< const G4Event * > * eventVector
 

Detailed Description

Definition at line 46 of file advanced/amsEcal/include/Run.hh.

Constructor & Destructor Documentation

◆ Run() [1/23]

Run::Run ( DetectorConstruction det)

Definition at line 46 of file advanced/amsEcal/src/Run.cc.

47 : G4Run(),
48  fDetector(det),
49  fParticle(0), fEkin(0.),
50  nbOfModules(0), nbOfLayers(0), kLayerMax(0),
51  EtotCalor(0.), Etot2Calor(0.), EvisCalor(0.), Evis2Calor(0.),
52  Eleak(0.), Eleak2(0.)
53 {
57 
58  //initialize vectors
59  //
60  EtotLayer.resize(kLayerMax); Etot2Layer.resize(kLayerMax);
61  EvisLayer.resize(kLayerMax); Evis2Layer.resize(kLayerMax);
62  for (G4int k=0; k<kLayerMax; k++) {
63  EtotLayer[k] = Etot2Layer[k] = EvisLayer[k] = Evis2Layer[k] = 0.0;
64  }
65 
67  EdLeak[0] = EdLeak[1] = EdLeak[2] = 0.;
68 }
std::vector< G4double > Evis2Layer
int G4int
Definition: G4Types.hh:78
G4Run()
Definition: G4Run.cc:34
G4double EdLeak[3]
std::vector< G4double > Etot2Layer
std::vector< G4double > EvisLayer
DetectorConstruction * fDetector
G4ParticleDefinition * fParticle
std::vector< G4double > EtotLayer
Here is the call graph for this function:

◆ ~Run() [1/23]

Run::~Run ( )

Definition at line 72 of file advanced/amsEcal/src/Run.cc.

73 { }
Here is the caller graph for this function:

◆ Run() [2/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [2/23]

Run::~Run ( )

◆ Run() [3/23]

Run::Run ( DetectorConstruction detector)

◆ ~Run() [3/23]

Run::~Run ( )

◆ Run() [4/23]

Run::Run ( DetectorConstruction detector)

◆ ~Run() [4/23]

Run::~Run ( )

◆ Run() [5/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [5/23]

Run::~Run ( )

◆ Run() [6/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [6/23]

Run::~Run ( )

◆ Run() [7/23]

Run::Run ( )

Definition at line 43 of file extended/electromagnetic/TestEm16/src/Run.cc.

Here is the call graph for this function:

◆ ~Run() [7/23]

Run::~Run ( )

◆ Run() [8/23]

Run::Run ( DetectorConstruction det,
PrimaryGeneratorAction kin 
)

Definition at line 47 of file extended/electromagnetic/TestEm2/src/Run.cc.

Here is the call graph for this function:

◆ ~Run() [8/23]

virtual Run::~Run ( )
virtual

◆ Run() [9/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [9/23]

Run::~Run ( )

◆ Run() [10/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [10/23]

Run::~Run ( )

◆ Run() [11/23]

Run::Run ( )

◆ ~Run() [11/23]

virtual Run::~Run ( )
virtual

◆ Run() [12/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [12/23]

Run::~Run ( )

◆ Run() [13/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [13/23]

Run::~Run ( )

◆ Run() [14/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [14/23]

Run::~Run ( )

◆ Run() [15/23]

Run::Run ( const DetectorConstruction detector)

Definition at line 46 of file extended/medical/dna/range/src/Run.cc.

47 : G4Run(),
48  fDetector(detector),
49  fParticle(0), fEkin(0.),
50  fEdeposit(0.), fEdeposit2(0.),
51  fTrackLen(0.), fTrackLen2(0.),
52  fProjRange(0.), fProjRange2(0.),
53  fPenetration(0.), fPenetration2(0.),
54  fNbOfSteps(0), fNbOfSteps2(0),
55  fStepSize(0.), fStepSize2(0.)
56 { }
G4Run()
Definition: G4Run.cc:34
DetectorConstruction * fDetector
G4ParticleDefinition * fParticle
Here is the call graph for this function:

◆ ~Run() [15/23]

Run::~Run ( )

◆ Run() [16/23]

Run::Run ( const DetectorConstruction detector)

◆ ~Run() [16/23]

Run::~Run ( )

◆ Run() [17/23]

Run::Run ( const DetectorConstruction detector)

◆ ~Run() [17/23]

Run::~Run ( )

◆ Run() [18/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [18/23]

Run::~Run ( )

◆ Run() [19/23]

Run::Run ( DetectorConstruction ,
PrimaryGeneratorAction  
)

◆ ~Run() [19/23]

Run::~Run ( )

◆ Run() [20/23]

Run::Run ( DetectorConstruction det,
PrimaryGeneratorAction kin,
bool  isMaster 
)

Definition at line 51 of file extended/medical/fanoCavity2/src/Run.cc.

52 :G4Run(),fDetector(det), fKinematic(kin), fProcCounter(0),
53  fEdepCavity(0.), fEdepCavity2(0.),
55  fStepWall(0.), fStepWall2(0.),
56  fStepCavity(0.), fStepCavity2(0.),
58  fEnergyGun(0.), fMassWall(0.),
59  fMassCavity(0.),fIsMaster(isMaster)
60 {
61 
62  //run conditions
63  //
64  G4ParticleDefinition* particleGun
66  G4String partName = particleGun->GetParticleName();
68 
69  //geometry : effective wall volume
70  //
71  G4double cavityThickness = fDetector->GetCavityThickness();
72  G4Material* mateCavity = fDetector->GetCavityMaterial();
73  G4double densityCavity = mateCavity->GetDensity();
74  fMassCavity = cavityThickness*densityCavity;
75 
76  G4double wallThickness = fDetector->GetWallThickness();
77  G4Material* mateWall = fDetector->GetWallMaterial();
78  G4double densityWall = mateWall->GetDensity();
79 
80  G4EmCalculator emCal;
81  G4double RangeWall = emCal.GetCSDARange(fEnergyGun,particleGun,mateWall);
82  G4double factor = 1.2;
83  G4double effWallThick = factor*RangeWall;
84  if ((effWallThick > wallThickness)||(effWallThick <= 0.))
85  effWallThick = wallThickness;
86  fMassWall = 2*effWallThick*densityWall;
87 
88  G4double massTotal = fMassWall + fMassCavity;
89  G4double fMassWallRatio = fMassWall/massTotal;
90  fKinematic->RunInitialisation(effWallThick, fMassWallRatio );
91 
92  G4double massRatio = fMassCavity/fMassWall;
93 
94  //check radius
95  //
96  G4double worldRadius =fDetector->GetWorldRadius();
97  G4double RangeCavity =emCal.GetCSDARange(fEnergyGun,particleGun,mateCavity);
98 
99  //G4String partName = particleGun->GetParticleName();
100 
101 
102  std::ios::fmtflags mode = G4cout.flags();
103  G4cout.setf(std::ios::fixed,std::ios::floatfield);
104  G4int prec = G4cout.precision(3);
105 
106  G4cout << "\n ===================== run conditions =====================\n";
107 
108  G4cout << "\n The run will be " << numberOfEvent << " "<< partName << " of "
109  << G4BestUnit(fEnergyGun,"Energy") << " through 2*"
110  << G4BestUnit(effWallThick,"Length") << " of "
111  << mateWall->GetName() << " (density: "
112  << G4BestUnit(densityWall,"Volumic Mass") << "); Mass/cm2 = "
113  << G4BestUnit(fMassWall*cm2,"Mass")
114  << "\n csdaRange: " << G4BestUnit(RangeWall,"Length") << G4endl;
115 
116  G4cout << "\n the cavity is "
117  << G4BestUnit(cavityThickness,"Length") << " of "
118  << mateCavity->GetName() << " (density: "
119  << G4BestUnit(densityCavity,"Volumic Mass") << "); Mass/cm2 = "
120  << G4BestUnit(fMassCavity*cm2,"Mass")
121  << " --> massRatio = "<< std::setprecision(6) << massRatio << G4endl;
122 
123  G4cout.precision(3);
124  G4cout << " World radius: " << G4BestUnit(worldRadius,"Length")
125  << "; range in cavity: " << G4BestUnit(RangeCavity,"Length")
126  << G4endl;
127 
128  G4cout << "\n ==========================================================\n";
129 
130  //stopping power from EmCalculator
131  //
132  G4double dedxWall =
133  emCal.GetDEDX(fEnergyGun,G4Electron::Electron(),mateWall);
134  dedxWall /= densityWall;
135  G4double dedxCavity =
136  emCal.GetDEDX(fEnergyGun,G4Electron::Electron(),mateCavity);
137  dedxCavity /= densityCavity;
138 
139  G4cout << std::setprecision(4)
140  << "\n StoppingPower in wall = "
141  << G4BestUnit(dedxWall,"Energy*Surface/Mass")
142  << "\n in cavity = "
143  << G4BestUnit(dedxCavity,"Energy*Surface/Mass")
144  << G4endl;
145 
146  //process counter
147  //
149 
150  //charged particles and energy flow in cavity
151  //
152  fPartFlowCavity[0] = fPartFlowCavity[1] = 0;
153  fEnerFlowCavity[0] = fEnerFlowCavity[1] = 0.;
154 
155  //total energy deposit and charged track segment in cavity
156  //
158  fNbEventCavity = 0;
159 
160  //stepLenth of charged particles
161  //
164 
165 
166  // reset default formats
167  G4cout.setf(mode,std::ios::floatfield);
168  G4cout.precision(prec);
169 
170  //histograms
171  //
172  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
173  if ( analysisManager->IsActive() ) {
174  analysisManager->OpenFile();
175  }
176 
177 }
std::vector< OneProcessCount * > ProcessesCount
G4int numberOfEvent
Definition: G4Run.hh:59
static const double cm2
Definition: G4SIunits.hh:119
G4double GetDensity() const
Definition: G4Material.hh:180
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
G4double GetDEDX(G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
G4Run()
Definition: G4Run.cc:34
G4double GetCSDARange(G4double kinEnergy, const G4ParticleDefinition *, const G4Material *, const G4Region *r=0)
static const double prec
Definition: RanecuEngine.cc:58
const G4String & GetParticleName() const
G4GLOB_DLL std::ostream G4cout
G4double GetParticleEnergy() const
PrimaryGeneratorAction * fKinematic
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
std::map< G4String, G4int > fProcCounter
static const G4double factor
DetectorConstruction * fDetector
static G4Electron * Electron()
Definition: G4Electron.cc:94
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
const G4String & GetName() const
Definition: G4Material.hh:178
G4ParticleDefinition * GetParticleDefinition() const
Here is the call graph for this function:

◆ ~Run() [20/23]

Run::~Run ( )

◆ Run() [21/23]

Run::Run ( )

◆ ~Run() [21/23]

virtual Run::~Run ( )
inlinevirtual

Definition at line 38 of file extended/parallel/MPI/examples/exMPI03/include/Run.hh.

38 {}
Here is the call graph for this function:

◆ Run() [22/23]

Run::Run ( )

◆ ~Run() [22/23]

Run::~Run ( )

◆ Run() [23/23]

Run::Run ( DetectorConstruction )

◆ ~Run() [23/23]

Run::~Run ( )

Member Function Documentation

◆ AddChargedStep()

void Run::AddChargedStep ( )

Definition at line 119 of file extended/electromagnetic/TestEm3/src/Run.cc.

120 {
121  fChargedStep += 1.0;
122 }

◆ AddEdep() [1/8]

void Run::AddEdep ( G4double  e)

◆ AddEdep() [2/8]

void Run::AddEdep ( G4double  e)

◆ AddEdep() [3/8]

void Run::AddEdep ( G4double  e)

◆ AddEdep() [4/8]

void Run::AddEdep ( G4double  e)

◆ AddEdep() [5/8]

void Run::AddEdep ( G4double  e)

◆ AddEdep() [6/8]

void Run::AddEdep ( G4double  edep1,
G4double  edep2 
)

Definition at line 138 of file extended/radioactivedecay/rdecay02/src/Run.cc.

139 {
140  fEdepTarget += edep1;
141  fEdepTarget2 += edep1*edep1;
142  fEdepDetect += edep2;
143  fEdepDetect2 += edep2*edep2;
144 }
Here is the call graph for this function:

◆ AddEdep() [7/8]

void Run::AddEdep ( G4double  edep)

◆ AddEdep() [8/8]

void Run::AddEdep ( G4double  val)
inline

Definition at line 61 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the caller graph for this function:

◆ AddEdepCavity() [1/2]

void Run::AddEdepCavity ( G4double  de)
inline

◆ AddEdepCavity() [2/2]

void Run::AddEdepCavity ( G4double  de)
inline

◆ AddEflow()

void Run::AddEflow ( G4double  eflow)

Definition at line 109 of file extended/hadronic/Hadr06/src/Run.cc.

110 {
111  fEnergyFlow += eflow;
112  fEnergyFlow2 += eflow*eflow;
113 }
std::vector< G4double > fEnergyFlow
Here is the caller graph for this function:

◆ AddEnergy() [1/2]

void Run::AddEnergy ( G4double  edep)
inline

Definition at line 60 of file extended/electromagnetic/TestEm5/include/Run.hh.

Double_t edep
std::vector< G4double > fEnergyDeposit[MaxAbsor]
Here is the caller graph for this function:

◆ AddEnergy() [2/2]

void Run::AddEnergy ( G4double  edep,
const G4Step *  step 
)

Definition at line 225 of file extended/electromagnetic/TestEm8/src/Run.cc.

226 {
227  if(1 < fVerbose) {
228  G4cout << "Run::AddEnergy: e(keV)= " << edep/keV
229  << G4endl;
230  }
231  fTotEdep += edep;
232  if(step) {
233  if(1 == step->GetTrack()->GetTrackID()) { fStepGas += 1.0; }
234 
237  }
238 }
G4double MeanNumberOfIonsAlongStep(const G4ParticleDefinition *, const G4Material *, G4double edepTotal, G4double edepNIEL=0.0)
Double_t edep
G4GLOB_DLL std::ostream G4cout
G4int SampleNumberOfIonsAlongStep(const G4Step *)
#define G4endl
Definition: G4ios.hh:61
static const double keV
Definition: G4SIunits.hh:213
Here is the call graph for this function:

◆ AddEnergyLeak()

void Run::AddEnergyLeak ( G4double  eleak,
G4int  index 
)
inline

Definition at line 93 of file extended/electromagnetic/TestEm5/include/Run.hh.

94  {fEnergyLeak[index] += eleak; fEnergyLeak2[index] += eleak*eleak;};
Int_t index
Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddInelastic()

void Run::AddInelastic ( G4int  nb)

Definition at line 73 of file extended/medical/dna/wvalue/src/Run.cc.

74 {
75  fNbInelastic += nb;
76  fNbInelastic2 += nb*nb;
77 }
Here is the call graph for this function:

◆ AddMscProjTheta()

void Run::AddMscProjTheta ( G4double  theta)
inline

Definition at line 69 of file extended/electromagnetic/TestEm5/include/Run.hh.

Here is the caller graph for this function:

◆ AddNeutralStep()

void Run::AddNeutralStep ( )

Definition at line 126 of file extended/electromagnetic/TestEm3/src/Run.cc.

127 {
128  fNeutralStep += 1.0;
129 }

◆ AddPenetration()

void Run::AddPenetration ( G4double  x)

Definition at line 97 of file extended/medical/dna/range/src/Run.cc.

98 {
99  fPenetration += x;
100  fPenetration2 += x*x;
101 }
Here is the call graph for this function:

◆ AddProjRange() [1/6]

void Run::AddProjRange ( G4double  x)

◆ AddProjRange() [2/6]

void Run::AddProjRange ( G4double  x)

◆ AddProjRange() [3/6]

void Run::AddProjRange ( G4double  x)

◆ AddProjRange() [4/6]

void Run::AddProjRange ( G4double  x)

◆ AddProjRange() [5/6]

void Run::AddProjRange ( G4double  x)

◆ AddProjRange() [6/6]

void Run::AddProjRange ( G4double  x)
inline

Definition at line 63 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the caller graph for this function:

◆ AddSecondaryTrack()

void Run::AddSecondaryTrack ( const G4Track *  track)

Definition at line 133 of file extended/electromagnetic/TestEm3/src/Run.cc.

134 {
135  const G4ParticleDefinition* d = track->GetDefinition();
136  if(d == G4Gamma::Gamma()) { ++fN_gamma; }
137  else if (d == G4Electron::Electron()) { ++fN_elec; }
138  else if (d == G4Positron::Positron()) { ++fN_pos; }
139 }
Float_t d
static G4Gamma * Gamma()
Definition: G4Gamma.cc:86
static G4Positron * Positron()
Definition: G4Positron.cc:94
static G4Electron * Electron()
Definition: G4Electron.cc:94
Here is the call graph for this function:

◆ AddStep()

void Run::AddStep ( G4double  q)
inline

Definition at line 125 of file extended/electromagnetic/TestEm2/include/Run.hh.

126 {
127  if (q == 0.0) { fNeutralStep += 1.0; }
128  else { fChargedStep += 1.0; }
129 }
Here is the caller graph for this function:

◆ AddStepSize() [1/5]

void Run::AddStepSize ( G4int  nb,
G4double  st 
)

◆ AddStepSize() [2/5]

void Run::AddStepSize ( G4int  nb,
G4double  st 
)

◆ AddStepSize() [3/5]

void Run::AddStepSize ( G4int  nb,
G4double  st 
)

Definition at line 104 of file extended/electromagnetic/TestEm11/src/Run.cc.

Here is the caller graph for this function:

◆ AddStepSize() [4/5]

void Run::AddStepSize ( G4int  nb,
G4double  st 
)

◆ AddStepSize() [5/5]

void Run::AddStepSize ( G4int  nb,
G4double  st 
)

◆ AddTrackLength() [1/5]

void Run::AddTrackLength ( G4double  t)

◆ AddTrackLength() [2/5]

void Run::AddTrackLength ( G4double  t)

◆ AddTrackLength() [3/5]

void Run::AddTrackLength ( G4double  t)

Definition at line 88 of file extended/electromagnetic/TestEm11/src/Run.cc.

89 {
90  fTrackLen += t;
91  fTrackLen2 += t*t;
92 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddTrackLength() [4/5]

void Run::AddTrackLength ( G4double  t)

◆ AddTrackLength() [5/5]

void Run::AddTrackLength ( G4double  t)

◆ AddTrackStatus()

void Run::AddTrackStatus ( G4int  i)

Definition at line 114 of file extended/electromagnetic/TestEm11/src/Run.cc.

115 {
116  fStatus[i]++ ;
117 }

◆ AddTrakCavity() [1/2]

void Run::AddTrakCavity ( G4double  dt)
inline

Definition at line 71 of file extended/medical/fanoCavity2/include/Run.hh.

71 { fTrkSegmCavity += dt;};

◆ AddTrakCavity() [2/2]

void Run::AddTrakCavity ( G4double  dt)
inline

Definition at line 74 of file extended/medical/fanoCavity/include/Run.hh.

74 { fTrkSegmCavity += dt;};
Here is the caller graph for this function:

◆ AddTrakLenCharg()

void Run::AddTrakLenCharg ( G4double  length)
inline

◆ AddTrakLenNeutr()

void Run::AddTrakLenNeutr ( G4double  length)
inline

◆ AddTransvDev()

void Run::AddTransvDev ( G4double  y)
inline

Definition at line 64 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ AddTrueRange()

void Run::AddTrueRange ( G4double  l)
inline

Definition at line 62 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the caller graph for this function:

◆ Balance() [1/2]

void Run::Balance ( G4double  Ekin,
G4double  Pbal 
)

Definition at line 88 of file extended/radioactivedecay/rdecay01/src/Run.cc.

89 {
90  fDecayCount++;
91  fEkinTot[0] += Ekin;
92  //update min max
93  if (fDecayCount == 1) fEkinTot[1] = fEkinTot[2] = Ekin;
94  if (Ekin < fEkinTot[1]) fEkinTot[1] = Ekin;
95  if (Ekin > fEkinTot[2]) fEkinTot[2] = Ekin;
96 
97  fPbalance[0] += Pbal;
98  //update min max
99  if (fDecayCount == 1) fPbalance[1] = fPbalance[2] = Pbal;
100  if (Pbal < fPbalance[1]) fPbalance[1] = Pbal;
101  if (Pbal > fPbalance[2]) fPbalance[2] = Pbal;
102 }

◆ Balance() [2/2]

void Run::Balance ( G4double  Pbal)

Definition at line 133 of file extended/hadronic/Hadr03/src/Run.cc.

134 {
135  fPbalance[0] += Pbal;
136  //update min max
137  if (fTotalCount == 1) fPbalance[1] = fPbalance[2] = Pbal;
138  if (Pbal < fPbalance[1]) fPbalance[1] = Pbal;
139  if (Pbal > fPbalance[2]) fPbalance[2] = Pbal;
140 }

◆ BeginOfEvent()

void Run::BeginOfEvent ( )

◆ BeginOfRun()

void Run::BeginOfRun ( )

Definition at line 64 of file extended/electromagnetic/TestEm8/src/Run.cc.

65 {
66  // initilise scoring
68  = fStepGas = fCluster = 0.0;
69  fEvt = 0;
70 
73 
74  SetVerbose(1);
75 
78 
79  fEgas.resize(fNbins,0.0);
80  fEdep.reset();
81 
82  if(fVerbose > 0) {
83  G4int binsCluster = fParam->GetNumberBinsCluster();
84  G4cout << " BinsCluster= " << binsCluster << " BinsE= " << fNbins
85  << " Emax(keV)= " << fMaxEnergy/keV << G4endl;
86  G4cout << " WidthALICE= " << fWidthALICE
87  << " FactorALICE= " << fFactorALICE << G4endl;
88 
89  }
90 }
int G4int
Definition: G4Types.hh:78
G4int GetNumberBinsCluster() const
G4GLOB_DLL std::ostream G4cout
G4double GetEnergySmear() const
G4int GetNumberBins() const
G4double GetMaxEnergy() const
G4double GetFactorALICE() const
#define G4endl
Definition: G4ios.hh:61
static const double keV
Definition: G4SIunits.hh:213
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ComputeFluenceError()

void Run::ComputeFluenceError ( )
private

Definition at line 197 of file extended/medical/electronScattering/src/Run.cc.

198 {
199  //compute rms
200 
201  G4double ds,variance,rms;
202  G4double rmean = -0.5*fDr;
203 
204  for (G4int bin=0; bin<fNbBins; bin++) {
205  rmean += fDr;
206  ds = twopi*rmean*fDr;
207  fluence[bin] /= ds;
208  fluence2[bin] /= (ds*ds);
209  variance = 0.;
210  if (fNbEntries[bin] > 0)
211  variance = fluence2[bin] - (fluence[bin]*fluence[bin])/fNbEntries[bin];
212  rms = 0.;
213  if(variance > 0.) rms = std::sqrt(variance);
214  fluence2[bin] = rms;
215  }
216 
217  //normalize to first bins, compute error and fill histo
218 
219  G4double rnorm(4*mm), radius(0.), fnorm(0.), fnorm2(0.);
220  G4int inorm = -1;
221  do {
222  inorm++; radius += fDr; fnorm += fluence[inorm]; fnorm2 += fluence2[inorm];
223  } while (radius < rnorm);
224  fnorm /= (inorm+1);
225  fnorm2 /= (inorm+1);
226 
227  G4double ratio, error;
228  G4double scale = 1./fnorm;
229  G4double err0 = fnorm2/fnorm, err1 = 0.;
230 
231  rmean = -0.5*fDr;
232 
233  for (G4int bin=0; bin<fNbBins; bin++) {
234  ratio = fluence[bin]*scale;
235  error = 0.;
236  if (ratio > 0.) {
237  err1 = fluence2[bin]/fluence[bin];
238  error = ratio*std::sqrt(err1*err1 + err0*err0);
239  }
240  fluence1[bin] = ratio;
241  fluence2[bin] = error;
242  rmean += fDr;
243  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
244  analysisManager->FillH1(4,rmean,ratio);
245  }
246 }
std::vector< G4double > fluence1
float bin[41]
Definition: plottest35.C:14
int G4int
Definition: G4Types.hh:78
Double_t scale
static const double twopi
Definition: G4SIunits.hh:75
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
static PROLOG_HANDLER error
Definition: xmlrole.cc:112
double G4double
Definition: G4Types.hh:76
std::vector< G4double > fluence2
static const double mm
Definition: G4SIunits.hh:114

◆ ComputeMscHighland()

G4double Run::ComputeMscHighland ( )

Definition at line 333 of file extended/electromagnetic/TestEm5/src/Run.cc.

334 {
335  //compute the width of the Gaussian central part of the MultipleScattering
336  //projected angular distribution.
337  //Eur. Phys. Jour. C15 (2000) page 166, formule 23.9
338 
341  if (t < DBL_MIN) return 0.;
342 
343  G4double T = fEkin;
345  G4double z = std::abs(fParticle->GetPDGCharge()/eplus);
346 
347  G4double bpc = T*(T+2*M)/(T+M);
348  G4double teta0 = 13.6*MeV*z*std::sqrt(t)*(1.+0.038*std::log(t))/bpc;
349  return teta0;
350 }
static const double MeV
Definition: G4SIunits.hh:211
#define DBL_MIN
Definition: templates.hh:75
DetectorConstruction * fDetector
G4ParticleDefinition * fParticle
double G4double
Definition: G4Types.hh:76
static const double eplus
Definition: G4SIunits.hh:196
G4double GetRadlen() const
Definition: G4Material.hh:220
G4double GetPDGCharge() const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CountGamma()

void Run::CountGamma ( G4int  nGamma)

Definition at line 144 of file extended/hadronic/Hadr03/src/Run.cc.

145 {
146  fGammaCount++;
147  fNbGamma[0] += nGamma;
148  //update min max
149  if (fGammaCount == 1) fNbGamma[1] = fNbGamma[2] = nGamma;
150  if (nGamma < fNbGamma[1]) fNbGamma[1] = nGamma;
151  if (nGamma > fNbGamma[2]) fNbGamma[2] = nGamma;
152 }
Here is the call graph for this function:

◆ CountNuclearChannel()

void Run::CountNuclearChannel ( G4String  name,
G4double  Q 
)

Definition at line 99 of file extended/hadronic/Hadr03/src/Run.cc.

100 {
101  std::map<G4String, NuclChannel>::iterator it = fNuclChannelMap.find(name);
102  if ( it == fNuclChannelMap.end()) {
103  fNuclChannelMap[name] = NuclChannel(1, Q);
104  }
105  else {
106  NuclChannel& data = it->second;
107  data.fCount++;
108  data.fQ += Q;
109  }
110 }
std::map< G4String, NuclChannel > fNuclChannelMap
G4String name
Definition: TRTMaterials.hh:40
static double Q[]

◆ CountParticles()

void Run::CountParticles ( G4ParticleDefinition part)
inline

Definition at line 80 of file extended/electromagnetic/TestEm5/include/Run.hh.

81  { if (part == G4Gamma::Gamma()) fNbGamma++ ;
82  else if (part == G4Electron::Electron()) fNbElect++ ;
83  else if (part == G4Positron::Positron()) fNbPosit++ ; };
static G4Gamma * Gamma()
Definition: G4Gamma.cc:86
static G4Positron * Positron()
Definition: G4Positron.cc:94
static G4Electron * Electron()
Definition: G4Electron.cc:94
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CountProcesses() [1/9]

void Run::CountProcesses ( G4String  procName)

◆ CountProcesses() [2/9]

void Run::CountProcesses ( G4String  procName)

◆ CountProcesses() [3/9]

void Run::CountProcesses ( const G4VProcess process)

Definition at line 66 of file extended/hadronic/Hadr04/src/Run.cc.

67 {
68  G4String procName = process->GetProcessName();
69  std::map<G4String,G4int>::iterator it = fProcCounter.find(procName);
70  if ( it == fProcCounter.end()) {
71  fProcCounter[procName] = 1;
72  }
73  else {
74  fProcCounter[procName]++;
75  }
76 }
const G4String & GetProcessName() const
Definition: G4VProcess.hh:408
std::map< G4String, G4int > fProcCounter
Here is the call graph for this function:

◆ CountProcesses() [4/9]

void Run::CountProcesses ( const G4VProcess process,
G4int  iVol 
)

Definition at line 72 of file extended/radioactivedecay/rdecay02/src/Run.cc.

73 {
74  G4String procName = process->GetProcessName();
75 
76  if (iVol == 1) {
77  std::map<G4String,G4int>::iterator it1 = fProcCounter1.find(procName);
78  if ( it1 == fProcCounter1.end()) {
79  fProcCounter1[procName] = 1;
80  }
81  else {
82  fProcCounter1[procName]++;
83  }
84  }
85 
86  if (iVol == 2) {
87  std::map<G4String,G4int>::iterator it2 = fProcCounter2.find(procName);
88  if ( it2 == fProcCounter2.end()) {
89  fProcCounter2[procName] = 1;
90  }
91  else {
92  fProcCounter2[procName]++;
93  }
94  }
95 }
const G4String & GetProcessName() const
Definition: G4VProcess.hh:408
std::map< G4String, G4int > fProcCounter2
std::map< G4String, G4int > fProcCounter1
Here is the call graph for this function:

◆ CountProcesses() [5/9]

void Run::CountProcesses ( const G4VProcess process)

◆ CountProcesses() [6/9]

void Run::CountProcesses ( G4VProcess process)

Definition at line 78 of file extended/hadronic/Hadr03/src/Run.cc.

79 {
80  G4String procName = process->GetProcessName();
81  std::map<G4String,G4int>::iterator it = fProcCounter.find(procName);
82  if ( it == fProcCounter.end()) {
83  fProcCounter[procName] = 1;
84  }
85  else {
86  fProcCounter[procName]++;
87  }
88 }
const G4String & GetProcessName() const
Definition: G4VProcess.hh:408
std::map< G4String, G4int > fProcCounter
Here is the call graph for this function:

◆ CountProcesses() [7/9]

void Run::CountProcesses ( G4String  procName)

Definition at line 72 of file extended/electromagnetic/TestEm1/src/Run.cc.

73 {
74  std::map<G4String,G4int>::iterator it = fProcCounter.find(procName);
75  if ( it == fProcCounter.end()) {
76  fProcCounter[procName] = 1;
77  }
78  else {
79  fProcCounter[procName]++;
80  }
81 }
std::map< G4String, G4int > fProcCounter
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CountProcesses() [8/9]

void Run::CountProcesses ( G4String  )

◆ CountProcesses() [9/9]

void Run::CountProcesses ( G4String  )

◆ CountReflect()

void Run::CountReflect ( G4int  flag)
inline

Definition at line 89 of file extended/electromagnetic/TestEm5/include/Run.hh.

90  { if (flag == 1) fReflect[0]++;
91  else if (flag == 2) {fReflect[0]++; fReflect[1]++; }};

◆ CountSteps0()

void Run::CountSteps0 ( G4int  ns)
inline

Definition at line 57 of file extended/electromagnetic/TestEm1/include/Run.hh.

57 { fNbOfSteps0 += ns;}
#define ns
Definition: xmlparse.cc:614
Here is the caller graph for this function:

◆ CountSteps1()

void Run::CountSteps1 ( G4int  ns)
inline

Definition at line 58 of file extended/electromagnetic/TestEm1/include/Run.hh.

58 { fNbOfSteps1 += ns;}
#define ns
Definition: xmlparse.cc:614
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CountStepsCharg()

void Run::CountStepsCharg ( G4int  nSteps)
inline

◆ CountStepsNeutr()

void Run::CountStepsNeutr ( G4int  nSteps)
inline

◆ CountTraks0()

void Run::CountTraks0 ( G4int  nt)
inline

Definition at line 55 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the caller graph for this function:

◆ CountTraks1()

void Run::CountTraks1 ( G4int  nt)
inline

Definition at line 56 of file extended/electromagnetic/TestEm1/include/Run.hh.

Here is the caller graph for this function:

◆ CountTransmit()

void Run::CountTransmit ( G4int  flag)
inline

Definition at line 85 of file extended/electromagnetic/TestEm5/include/Run.hh.

86  { if (flag == 1) fTransmit[0]++;
87  else if (flag == 2) {fTransmit[0]++; fTransmit[1]++; }};

◆ DetailedLeakage()

void Run::DetailedLeakage ( G4int  icase,
G4double  energy 
)

Definition at line 106 of file advanced/amsEcal/src/Run.cc.

107 {
108  //forward, backward, lateral leakage
109  //
110  EdLeak[icase] += energy;
111 }
double energy
Definition: plottest35.C:25
G4double EdLeak[3]
Here is the caller graph for this function:

◆ EndOfEvent()

void Run::EndOfEvent ( )

Definition at line 175 of file extended/electromagnetic/TestEm8/src/Run.cc.

176 {
179 
180  if(fWidthALICE > 0.0) {
182  if(x <= 0.0) { x = 1.0; }
183  fTotEdep *= x;
184  }
185 
187 
188  if(idx < 0) { fEgas[0] += 1.0; }
189  if(idx >= fNbins) { fOverflow += 1.0; }
190  else { fEgas[idx] += 1.0; }
191 
192  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
193  // fill histo
194  analysisManager->FillH1(1,fTotEdep/keV,1.0);
195  analysisManager->FillH1(2,fCluster,1.0);
196  analysisManager->FillH1(3,fTotEdep*fFactorALICE,1.0);
197  fEdep.fill(fTotEdep, 1.0);
198 }
ThreeVector shoot(const G4int Ap, const G4int Af)
int G4int
Definition: G4Types.hh:78
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
static const double keV
Definition: G4SIunits.hh:213
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:

◆ EndOfRun() [1/22]

void Run::EndOfRun ( )

◆ EndOfRun() [2/22]

void Run::EndOfRun ( )

◆ EndOfRun() [3/22]

void Run::EndOfRun ( )

◆ EndOfRun() [4/22]

void Run::EndOfRun ( )

◆ EndOfRun() [5/22]

void Run::EndOfRun ( )

◆ EndOfRun() [6/22]

void Run::EndOfRun ( )

◆ EndOfRun() [7/22]

void Run::EndOfRun ( )

◆ EndOfRun() [8/22]

void Run::EndOfRun ( )

G4double fac = unit/(numberOfEvent*binWidth);

Definition at line 147 of file advanced/amsEcal/src/Run.cc.

148 {
149  //calorimeter
150  //
152 
153  //run conditions
154  //
155  G4String partName = fParticle->GetParticleName();
156  G4int nbEvents = numberOfEvent;
157 
158  G4int prec = G4cout.precision(3);
159 
160  G4cout << " The run was " << nbEvents << " " << partName << " of "
161  << G4BestUnit(fEkin,"Energy") << " through the calorimeter" << G4endl;
162 
163  G4cout << "------------------------------------------------------------"
164  << G4endl;
165 
166  //if no events, return
167  //
168  if (nbEvents == 0) return;
169 
170  //compute and print statistic
171  //
172  std::ios::fmtflags mode = G4cout.flags();
173 
174  // energy in layers
175  //
176  G4cout.precision(prec);
177  G4cout << "\n "
178  << "total Energy (rms/mean) "
179  << "visible Energy (rms/mean)" << G4endl;
180 
181  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
182 
183  G4double meanEtot,meanEtot2,varianceEtot,rmsEtot,resEtot;
184  G4double meanEvis,meanEvis2,varianceEvis,rmsEvis,resEvis;
185 
186  for (G4int i1=1; i1<kLayerMax; i1++) {
187  //total energy
188  meanEtot = EtotLayer[i1] /nbEvents;
189  meanEtot2 = Etot2Layer[i1]/nbEvents;
190  varianceEtot = meanEtot2 - meanEtot*meanEtot;
191  resEtot = rmsEtot = 0.;
192  if (varianceEtot > 0.) rmsEtot = std::sqrt(varianceEtot);
193  if (meanEtot > 0.) resEtot = 100*rmsEtot/meanEtot;
194  analysisManager->FillH1(3, i1+0.5, meanEtot);
195 
196  //visible energy
197  meanEvis = EvisLayer[i1] /nbEvents;
198  meanEvis2 = Evis2Layer[i1]/nbEvents;
199  varianceEvis = meanEvis2 - meanEvis*meanEvis;
200  resEvis = rmsEvis = 0.;
201  if (varianceEvis > 0.) rmsEvis = std::sqrt(varianceEvis);
202  if (meanEvis > 0.) resEvis = 100*rmsEvis/meanEvis;
203  analysisManager->FillH1(4, i1+0.5, meanEvis);
204 
205  //print
206  //
207  G4cout
208  << "\n layer " << i1 << ": "
209  << std::setprecision(5)
210  << std::setw(6) << G4BestUnit(meanEtot,"Energy") << " +- "
211  << std::setprecision(4)
212  << std::setw(5) << G4BestUnit( rmsEtot,"Energy") << " ("
213  << std::setprecision(2)
214  << std::setw(3) << resEtot << " %)"
215  << " "
216  << std::setprecision(5)
217  << std::setw(6) << G4BestUnit(meanEvis,"Energy") << " +- "
218  << std::setprecision(4)
219  << std::setw(5) << G4BestUnit( rmsEvis,"Energy") << " ("
220  << std::setprecision(2)
221  << std::setw(3) << resEvis << " %)";
222  }
223  G4cout << G4endl;
224 
225  //calorimeter: total energy
226  meanEtot = EtotCalor /nbEvents;
227  meanEtot2 = Etot2Calor/nbEvents;
228  varianceEtot = meanEtot2 - meanEtot*meanEtot;
229  resEtot = rmsEtot = 0.;
230  if (varianceEtot > 0.) rmsEtot = std::sqrt(varianceEtot);
231  if (meanEtot > 0.) resEtot = 100*rmsEtot/meanEtot;
232 
233  //calorimeter: visible energy
234  meanEvis = EvisCalor /nbEvents;
235  meanEvis2 = Evis2Calor/nbEvents;
236  varianceEvis = meanEvis2 - meanEvis*meanEvis;
237  resEvis = rmsEvis = 0.;
238  if (varianceEvis > 0.) rmsEvis = std::sqrt(varianceEvis);
239  if (meanEvis > 0.) resEvis = 100*rmsEvis/meanEvis;
240 
241  //print
242  //
243  G4cout
244  << "\n total calor : "
245  << std::setprecision(5)
246  << std::setw(6) << G4BestUnit(meanEtot,"Energy") << " +- "
247  << std::setprecision(4)
248  << std::setw(5) << G4BestUnit( rmsEtot,"Energy") << " ("
249  << std::setprecision(2)
250  << std::setw(3) << resEtot << " %)"
251  << " "
252  << std::setprecision(5)
253  << std::setw(6) << G4BestUnit(meanEvis,"Energy") << " +- "
254  << std::setprecision(4)
255  << std::setw(5) << G4BestUnit( rmsEvis,"Energy") << " ("
256  << std::setprecision(2)
257  << std::setw(3) << resEvis << " %)";
258 
259  G4cout << "\n------------------------------------------------------------"
260  << G4endl;
261 
262  //leakage
263  G4double meanEleak,meanEleak2,varianceEleak,rmsEleak,ratio;
264  meanEleak = Eleak /nbEvents;
265  meanEleak2 = Eleak2/nbEvents;
266  varianceEleak = meanEleak2 - meanEleak*meanEleak;
267  rmsEleak = 0.;
268  if (varianceEleak > 0.) rmsEleak = std::sqrt(varianceEleak);
269  ratio = 100*meanEleak/fEkin;
270 
271  G4double forward = 100*EdLeak[0]/(nbEvents*fEkin);
272  G4double bakward = 100*EdLeak[1]/(nbEvents*fEkin);
273  G4double lateral = 100*EdLeak[2]/(nbEvents*fEkin);
274 
275  //print
276  //
277  G4cout
278  << "\n Leakage : "
279  << std::setprecision(5)
280  << std::setw(6) << G4BestUnit(meanEleak,"Energy") << " +- "
281  << std::setprecision(4)
282  << std::setw(5) << G4BestUnit( rmsEleak,"Energy")
283  << "\n Eleak/Ebeam ="
284  << std::setprecision(3)
285  << std::setw(4) << ratio << " % ( forward ="
286  << std::setw(4) << forward << " %; backward ="
287  << std::setw(4) << bakward << " %; lateral ="
288  << std::setw(4) << lateral << " %)"
289  << G4endl;
290 
291  G4cout.setf(mode,std::ios::floatfield);
292  G4cout.precision(prec);
293 
294  //normalize histograms
295  G4double factor = 1./nbEvents;
296  analysisManager->ScaleH1(5,factor);
297 }
G4int numberOfEvent
Definition: G4Run.hh:59
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
std::vector< G4double > Evis2Layer
int G4int
Definition: G4Types.hh:78
static const double prec
Definition: RanecuEngine.cc:58
const G4String & GetParticleName() const
G4GLOB_DLL std::ostream G4cout
G4double EdLeak[3]
std::vector< G4double > Etot2Layer
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
static const G4double factor
std::vector< G4double > EvisLayer
DetectorConstruction * fDetector
#define G4endl
Definition: G4ios.hh:61
G4ParticleDefinition * fParticle
double G4double
Definition: G4Types.hh:76
std::vector< G4double > EtotLayer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ EndOfRun() [9/22]

void Run::EndOfRun ( )

◆ EndOfRun() [10/22]

void Run::EndOfRun ( )

◆ EndOfRun() [11/22]

void Run::EndOfRun ( )

◆ EndOfRun() [12/22]

void Run::EndOfRun ( )

◆ EndOfRun() [13/22]

void Run::EndOfRun ( )

◆ EndOfRun() [14/22]

void Run::EndOfRun ( )

◆ EndOfRun() [15/22]

void Run::EndOfRun ( G4bool  print)

Definition at line 236 of file extended/hadronic/Hadr03/src/Run.cc.

237 {
238  G4int prec = 5, wid = prec + 2;
239  G4int dfprec = G4cout.precision(prec);
240 
241  //run condition
242  //
244  G4double density = material->GetDensity();
245 
246  G4String Particle = fParticle->GetParticleName();
247  G4cout << "\n The run is " << numberOfEvent << " "<< Particle << " of "
248  << G4BestUnit(fEkin,"Energy") << " through "
249  << G4BestUnit(fDetector->GetSize(),"Length") << " of "
250  << material->GetName() << " (density: "
251  << G4BestUnit(density,"Volumic Mass") << ")" << G4endl;
252 
253  if (numberOfEvent == 0) { G4cout.precision(dfprec); return;}
254 
255  //frequency of processes
256  //
257  G4cout << "\n Process calls frequency:" << G4endl;
258  G4int survive = 0;
259  std::map<G4String,G4int>::iterator it;
260  for (it = fProcCounter.begin(); it != fProcCounter.end(); it++) {
261  G4String procName = it->first;
262  G4int count = it->second;
263  G4cout << "\t" << procName << "= " << count;
264  if (procName == "Transportation") survive = count;
265  }
266  G4cout << G4endl;
267 
268  if (survive > 0) {
269  G4cout << "\n Nb of incident particles surviving after "
270  << G4BestUnit(fDetector->GetSize(),"Length") << " of "
271  << material->GetName() << " : " << survive << G4endl;
272  }
273 
274  if (fTotalCount == 0) fTotalCount = 1; //force printing anyway
275 
276  //compute mean free path and related quantities
277  //
278  G4double MeanFreePath = fSumTrack /fTotalCount;
279  G4double MeanTrack2 = fSumTrack2/fTotalCount;
280  G4double rms = std::sqrt(std::fabs(MeanTrack2 - MeanFreePath*MeanFreePath));
281  G4double CrossSection = 0.0;
282  if(MeanFreePath > 0.0) { CrossSection = 1./MeanFreePath; }
283  G4double massicMFP = MeanFreePath*density;
284  G4double massicCS = 0.0;
285  if(massicMFP > 0.0) { massicCS = 1./massicMFP; }
286 
287  G4cout << "\n\n MeanFreePath:\t" << G4BestUnit(MeanFreePath,"Length")
288  << " +- " << G4BestUnit( rms,"Length")
289  << "\tmassic: " << G4BestUnit(massicMFP, "Mass/Surface")
290  << "\n CrossSection:\t" << CrossSection*cm << " cm^-1 "
291  << "\t\tmassic: " << G4BestUnit(massicCS, "Surface/Mass")
292  << G4endl;
293 
294  //cross section per atom (only for single material)
295  //
296  if (material->GetNumberOfElements() == 1) {
297  G4double nbAtoms = material->GetTotNbOfAtomsPerVolume();
298  G4double crossSection = CrossSection/nbAtoms;
299  G4cout << " crossSection per atom:\t"
300  << G4BestUnit(crossSection,"Surface") << G4endl;
301  }
302  //check cross section from G4HadronicProcessStore
303  //
304  G4cout << "\n Verification: "
305  << "crossSections from G4HadronicProcessStore:";
306 
309  G4double sumc1 = 0.0, sumc2 = 0.0;
310  if (material->GetNumberOfElements() == 1) {
311  const G4Element* element = material->GetElement(0);
312  for (it = fProcCounter.begin(); it != fProcCounter.end(); it++) {
313  G4String procName = it->first;
314  G4VProcess* process = processTable->FindProcess(procName, fParticle);
315  G4double xs1 =
316  store->GetCrossSectionPerVolume(fParticle,fEkin,process,material);
317  G4double massSigma = xs1/density;
318  sumc1 += massSigma;
319  G4double xs2 =
320  store->GetCrossSectionPerAtom(fParticle,fEkin,process,element,material);
321  sumc2 += xs2;
322  G4cout << "\n" << std::setw(20) << procName << "= "
323  << G4BestUnit(massSigma, "Surface/Mass") << "\t"
324  << G4BestUnit(xs2, "Surface");
325 
326  }
327  G4cout << "\n" << std::setw(20) << "total" << "= "
328  << G4BestUnit(sumc1, "Surface/Mass") << "\t"
329  << G4BestUnit(sumc2, "Surface") << G4endl;
330  } else {
331  for (it = fProcCounter.begin(); it != fProcCounter.end(); it++) {
332  G4String procName = it->first;
333  G4VProcess* process = processTable->FindProcess(procName, fParticle);
334  G4double xs =
335  store->GetCrossSectionPerVolume(fParticle,fEkin,process,material);
336  G4double massSigma = xs/density;
337  sumc1 += massSigma;
338  G4cout << "\n" << std::setw(20) << procName << "= "
339  << G4BestUnit(massSigma, "Surface/Mass");
340  }
341  G4cout << "\n" << std::setw(20) << "total" << "= "
342  << G4BestUnit(sumc1, "Surface/Mass") << G4endl;
343  }
344 
345  //nuclear channel count
346  //
347  G4cout << "\n List of nuclear reactions: \n" << G4endl;
348  std::map<G4String,NuclChannel>::iterator ic;
349  for (ic = fNuclChannelMap.begin(); ic != fNuclChannelMap.end(); ic++) {
350  G4String name = ic->first;
351  NuclChannel data = ic->second;
352  G4int count = data.fCount;
353  G4double Q = data.fQ/count;
354  if (print)
355  G4cout << " " << std::setw(50) << name << ": " << std::setw(7) << count
356  << " Q = " << std::setw(wid) << G4BestUnit(Q, "Energy")
357  << G4endl;
358  }
359 
360  //Gamma count
361  //
362  if (print && (fGammaCount > 0)) {
363  G4cout << "\n" << std::setw(58) << "Number of gamma: N = "
364  << fNbGamma[1] << " --> " << fNbGamma[2] << G4endl;
365  }
366 
367  if (print && fTargetXXX) {
368  G4cout
369  << "\n --> NOTE: XXXX because neutronHP is unable to return target nucleus"
370  << G4endl;
371  }
372 
373  //particles count
374  //
375  G4cout << "\n List of generated particles:" << G4endl;
376 
377  std::map<G4String,ParticleData>::iterator itn;
378  for (itn = fParticleDataMap.begin(); itn != fParticleDataMap.end(); itn++) {
379  G4String name = itn->first;
380  ParticleData data = itn->second;
381  G4int count = data.fCount;
382  G4double eMean = data.fEmean/count;
383  G4double eMin = data.fEmin;
384  G4double eMax = data.fEmax;
385  if (print)
386  G4cout << " " << std::setw(13) << name << ": " << std::setw(7) << count
387  << " Emean = " << std::setw(wid) << G4BestUnit(eMean, "Energy")
388  << "\t( " << G4BestUnit(eMin, "Energy")
389  << " --> " << G4BestUnit(eMax, "Energy")
390  << ")" << G4endl;
391  }
392 
393  //energy momentum balance
394  //
395  if (fTotalCount > 1) {
396  G4double Pbmean = fPbalance[0]/fTotalCount;
397  G4cout << "\n Momentum balance: Pmean = "
398  << std::setw(wid) << G4BestUnit(Pbmean, "Energy")
399  << "\t( " << G4BestUnit(fPbalance[1], "Energy")
400  << " --> " << G4BestUnit(fPbalance[2], "Energy")
401  << ") \n" << G4endl;
402  }
403 
404  //normalize histograms
408 
409  //remove all contents in fProcCounter, fCount
410  fProcCounter.clear();
411  fNuclChannelMap.clear();
412  fParticleDataMap.clear();
413 
414  //restore default format
415  G4cout.precision(dfprec);
416 }
std::map< G4String, ParticleData > fParticleDataMap
static const double cm
Definition: G4SIunits.hh:118
G4int numberOfEvent
Definition: G4Run.hh:59
std::map< G4String, NuclChannel > fNuclChannelMap
G4int first(char) const
static G4HadronicProcessStore * Instance()
G4VProcess * FindProcess(const G4String &processName, const G4String &particleName) const
G4String name
Definition: TRTMaterials.hh:40
G4double GetTotNbOfAtomsPerVolume() const
Definition: G4Material.hh:209
G4double GetDensity() const
Definition: G4Material.hh:180
static double Q[]
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
string material
Definition: eplot.py:19
G4double density
Definition: TRTMaterials.hh:39
static const double prec
Definition: RanecuEngine.cc:58
const G4String & GetParticleName() const
G4GLOB_DLL std::ostream G4cout
const G4Element * GetElement(G4int iel) const
Definition: G4Material.hh:202
void print(G4double elem)
std::map< G4String, G4int > fProcCounter
G4double GetCrossSectionPerVolume(const G4ParticleDefinition *particle, G4double kineticEnergy, const G4VProcess *process, const G4Material *material)
size_t GetNumberOfElements() const
Definition: G4Material.hh:186
DetectorConstruction * fDetector
#define G4endl
Definition: G4ios.hh:61
G4ParticleDefinition * fParticle
double G4double
Definition: G4Types.hh:76
const G4String & GetName() const
Definition: G4Material.hh:178
static G4ProcessTable * GetProcessTable()
G4double GetCrossSectionPerAtom(const G4ParticleDefinition *particle, G4double kineticEnergy, const G4VProcess *process, const G4Element *element, const G4Material *material=0)
Here is the call graph for this function:

◆ EndOfRun() [16/22]

void Run::EndOfRun ( )

◆ EndOfRun() [17/22]

void Run::EndOfRun ( )

◆ EndOfRun() [18/22]

void Run::EndOfRun ( G4double  edep,
G4double  rms,
G4double limit 
)

Definition at line 200 of file extended/electromagnetic/TestEm2/src/Run.cc.

201 {
202  G4int NbOfEvents = GetNumberOfEvent();
203 
204  G4double kinEnergy = fKin->GetParticleGun()->GetParticleEnergy();
205  assert(NbOfEvents*kinEnergy > 0);
206 
207  fChargedStep /= G4double(NbOfEvents);
208  fNeutralStep /= G4double(NbOfEvents);
209 
211  G4double norme = 100./(NbOfEvents*(kinEnergy+mass));
212 
213  //longitudinal
214  //
215  G4double dLradl = fDet->GetdLradl();
216 
217  MyVector MeanELongit(f_nLbin), rmsELongit(f_nLbin);
218  MyVector MeanELongitCumul(f_nLbin), rmsELongitCumul(f_nLbin);
219 
220  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
221 
222  G4int i;
223  for (i=0; i<f_nLbin; i++) {
224  MeanELongit[i] = norme*fSumELongit[i];
225  rmsELongit[i] =
226  norme*std::sqrt(std::abs(NbOfEvents*fSumE2Longit[i]
227  - fSumELongit[i]*fSumELongit[i]));
228 
229  MeanELongitCumul[i] = norme*fSumELongitCumul[i];
230  rmsELongitCumul[i] = norme*std::sqrt(std::abs(NbOfEvents*
231  fSumE2LongitCumul[i] - fSumELongitCumul[i]*fSumELongitCumul[i]));
232  G4double bin = (i+0.5)*dLradl;
233  analysisManager->FillH1(4, bin,MeanELongit[i]/dLradl);
234  analysisManager->FillH1(5, bin, rmsELongit[i]/dLradl);
235  bin = (i+1)*dLradl;
236  analysisManager->FillH1(6, bin,MeanELongitCumul[i]);
237  analysisManager->FillH1(7, bin, rmsELongitCumul[i]);
238  }
239 
240  //radial
241  //
242  G4double dRradl = fDet->GetdRradl();
243 
244  MyVector MeanERadial(f_nRbin), rmsERadial(f_nRbin);
245  MyVector MeanERadialCumul(f_nRbin), rmsERadialCumul(f_nRbin);
246 
247  for (i=0; i<f_nRbin; i++) {
248  MeanERadial[i] = norme*fSumERadial[i];
249  rmsERadial[i] = norme*std::sqrt(std::abs(NbOfEvents*fSumE2Radial[i]
250  - fSumERadial[i]*fSumERadial[i]));
251 
252  MeanERadialCumul[i] = norme*fSumERadialCumul[i];
253  rmsERadialCumul[i] =
254  norme*std::sqrt(std::abs(NbOfEvents*fSumE2RadialCumul[i]
255  - fSumERadialCumul[i]*fSumERadialCumul[i]));
256 
257  G4double bin = (i+0.5)*dRradl;
258  analysisManager->FillH1(8, bin,MeanERadial[i]/dRradl);
259  analysisManager->FillH1(9, bin, rmsERadial[i]/dRradl);
260  bin = (i+1)*dRradl;
261  analysisManager->FillH1(10, bin,MeanERadialCumul[i]);
262  analysisManager->FillH1(11, bin, rmsERadialCumul[i]);
263  }
264 
265  //find Moliere confinement
266  //
267  const G4double EMoliere = 90.;
268  G4double iMoliere = 0.;
269  if ((MeanERadialCumul[0] <= EMoliere) &&
270  (MeanERadialCumul[f_nRbin-1] >= EMoliere)) {
271  G4int imin = 0;
272  while( (imin < f_nRbin-1) && (MeanERadialCumul[imin] < EMoliere) )
273  { ++imin; }
274  G4double ratio = (EMoliere - MeanERadialCumul[imin]) /
275  (MeanERadialCumul[imin+1] - MeanERadialCumul[imin]);
276  iMoliere = 1. + imin + ratio;
277  }
278 
279  //track length
280  //
281  norme = 1./(NbOfEvents*(fDet->GetMaterial()->GetRadlen()));
282  G4double MeanChargTrLength = norme*fSumChargTrLength;
283  G4double rmsChargTrLength =
284  norme*std::sqrt(std::fabs(NbOfEvents*fSum2ChargTrLength
285  - fSumChargTrLength*fSumChargTrLength));
286 
287  G4double MeanNeutrTrLength = norme*fSumNeutrTrLength;
288  G4double rmsNeutrTrLength =
289  norme*std::sqrt(std::fabs(NbOfEvents*fSum2NeutrTrLength
290  - fSumNeutrTrLength*fSumNeutrTrLength));
291 
292  //print
293  std::ios::fmtflags mode = G4cout.flags();
294  G4cout.setf(std::ios::fixed,std::ios::floatfield);
295  G4int prec = G4cout.precision(2);
296 
297  if (fVerbose) {
298 
299  G4cout << " LOGITUDINAL PROFILE "
300  << " CUMULATIVE LOGITUDINAL PROFILE" << G4endl << G4endl;
301 
302  G4cout << " bin " << " Mean rms "
303  << " bin " << " Mean rms \n" << G4endl;
304 
305  for (i=0; i<f_nLbin; i++) {
306  G4double inf=i*dLradl, sup=inf+dLradl;
307 
308  G4cout << std::setw(8) << inf << "->"
309  << std::setw(5) << sup << " radl: "
310  << std::setw(7) << MeanELongit[i] << "% "
311  << std::setw(9) << rmsELongit[i] << "% "
312  << " 0->" << std::setw(5) << sup << " radl: "
313  << std::setw(7) << MeanELongitCumul[i] << "% "
314  << std::setw(7) << rmsELongitCumul[i] << "% "
315  <<G4endl;
316  }
317 
318  G4cout << G4endl << G4endl << G4endl;
319 
320  G4cout << " RADIAL PROFILE "
321  << " CUMULATIVE RADIAL PROFILE" << G4endl << G4endl;
322 
323  G4cout << " bin " << " Mean rms "
324  << " bin " << " Mean rms \n" << G4endl;
325 
326  for (i=0; i<f_nRbin; i++) {
327  G4double inf=i*dRradl, sup=inf+dRradl;
328 
329  G4cout << std::setw(8) << inf << "->"
330  << std::setw(5) << sup << " radl: "
331  << std::setw(7) << MeanERadial[i] << "% "
332  << std::setw(9) << rmsERadial[i] << "% "
333  << " 0->" << std::setw(5) << sup << " radl: "
334  << std::setw(7) << MeanERadialCumul[i] << "% "
335  << std::setw(7) << rmsERadialCumul[i] << "% "
336  <<G4endl;
337  }
338  }
339 
340  G4cout << "\n ===== SUMMARY ===== \n" << G4endl;
341 
342  G4cout << " Total number of events: " << NbOfEvents << "\n"
343  << " Mean number of charged steps: " << fChargedStep << G4endl;
344  G4cout << " Mean number of neutral steps: " << fNeutralStep
345  << "\n" << G4endl;
346 
347  G4cout << " energy deposit : "
348  << std::setw(7) << MeanELongitCumul[f_nLbin-1] << " % E0 +- "
349  << std::setw(7) << rmsELongitCumul[f_nLbin-1] << " % E0" << G4endl;
350  G4cout << " charged traklen: "
351  << std::setw(7) << MeanChargTrLength << " radl +- "
352  << std::setw(7) << rmsChargTrLength << " radl" << G4endl;
353  G4cout << " neutral traklen: "
354  << std::setw(7) << MeanNeutrTrLength << " radl +- "
355  << std::setw(7) << rmsNeutrTrLength << " radl" << G4endl;
356 
357  if (iMoliere > 0. ) {
358  G4double RMoliere1 = iMoliere*fDet->GetdRradl();
359  G4double RMoliere2 = iMoliere*fDet->GetdRlength();
360  G4cout << "\n " << EMoliere << " % confinement: radius = "
361  << RMoliere1 << " radl ("
362  << G4BestUnit( RMoliere2, "Length") << ")" << "\n" << G4endl;
363  }
364 
365  G4cout.setf(mode,std::ios::floatfield);
366  G4cout.precision(prec);
367 
368  // Acceptance
369 
370  G4int nLbin = fDet->GetnLtot();
371  if (limit < DBL_MAX) {
372  EmAcceptance acc;
373  acc.BeginOfAcceptance("Total Energy in Absorber",NbOfEvents);
374  G4double e = MeanELongitCumul[nLbin-1]/100.;
375  G4double r = rmsELongitCumul[nLbin-1]/100.;
376  acc.EmAcceptanceGauss("Edep",NbOfEvents,e,edep,rms,limit);
377  acc.EmAcceptanceGauss("Erms",NbOfEvents,r,rms,rms,2.0*limit);
378  acc.EndOfAcceptance();
379  }
380  limit = DBL_MAX;
381 }
void EmAcceptanceGauss(const G4String &title, G4int stat, G4double avr, G4double avr0, G4double rms, G4double limit)
float bin[41]
Definition: plottest35.C:14
void BeginOfAcceptance(const G4String &title, G4int stat)
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
Double_t edep
static const double prec
Definition: RanecuEngine.cc:58
G4GLOB_DLL std::ostream G4cout
G4double GetParticleEnergy() const
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
std::vector< G4double > MyVector
#define G4endl
Definition: G4ios.hh:61
G4int GetNumberOfEvent() const
Definition: G4Run.hh:79
double G4double
Definition: G4Types.hh:76
G4double GetRadlen() const
Definition: G4Material.hh:220
#define DBL_MAX
Definition: templates.hh:83
PrimaryGeneratorAction * fKin
G4ParticleDefinition * GetParticleDefinition() const
Here is the call graph for this function:

◆ EndOfRun() [19/22]

void Run::EndOfRun ( )

◆ EndOfRun() [20/22]

void Run::EndOfRun ( )

◆ EndOfRun() [21/22]

void Run::EndOfRun ( )

◆ EndOfRun() [22/22]

void Run::EndOfRun ( )

◆ EventTiming()

void Run::EventTiming ( G4double  time)

Definition at line 106 of file extended/radioactivedecay/rdecay01/src/Run.cc.

107 {
108  fTimeCount++;
109  fEventTime[0] += time;
110  if (fTimeCount == 1) fEventTime[1] = fEventTime[2] = time;
111  if (time < fEventTime[1]) fEventTime[1] = time;
112  if (time > fEventTime[2]) fEventTime[2] = time;
113 }

◆ EvisEvent()

void Run::EvisEvent ( G4double  Evis)

Definition at line 124 of file extended/radioactivedecay/rdecay01/src/Run.cc.

125 {
126  fEvisEvent[0] += Evis;
127  if (fTimeCount == 1) fEvisEvent[1] = fEvisEvent[2] = Evis;
128  if (Evis < fEvisEvent[1]) fEvisEvent[1] = Evis;
129  if (Evis > fEvisEvent[2]) fEvisEvent[2] = Evis;
130 }
Here is the call graph for this function:

◆ FillPerEvent() [1/2]

void Run::FillPerEvent ( G4int  kAbs,
G4double  EAbs,
G4double  LAbs 
)

Definition at line 94 of file extended/electromagnetic/TestEm3/src/Run.cc.

95 {
96  //accumulate statistic with restriction
97  //
98  if(fApplyLimit) fEnergyDeposit[kAbs].push_back(EAbs);
99  fSumEAbs[kAbs] += EAbs; fSum2EAbs[kAbs] += EAbs*EAbs;
100  fSumLAbs[kAbs] += LAbs; fSum2LAbs[kAbs] += LAbs*LAbs;
101 }
std::vector< G4double > fEnergyDeposit[MaxAbsor]

◆ FillPerEvent() [2/2]

void Run::FillPerEvent ( )

Definition at line 112 of file extended/electromagnetic/TestEm2/src/Run.cc.

113 {
114  //accumulate statistic
115  //
116  G4double dLCumul = 0.;
117  for (G4int i=0; i<f_nLbin; i++)
118  {
119  fSumELongit[i] += f_dEdL[i];
120  fSumE2Longit[i] += f_dEdL[i]*f_dEdL[i];
121  dLCumul += f_dEdL[i];
122  fSumELongitCumul[i] += dLCumul;
123  fSumE2LongitCumul[i] += dLCumul*dLCumul;
124  }
125 
126  G4double dRCumul = 0.;
127  for (G4int j=0; j<f_nRbin; j++)
128  {
129  fSumERadial[j] += f_dEdR[j];
130  fSumE2Radial[j] += f_dEdR[j]*f_dEdR[j];
131  dRCumul += f_dEdR[j];
132  fSumERadialCumul[j] += dRCumul;
133  fSumE2RadialCumul[j] += dRCumul*dRCumul;
134  }
135 
140 
141  //fill histograms
142  //
143 
146  G4double radl=fDet->GetMaterial()->GetRadlen();
147 
148  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
149  analysisManager->FillH1(1, 100.*dLCumul/(Ekin+mass));
150  analysisManager->FillH1(2, fChargTrLength/radl);
151  analysisManager->FillH1(3, fNeutrTrLength/radl);
152 
153  //profiles
154  G4double norm = 100./(Ekin+mass);
155  G4double dLradl = fDet->GetdLradl();
156  for (G4int i=0; i<f_nLbin; i++) {
157  G4double bin = (i+0.5)*dLradl;
158  analysisManager->FillP1(0, bin, norm*f_dEdL[i]/dLradl);
159  }
160  G4double dRradl = fDet->GetdRradl();
161  for (G4int j=0; j<f_nRbin; j++) {
162  G4double bin = (j+0.5)*dRradl;
163  analysisManager->FillP1(1, bin, norm*f_dEdR[j]/dRradl);
164  }
165 }
Float_t norm
float bin[41]
Definition: plottest35.C:14
int G4int
Definition: G4Types.hh:78
G4double GetParticleEnergy() const
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
double G4double
Definition: G4Types.hh:76
G4double GetRadlen() const
Definition: G4Material.hh:220
PrimaryGeneratorAction * fKin
G4ParticleDefinition * GetParticleDefinition() const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FillPerStep()

void Run::FillPerStep ( G4double  dEstep,
G4int  Lbin,
G4int  Rbin 
)
inline

Definition at line 118 of file extended/electromagnetic/TestEm2/include/Run.hh.

119 {
120  f_dEdL[Lbin] += dEstep; f_dEdR[Rbin] += dEstep;
121 }
Here is the caller graph for this function:

◆ FillPerTrack()

void Run::FillPerTrack ( G4double  charge,
G4double  trkLength 
)
inline

Definition at line 109 of file extended/electromagnetic/TestEm2/include/Run.hh.

110 {
111  if (charge != 0.) fChargTrLength += trkLength;
112  else fNeutrTrLength += trkLength;
113 }
Here is the caller graph for this function:

◆ FlowInCavity() [1/2]

void Run::FlowInCavity ( G4int  k,
G4double  e 
)
inline

◆ FlowInCavity() [2/2]

void Run::FlowInCavity ( G4int  k,
G4double  e 
)
inline

Definition at line 69 of file extended/medical/fanoCavity/include/Run.hh.

Here is the caller graph for this function:

◆ GetCounter()

G4int Run::GetCounter ( ) const
inline

◆ GetCsdaRange() [1/2]

G4double Run::GetCsdaRange ( )

Definition at line 114 of file extended/electromagnetic/TestEm12/src/Run.cc.

115 {
116  return fCsdaRange;
117 }
Here is the call graph for this function:

◆ GetCsdaRange() [2/2]

G4double Run::GetCsdaRange ( G4int  i)

Definition at line 135 of file extended/electromagnetic/TestEm11/src/Run.cc.

136 {
137  return fCsdaRange[i];
138 }
Here is the caller graph for this function:

◆ GetEdep() [1/3]

G4double Run::GetEdep ( ) const
inline

Definition at line 60 of file extended/medical/dna/svalue/include/Run.hh.

Here is the call graph for this function:

◆ GetEdep() [2/3]

G4double Run::GetEdep ( ) const
inline

Definition at line 61 of file extended/medical/dna/range/include/Run.hh.

Here is the call graph for this function:

◆ GetEdep() [3/3]

G4double Run::GetEdep ( ) const
inline

◆ GetInelastic()

G4double Run::GetInelastic ( ) const
inline

Definition at line 62 of file extended/medical/dna/wvalue/include/Run.hh.

62 {return fNbInelastic;};
Here is the call graph for this function:

◆ GetMeanCluster()

G4double Run::GetMeanCluster ( ) const
inline

Definition at line 125 of file extended/electromagnetic/TestEm8/include/Run.hh.

126 {
127  return fMeanCluster;
128 }

◆ GetStat()

const G4StatDouble * Run::GetStat ( ) const
inline

Definition at line 130 of file extended/electromagnetic/TestEm8/include/Run.hh.

131 {
132  return &fEdep;
133 }
Here is the caller graph for this function:

◆ GetTotCluster()

G4double Run::GetTotCluster ( ) const
inline

Definition at line 120 of file extended/electromagnetic/TestEm8/include/Run.hh.

121 {
122  return fTotCluster;
123 }

◆ GetTotStepGas()

G4double Run::GetTotStepGas ( ) const
inline

Definition at line 115 of file extended/electromagnetic/TestEm8/include/Run.hh.

116 {
117  return fTotStepGas;
118 }

◆ GetVerbose()

G4int Run::GetVerbose ( ) const
inline

Definition at line 110 of file extended/electromagnetic/TestEm8/include/Run.hh.

111 {
112  return fVerbose;
113 }

◆ GetXfrontNorm()

G4double Run::GetXfrontNorm ( G4int  i)

Definition at line 142 of file extended/electromagnetic/TestEm11/src/Run.cc.

143 {
144  return fXfrontNorm[i];
145 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ InitFluence()

void Run::InitFluence ( )
private

Definition at line 166 of file extended/medical/electronScattering/src/Run.cc.

167 {
168  // create Fluence histo in any case
169 
170  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
171  G4int ih = 4;
172  analysisManager->SetH1(ih, 120, 0*mm, 240*mm, "mm");
173 
174  //construct vectors for fluence distribution
175 
176  fNbBins = analysisManager->GetH1Nbins(ih);
177  fDr = analysisManager->GetH1Width(ih);
178  fluence.resize(fNbBins, 0.);
179  fluence1.resize(fNbBins, 0.);
180  fluence2.resize(fNbBins, 0.);
181  fNbEntries.resize(fNbBins, 0);
182 }
std::vector< G4double > fluence1
int G4int
Definition: G4Types.hh:78
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
std::vector< G4double > fluence2
static const double mm
Definition: G4SIunits.hh:114

◆ InitializePerEvent()

void Run::InitializePerEvent ( )

Definition at line 97 of file extended/electromagnetic/TestEm2/src/Run.cc.

98 {
99  //initialize arrays of energy deposit per bin
100  for (G4int i=0; i<f_nLbin; i++)
101  { f_dEdL[i] = 0.; }
102 
103  for (G4int j=0; j<f_nRbin; j++)
104  { f_dEdR[j] = 0.; }
105 
106  //initialize tracklength
108 }
int G4int
Definition: G4Types.hh:78

◆ Merge() [1/23]

void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [2/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [3/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [4/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [5/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [6/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [7/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [8/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [9/23]

void Run::Merge ( const G4Run run)
virtual

Reimplemented from G4Run.

Definition at line 115 of file advanced/amsEcal/src/Run.cc.

116 {
117  const Run* localRun = static_cast<const Run*>(run);
118 
119  // pass information about primary particle
120  fParticle = localRun->fParticle;
121  fEkin = localRun->fEkin;
122 
123  // accumulate sums
124  //
125  for (G4int k=0; k<kLayerMax; k++) {
126  EtotLayer[k] += localRun->EtotLayer[k];
127  Etot2Layer[k] += localRun->Etot2Layer[k];
128  EvisLayer[k] += localRun->EvisLayer[k];
129  Evis2Layer[k] += localRun->Evis2Layer[k];
130  }
131 
132  EtotCalor += localRun->EtotCalor;
133  Etot2Calor += localRun->Etot2Calor;
134  EvisCalor += localRun->EvisCalor;
135  Evis2Calor += localRun->Evis2Calor;
136  Eleak += localRun->Eleak;
137  Eleak2 += localRun->Eleak2;
138  EdLeak[0] += localRun->EdLeak[0];
139  EdLeak[1] += localRun->EdLeak[1];
140  EdLeak[2] += localRun->EdLeak[2];
141 
142  G4Run::Merge(run);
143 }
virtual void Merge(const G4Run *)
Definition: G4Run.cc:54
std::vector< G4double > Evis2Layer
int G4int
Definition: G4Types.hh:78
G4double EdLeak[3]
std::vector< G4double > Etot2Layer
std::vector< G4double > EvisLayer
G4ParticleDefinition * fParticle
std::vector< G4double > EtotLayer
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Merge() [10/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [11/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [12/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [13/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [14/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [15/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [16/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [17/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [18/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [19/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [20/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [21/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [22/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ Merge() [23/23]

virtual void Run::Merge ( const G4Run )
virtual

Reimplemented from G4Run.

◆ ParticleCount() [1/5]

void Run::ParticleCount ( G4String  ,
G4double   
)

◆ ParticleCount() [2/5]

void Run::ParticleCount ( G4String  ,
G4double   
)

◆ ParticleCount() [3/5]

void Run::ParticleCount ( G4String  name,
G4double  Ekin,
G4int  iVol 
)

Definition at line 99 of file extended/radioactivedecay/rdecay02/src/Run.cc.

100 {
101  if (iVol == 1) {
102  std::map<G4String, ParticleData>::iterator it = fParticleDataMap1.find(name);
103  if ( it == fParticleDataMap1.end()) {
104  fParticleDataMap1[name] = ParticleData(1, Ekin, Ekin, Ekin);
105  }
106  else {
107  ParticleData& data = it->second;
108  data.fCount++;
109  data.fEmean += Ekin;
110  //update min max
111  G4double emin = data.fEmin;
112  if (Ekin < emin) data.fEmin = Ekin;
113  G4double emax = data.fEmax;
114  if (Ekin > emax) data.fEmax = Ekin;
115  }
116  }
117 
118  if (iVol == 2) {
119  std::map<G4String, ParticleData>::iterator it = fParticleDataMap2.find(name);
120  if ( it == fParticleDataMap2.end()) {
121  fParticleDataMap2[name] = ParticleData(1, Ekin, Ekin, Ekin);
122  }
123  else {
124  ParticleData& data = it->second;
125  data.fCount++;
126  data.fEmean += Ekin;
127  //update min max
128  G4double emin = data.fEmin;
129  if (Ekin < emin) data.fEmin = Ekin;
130  G4double emax = data.fEmax;
131  if (Ekin > emax) data.fEmax = Ekin;
132  }
133  }
134 }
G4String name
Definition: TRTMaterials.hh:40
static const G4double emax
std::map< G4String, ParticleData > fParticleDataMap1
std::map< G4String, ParticleData > fParticleDataMap2
double G4double
Definition: G4Types.hh:76

◆ ParticleCount() [4/5]

void Run::ParticleCount ( G4String  ,
G4double   
)

◆ ParticleCount() [5/5]

void Run::ParticleCount ( G4String  name,
G4double  Ekin 
)

Definition at line 114 of file extended/hadronic/Hadr03/src/Run.cc.

115 {
116  std::map<G4String, ParticleData>::iterator it = fParticleDataMap.find(name);
117  if ( it == fParticleDataMap.end()) {
118  fParticleDataMap[name] = ParticleData(1, Ekin, Ekin, Ekin);
119  }
120  else {
121  ParticleData& data = it->second;
122  data.fCount++;
123  data.fEmean += Ekin;
124  //update min max
125  G4double emin = data.fEmin;
126  if (Ekin < emin) data.fEmin = Ekin;
127  G4double emax = data.fEmax;
128  if (Ekin > emax) data.fEmax = Ekin;
129  }
130 }
std::map< G4String, ParticleData > fParticleDataMap
G4String name
Definition: TRTMaterials.hh:40
static const G4double emax
double G4double
Definition: G4Types.hh:76
Here is the caller graph for this function:

◆ ParticleFlux()

void Run::ParticleFlux ( G4String  name,
G4double  Ekin 
)

Definition at line 116 of file extended/hadronic/Hadr06/src/Run.cc.

117 {
118  std::map<G4String, ParticleData>::iterator it = fParticleDataMap2.find(name);
119  if ( it == fParticleDataMap2.end()) {
120  fParticleDataMap2[name] = ParticleData(1, Ekin, Ekin, Ekin);
121  }
122  else {
123  ParticleData& data = it->second;
124  data.fCount++;
125  data.fEmean += Ekin;
126  //update min max
127  G4double emin = data.fEmin;
128  if (Ekin < emin) data.fEmin = Ekin;
129  G4double emax = data.fEmax;
130  if (Ekin > emax) data.fEmax = Ekin;
131  }
132 }
G4String name
Definition: TRTMaterials.hh:40
static const G4double emax
std::map< G4String, ParticleData > fParticleDataMap2
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ PrimaryTiming()

void Run::PrimaryTiming ( G4double  ptime)

Definition at line 117 of file extended/radioactivedecay/rdecay01/src/Run.cc.

118 {
119  fPrimaryTime += ptime;
120 }

◆ PrintFluence()

void Run::PrintFluence ( G4int  TotEvents)
private

Definition at line 252 of file extended/medical/electronScattering/src/Run.cc.

253 {
254  G4AnalysisManager* analysisManager = G4AnalysisManager::Instance();
255  G4String name = analysisManager->GetFileName();
256  G4String fileName = name + ".ascii";
257  std::ofstream File(fileName, std::ios::out);
258 
259  std::ios::fmtflags mode = File.flags();
260  File.setf( std::ios::scientific, std::ios::floatfield );
261  G4int prec = File.precision(3);
262 
263  File << " Fluence density distribution \n "
264  << "\n ibin \t radius (mm) \t Nb \t fluence\t norma fl\t rms/nfl (%) \n"
265  << G4endl;
266 
267  G4double rmean = -0.5*fDr;
268  for (G4int bin=0; bin<fNbBins; bin++) {
269  rmean +=fDr;
270  G4double error = 0.;
271  if (fluence1[bin] > 0.) error = 100*fluence2[bin]/fluence1[bin];
272  File << " " << bin << "\t " << rmean/mm << "\t " << fNbEntries[bin]
273  << "\t " << fluence[bin]/double(TotEvents) << "\t " << fluence1[bin]
274  << "\t " << error
275  << G4endl;
276  }
277 
278  // restaure default formats
279  File.setf(mode,std::ios::floatfield);
280  File.precision(prec);
281 }
std::vector< G4double > fluence1
G4String name
Definition: TRTMaterials.hh:40
float bin[41]
Definition: plottest35.C:14
int G4int
Definition: G4Types.hh:78
static const double prec
Definition: RanecuEngine.cc:58
ExG4HbookAnalysisManager G4AnalysisManager
Definition: g4hbook_defs.hh:66
#define G4endl
Definition: G4ios.hh:61
static PROLOG_HANDLER error
Definition: xmlrole.cc:112
double G4double
Definition: G4Types.hh:76
std::vector< G4double > fluence2
static const double mm
Definition: G4SIunits.hh:114

◆ Reset()

void Run::Reset ( )
private

Definition at line 56 of file extended/electromagnetic/TestEm2/src/Run.cc.

57 {
58  f_nLbin = fDet->GetnLtot();
59  f_dEdL.resize(f_nLbin);
60  fSumELongit.resize(f_nLbin);
61  fSumELongitCumul.resize(f_nLbin);
62  fSumE2Longit.resize(f_nLbin);
63  fSumE2LongitCumul.resize(f_nLbin);
64 
65  f_nRbin = fDet->GetnRtot();
66  f_dEdR.resize(f_nRbin);
67  fSumERadial.resize(f_nRbin);
68  fSumERadialCumul.resize(f_nRbin);
69  fSumE2Radial.resize(f_nRbin);
70  fSumE2RadialCumul.resize(f_nRbin);
71 
72  fChargedStep = 0.0;
73  fNeutralStep = 0.0;
74 
75  fVerbose = 0;
76 
77  //initialize arrays of cumulative energy deposition
78  //
79  for (G4int i=0; i<f_nLbin; i++)
81 
82  for (G4int j=0; j<f_nRbin; j++)
84 
85  //initialize track length
87 
88 }
int G4int
Definition: G4Types.hh:78
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetApplyLimit()

void Run::SetApplyLimit ( G4bool  val)

Definition at line 357 of file extended/electromagnetic/TestEm3/src/Run.cc.

358 {
359  fApplyLimit = val;
360 }
Here is the caller graph for this function:

◆ SetCsdaRange() [1/2]

void Run::SetCsdaRange ( G4double  value)

Definition at line 107 of file extended/electromagnetic/TestEm12/src/Run.cc.

108 {
109  fCsdaRange = value;
110 }

◆ SetCsdaRange() [2/2]

void Run::SetCsdaRange ( G4int  i,
G4double  value 
)

Definition at line 121 of file extended/electromagnetic/TestEm11/src/Run.cc.

122 {
123  fCsdaRange[i] = value;
124 }
Here is the caller graph for this function:

◆ SetEdepAndRMS()

void Run::SetEdepAndRMS ( G4int  i,
G4double  edep,
G4double  rms,
G4double  lim 
)

Definition at line 346 of file extended/electromagnetic/TestEm3/src/Run.cc.

347 {
348  if (i>=0 && i<MaxAbsor) {
349  fEdeptrue [i] = edep;
350  fRmstrue [i] = rms;
351  fLimittrue[i] = lim;
352  }
353 }
Double_t edep
Here is the caller graph for this function:

◆ SetPrimary() [1/19]

void Run::SetPrimary ( G4ParticleDefinition particle)

◆ SetPrimary() [2/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [3/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [4/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [5/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [6/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [7/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [8/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

Definition at line 77 of file advanced/amsEcal/src/Run.cc.

78 {
79  fParticle = particle;
80  fEkin = energy;
81 }
double energy
Definition: plottest35.C:25
G4ParticleDefinition * fParticle
Here is the caller graph for this function:

◆ SetPrimary() [9/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [10/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [11/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [12/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [13/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [14/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [15/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [16/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [17/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [18/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetPrimary() [19/19]

void Run::SetPrimary ( G4ParticleDefinition particle,
G4double  energy 
)

◆ SetTargetXXX()

void Run::SetTargetXXX ( G4bool  flag)

Definition at line 71 of file extended/hadronic/Hadr03/src/Run.cc.

72 {
73  fTargetXXX = flag;
74 }

◆ SetVerbose() [1/2]

void Run::SetVerbose ( G4int  value)
inline

◆ SetVerbose() [2/2]

void Run::SetVerbose ( G4int  val)
inline

Definition at line 70 of file extended/electromagnetic/TestEm2/include/Run.hh.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetXfrontNorm()

void Run::SetXfrontNorm ( G4int  i,
G4double  value 
)

Definition at line 128 of file extended/electromagnetic/TestEm11/src/Run.cc.

129 {
130  fXfrontNorm[i] = value;
131 }
Here is the caller graph for this function:

◆ StepInCavity() [1/2]

void Run::StepInCavity ( G4double  s)
inline

Definition at line 75 of file extended/medical/fanoCavity2/include/Run.hh.

75  { fStepCavity += s; fStepCavity2 += s*s;
76  fNbStepCavity++;};
static const double s
Definition: G4SIunits.hh:168
Here is the call graph for this function:

◆ StepInCavity() [2/2]

void Run::StepInCavity ( G4double  s)
inline

Definition at line 78 of file extended/medical/fanoCavity/include/Run.hh.

78  { fStepCavity += s; fStepCavity2 += s*s;
79  fNbStepCavity++;};
static const double s
Definition: G4SIunits.hh:168
Here is the caller graph for this function:

◆ StepInWall() [1/2]

void Run::StepInWall ( G4double  s)
inline

Definition at line 73 of file extended/medical/fanoCavity2/include/Run.hh.

73  { fStepWall += s; fStepWall2 += s*s;
74  fNbStepWall++;};
static const double s
Definition: G4SIunits.hh:168

◆ StepInWall() [2/2]

void Run::StepInWall ( G4double  s)
inline

Definition at line 76 of file extended/medical/fanoCavity/include/Run.hh.

76  { fStepWall += s; fStepWall2 += s*s;
77  fNbStepWall++;};
static const double s
Definition: G4SIunits.hh:168
Here is the caller graph for this function:

◆ SumEnergyFlow()

void Run::SumEnergyFlow ( G4int  plane,
G4double  Eflow 
)

Definition at line 105 of file extended/electromagnetic/TestEm3/src/Run.cc.

106 {
107  fEnergyFlow[plane] += Eflow;
108 }
std::vector< G4double > fEnergyFlow

◆ sumEsecond()

void Run::sumEsecond ( G4double  e)
inline

Definition at line 66 of file extended/medical/fanoCavity/include/Run.hh.

Here is the caller graph for this function:

◆ SumeTransf()

void Run::SumeTransf ( G4double  energy)

Definition at line 90 of file extended/electromagnetic/TestEm14/src/Run.cc.

91 {
93 }
double energy
Definition: plottest35.C:25
Here is the call graph for this function:

◆ SumEvents_1()

void Run::SumEvents_1 ( G4int  layer,
G4double  Etot,
G4double  Evis 
)

Definition at line 85 of file advanced/amsEcal/src/Run.cc.

86 {
87  //accumulate statistic per layer
88  //
89  EtotLayer[layer] += Etot; Etot2Layer[layer] += Etot*Etot;
90  EvisLayer[layer] += Evis; Evis2Layer[layer] += Evis*Evis;
91 }
std::vector< G4double > Evis2Layer
std::vector< G4double > Etot2Layer
std::vector< G4double > EvisLayer
std::vector< G4double > EtotLayer
Here is the caller graph for this function:

◆ SumEvents_2()

void Run::SumEvents_2 ( G4double  etot,
G4double  evis,
G4double  eleak 
)

Definition at line 95 of file advanced/amsEcal/src/Run.cc.

96 {
97  //accumulate statistic for full calorimeter
98  //
99  EtotCalor += etot; Etot2Calor += etot*etot;
100  EvisCalor += evis; Evis2Calor += evis*evis;
101  Eleak += eleak; Eleak2 += eleak*eleak;
102 }
Here is the caller graph for this function:

◆ SumFluence()

void Run::SumFluence ( G4double  r,
G4double  fl 
)

Definition at line 186 of file extended/medical/electronScattering/src/Run.cc.

187 {
188  G4int ibin = (int)(r/fDr);
189  if (ibin >= fNbBins) return;
190  fNbEntries[ibin]++;
191  fluence[ibin] += fl;
192  fluence2[ibin] += fl*fl;
193 }
int G4int
Definition: G4Types.hh:78
std::vector< G4double > fluence2

◆ SumLateralEleak()

void Run::SumLateralEleak ( G4int  cell,
G4double  Eflow 
)

Definition at line 112 of file extended/electromagnetic/TestEm3/src/Run.cc.

113 {
114  fLateralEleak[cell] += Eflow;
115 }
std::vector< G4double > fLateralEleak

◆ SumTrack() [1/2]

void Run::SumTrack ( G4double  track)

Definition at line 81 of file extended/electromagnetic/TestEm14/src/Run.cc.

Here is the caller graph for this function:

◆ SumTrack() [2/2]

void Run::SumTrack ( G4double  )

◆ SumTrackLength()

void Run::SumTrackLength ( G4int  nstep1,
G4int  nstep2,
G4double  trackl1,
G4double  trackl2,
G4double  time1,
G4double  time2 
)

Definition at line 100 of file extended/hadronic/Hadr04/src/Run.cc.

103 {
104  fNbStep1 += nstep1; fNbStep2 += nstep2;
105  fTrackLen1 += trackl1; fTrackLen2 += trackl2;
106  fTime1 += time1; fTime2 += time2;
107 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SurveyConvergence() [1/2]

void Run::SurveyConvergence ( G4int  NbofEvents)

Definition at line 315 of file extended/medical/fanoCavity/src/Run.cc.

316 {
317  if (NbofEvents == 0) return;
318 
319  //mean kinetic energy of secondary electrons
320  //
321  G4double meanEsecond = 0.;
322  if (fNbSec > 0) meanEsecond = fEsecondary/fNbSec;
323  G4double rateEmean = 0.;
324  // compute variation rate (%), iteration to iteration
325  if (fOldEmean > 0.) rateEmean = 100*(meanEsecond/fOldEmean - 1.);
326  fOldEmean = meanEsecond;
327 
328  //beam energy fluence
329  //
331  G4double surfaceBeam = CLHEP::pi*rBeam*rBeam;
333 
334  //total dose in cavity
335  //
336  G4double doseCavity = fEdepCavity/fMassCavity;
337  G4double doseOverBeam = doseCavity*surfaceBeam/(NbofEvents*beamEnergy);
338  G4double rateDose = 0.;
339  // compute variation rate (%), iteration to iteration
340  if (fOldDose > 0.) rateDose = 100*(doseOverBeam/fOldDose - 1.);
341  fOldDose = doseOverBeam;
342 
343  std::ios::fmtflags mode = G4cout.flags();
344  G4cout.setf(std::ios::fixed,std::ios::floatfield);
345  G4int prec = G4cout.precision(3);
346 
347  G4cout << "\n ---> NbofEvents= " << NbofEvents
348  << " NbOfelectr= " << fNbSec
349  << " Tkin= " << G4BestUnit(meanEsecond,"Energy")
350  << " (" << rateEmean << " %)"
351  << " NbOfelec in cav= " << fPartFlowCavity[0]
352  << " Dose/EnFluence= " << G4BestUnit(doseOverBeam,"Surface/Mass")
353  << " (" << rateDose << " %)"
354  << G4endl;
355 
356  // reset default formats
357  G4cout.setf(mode,std::ios::floatfield);
358  G4cout.precision(prec);
359 }
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1
int G4int
Definition: G4Types.hh:78
static const double prec
Definition: RanecuEngine.cc:58
G4GLOB_DLL std::ostream G4cout
G4double GetParticleEnergy() const
static const double pi
Definition: SystemOfUnits.h:53
PrimaryGeneratorAction * fKinematic
#define G4endl
Definition: G4ios.hh:61
double G4double
Definition: G4Types.hh:76
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SurveyConvergence() [2/2]

void Run::SurveyConvergence ( G4int  )

◆ WriteActivity()

void Run::WriteActivity ( G4int  nevent)

Definition at line 386 of file extended/radioactivedecay/rdecay02/src/Run.cc.

387 {
390  pTable->FindProcess("RadioactiveDecay", "GenericIon");
391 
392  // output the induced radioactivities (in VR mode only)
393  //
394  if ((rDecay == 0) || (rDecay->IsAnalogueMonteCarlo())) return;
395 
396  G4String fileName = G4AnalysisManager::Instance()->GetFileName() + ".activity";
397  std::ofstream outfile (fileName, std::ios::out );
398 
399  std::vector<G4RadioactivityTable*> theTables =
400  rDecay->GetTheRadioactivityTables();
401 
402  for (size_t i = 0 ; i < theTables.size(); i++) {
403  G4double rate, error;
404  outfile << "Radioactivities in decay window no. " << i << G4endl;
405  outfile << "Z \tA \tE \tActivity (decays/window) \tError (decays/window) "
406  << G4endl;
407 
408  map<G4ThreeVector,G4TwoVector> *aMap = theTables[i]->GetTheMap();
409  map<G4ThreeVector,G4TwoVector>::iterator iter;
410  for (iter=aMap->begin(); iter != aMap->end(); iter++) {
411  rate = iter->second.x()/nevent;
412  error = std::sqrt(iter->second.y())/nevent;
413  if (rate < 0.) rate = 0.; // statically it can be < 0.
414  outfile << iter->first.x() <<"\t"<< iter->first.y() <<"\t"
415  << iter->first.z() << "\t" << rate <<"\t" << error << G4endl;
416  }
417  outfile << G4endl;
418  }
419  outfile.close();
420 }
G4VProcess * FindProcess(const G4String &processName, const G4String &particleName) const
std::vector< G4RadioactivityTable * > GetTheRadioactivityTables()
#define G4endl
Definition: G4ios.hh:61
static PROLOG_HANDLER error
Definition: xmlrole.cc:112
double G4double
Definition: G4Types.hh:76
static G4ProcessTable * GetProcessTable()
Int_t nevent
Here is the call graph for this function:
Here is the caller graph for this function:

Friends And Related Function Documentation

◆ RunMerger

friend class RunMerger
friend

Member Data Documentation

◆ aDummyCounter

G4int Run::aDummyCounter
private

◆ EdLeak

G4double Run::EdLeak[3]
private

Definition at line 74 of file advanced/amsEcal/include/Run.hh.

◆ Eleak

G4double Run::Eleak
private

Definition at line 73 of file advanced/amsEcal/include/Run.hh.

◆ Eleak2

G4double Run::Eleak2
private

Definition at line 73 of file advanced/amsEcal/include/Run.hh.

◆ Etot2Calor

G4double Run::Etot2Calor
private

Definition at line 71 of file advanced/amsEcal/include/Run.hh.

◆ Etot2Layer

std::vector<G4double> Run::Etot2Layer
private

Definition at line 68 of file advanced/amsEcal/include/Run.hh.

◆ EtotCalor

G4double Run::EtotCalor
private

Definition at line 71 of file advanced/amsEcal/include/Run.hh.

◆ EtotLayer

std::vector<G4double> Run::EtotLayer
private

Definition at line 68 of file advanced/amsEcal/include/Run.hh.

◆ Evis2Calor

G4double Run::Evis2Calor
private

Definition at line 72 of file advanced/amsEcal/include/Run.hh.

◆ Evis2Layer

std::vector<G4double> Run::Evis2Layer
private

Definition at line 69 of file advanced/amsEcal/include/Run.hh.

◆ EvisCalor

G4double Run::EvisCalor
private

Definition at line 72 of file advanced/amsEcal/include/Run.hh.

◆ EvisLayer

std::vector<G4double> Run::EvisLayer
private

Definition at line 69 of file advanced/amsEcal/include/Run.hh.

◆ f_dEdL

MyVector Run::f_dEdL
private

◆ f_dEdR

MyVector Run::f_dEdR
private

◆ f_e_gam_sync

G4double Run::f_e_gam_sync

◆ f_e_gam_sync2

G4double Run::f_e_gam_sync2

◆ f_e_gam_sync_max

G4double Run::f_e_gam_sync_max

◆ f_lam_gam_sync

G4double Run::f_lam_gam_sync

◆ f_n_gam_sync

G4int Run::f_n_gam_sync

◆ f_nLbin

G4int Run::f_nLbin
private

◆ f_nRbin

G4int Run::f_nRbin
private

◆ fApplyLimit

G4bool Run::fApplyLimit
private

◆ fCavityRadius

G4double Run::fCavityRadius
private

Definition at line 109 of file extended/medical/fanoCavity/include/Run.hh.

◆ fCavityThickness

G4double Run::fCavityThickness
private

Definition at line 108 of file extended/medical/fanoCavity/include/Run.hh.

◆ fChargedStep

G4double Run::fChargedStep
private

◆ fChargTrLength

G4double Run::fChargTrLength
private

◆ fCluster

G4double Run::fCluster
private

◆ fCsdaRange

G4double Run::fCsdaRange
private

◆ fDecayCount

G4int Run::fDecayCount
private

◆ fDensityCavity

G4double Run::fDensityCavity
private

Definition at line 113 of file extended/medical/fanoCavity/include/Run.hh.

◆ fDensityWall

G4double Run::fDensityWall
private

Definition at line 106 of file extended/medical/fanoCavity/include/Run.hh.

◆ fDet

DetectorConstruction* Run::fDet
private

◆ fDetector [1/2]

DetectorConstruction * Run::fDetector
private

Definition at line 63 of file advanced/amsEcal/include/Run.hh.

◆ fDetector [2/2]

const DetectorConstruction* Run::fDetector
private

Definition at line 67 of file extended/medical/dna/range/include/Run.hh.

◆ fDr

G4double Run::fDr
private

◆ fEdep [1/2]

G4double Run::fEdep
private

◆ fEdep [2/2]

G4StatDouble Run::fEdep
private

◆ fEdepCavity

G4double Run::fEdepCavity
private

Definition at line 92 of file extended/medical/fanoCavity/include/Run.hh.

◆ fEdepCavity2

G4double Run::fEdepCavity2
private

Definition at line 92 of file extended/medical/fanoCavity/include/Run.hh.

◆ fEdepDetect

G4double Run::fEdepDetect
private

◆ fEdepDetect2

G4double Run::fEdepDetect2
private

◆ fEdeposit

G4double Run::fEdeposit
private

◆ fEdeposit2

G4double Run::fEdeposit2
private

◆ fEdepTarget

G4double Run::fEdepTarget
private

◆ fEdepTarget2

G4double Run::fEdepTarget2
private

◆ fEdeptrue

G4double Run::fEdeptrue[MaxAbsor]
private

◆ fEgas

G4DataVector Run::fEgas
private

◆ fEkin

G4double Run::fEkin
private

Definition at line 65 of file advanced/amsEcal/include/Run.hh.

◆ fEkinTot

G4double Run::fEkinTot[3]
private

◆ fElIonPair

G4ElectronIonPair* Run::fElIonPair
private

◆ fEnerFlowCavity

G4double Run::fEnerFlowCavity
private

Definition at line 91 of file extended/medical/fanoCavity/include/Run.hh.

◆ fEnergy

G4double Run::fEnergy
private

◆ fEnergyDeposit [1/2]

G4double Run::fEnergyDeposit
private

◆ fEnergyDeposit [2/2]

G4double Run::fEnergyDeposit
private

◆ fEnergyDeposit2

G4double Run::fEnergyDeposit2
private

◆ fEnergyFlow [1/2]

std::vector<G4double> Run::fEnergyFlow
private

◆ fEnergyFlow [2/2]

G4double Run::fEnergyFlow
private

Definition at line 82 of file extended/hadronic/Hadr06/include/Run.hh.

◆ fEnergyFlow2

G4double Run::fEnergyFlow2
private

Definition at line 82 of file extended/hadronic/Hadr06/include/Run.hh.

◆ fEnergyGun

G4double Run::fEnergyGun
private

Definition at line 97 of file extended/medical/fanoCavity2/include/Run.hh.

◆ fEnergyLeak

G4double Run::fEnergyLeak[2]
private

◆ fEnergyLeak2

G4double Run::fEnergyLeak2[2]
private

◆ fEnTransfer

G4double Run::fEnTransfer
private

◆ fEsecondary

G4double Run::fEsecondary
private

Definition at line 87 of file extended/medical/fanoCavity/include/Run.hh.

◆ fEsecondary2

G4double Run::fEsecondary2
private

Definition at line 87 of file extended/medical/fanoCavity/include/Run.hh.

◆ fEventTime

G4double Run::fEventTime[3]
private

◆ fEvisEvent

G4double Run::fEvisEvent[3]
private

◆ fEvt

G4double Run::fEvt
private

◆ fFactorALICE

G4double Run::fFactorALICE
private

◆ fGammaCount

G4int Run::fGammaCount
private

Definition at line 95 of file extended/hadronic/Hadr03/include/Run.hh.

◆ fIsMaster

G4bool Run::fIsMaster
private

Definition at line 100 of file extended/medical/fanoCavity2/include/Run.hh.

◆ fKin

PrimaryGeneratorAction* Run::fKin
private

◆ fKinematic

PrimaryGeneratorAction * Run::fKinematic
private

Definition at line 84 of file extended/medical/fanoCavity/include/Run.hh.

◆ fLateralEleak

std::vector<G4double> Run::fLateralEleak
private

◆ fLimittrue

G4double Run::fLimittrue[MaxAbsor]
private

◆ fluence

std::vector<G4double> Run::fluence
private

◆ fluence1

std::vector<G4double> Run::fluence1
private

◆ fluence2

std::vector<G4double> Run::fluence2
private

◆ fMassCavity

G4double Run::fMassCavity
private

Definition at line 114 of file extended/medical/fanoCavity/include/Run.hh.

◆ fMassWall

G4double Run::fMassWall
private

Definition at line 98 of file extended/medical/fanoCavity2/include/Run.hh.

◆ fMateCavity

G4Material* Run::fMateCavity
private

Definition at line 112 of file extended/medical/fanoCavity/include/Run.hh.

◆ fMateWall

G4Material* Run::fMateWall
private

Definition at line 105 of file extended/medical/fanoCavity/include/Run.hh.

◆ fMaxEnergy

G4double Run::fMaxEnergy
private

◆ fMeanCluster

G4double Run::fMeanCluster
private

◆ fMscEntryCentral

G4int Run::fMscEntryCentral
private

◆ fMscProjecTheta

G4double Run::fMscProjecTheta
private

◆ fMscProjecTheta2

G4double Run::fMscProjecTheta2
private

◆ fMscThetaCentral

G4double Run::fMscThetaCentral
private

◆ fN_elec

G4int Run::fN_elec
private

◆ fN_gamma

G4int Run::fN_gamma
private

◆ fN_pos

G4int Run::fN_pos
private

◆ fNbBins

G4int Run::fNbBins
private

◆ fNbElect

G4int Run::fNbElect
private

◆ fNbEntries

std::vector<G4int> Run::fNbEntries
private

◆ fNbEventCavity

G4long Run::fNbEventCavity
private

Definition at line 94 of file extended/medical/fanoCavity/include/Run.hh.

◆ fNbGamma

G4int Run::fNbGamma
private

◆ fNbInelastic

G4double Run::fNbInelastic
private

Definition at line 72 of file extended/medical/dna/wvalue/include/Run.hh.

◆ fNbInelastic2

G4double Run::fNbInelastic2
private

Definition at line 72 of file extended/medical/dna/wvalue/include/Run.hh.

◆ fNbins

G4int Run::fNbins
private

◆ fNbOfSteps

G4int Run::fNbOfSteps
private

◆ fNbOfSteps0

G4int Run::fNbOfSteps0
private

◆ fNbOfSteps1

G4int Run::fNbOfSteps1
private

◆ fNbOfSteps2

G4int Run::fNbOfSteps2
private

◆ fNbOfTraks0

G4int Run::fNbOfTraks0
private

◆ fNbOfTraks1

G4int Run::fNbOfTraks1
private

◆ fNbPosit

G4int Run::fNbPosit
private

◆ fNbSec

G4long Run::fNbSec
private

Definition at line 88 of file extended/medical/fanoCavity/include/Run.hh.

◆ fNbStep1

G4int Run::fNbStep1
private

Definition at line 83 of file extended/hadronic/Hadr04/include/Run.hh.

◆ fNbStep2

G4int Run::fNbStep2
private

Definition at line 83 of file extended/hadronic/Hadr04/include/Run.hh.

◆ fNbStepCavity

G4long Run::fNbStepCavity
private

Definition at line 100 of file extended/medical/fanoCavity/include/Run.hh.

◆ fNbStepsCharged

G4double Run::fNbStepsCharged
private

◆ fNbStepsCharged2

G4double Run::fNbStepsCharged2
private

◆ fNbStepsNeutral

G4double Run::fNbStepsNeutral
private

◆ fNbStepsNeutral2

G4double Run::fNbStepsNeutral2
private

◆ fNbStepWall

G4long Run::fNbStepWall
private

Definition at line 100 of file extended/medical/fanoCavity/include/Run.hh.

◆ fNeutralStep

G4double Run::fNeutralStep
private

◆ fNeutrTrLength

G4double Run::fNeutrTrLength
private

◆ fNuclChannelMap

std::map<G4String,NuclChannel> Run::fNuclChannelMap
private

Definition at line 99 of file extended/hadronic/Hadr03/include/Run.hh.

◆ fOldDose

G4double Run::fOldDose
private

Definition at line 96 of file extended/medical/fanoCavity/include/Run.hh.

◆ fOldEmean

G4double Run::fOldEmean
private

Definition at line 96 of file extended/medical/fanoCavity/include/Run.hh.

◆ fOverflow

G4double Run::fOverflow
private

◆ fParam

TestParameters* Run::fParam
private

◆ fPartFlowCavity

G4long Run::fPartFlowCavity
private

Definition at line 90 of file extended/medical/fanoCavity/include/Run.hh.

◆ fParticle

G4ParticleDefinition * Run::fParticle
private

Definition at line 64 of file advanced/amsEcal/include/Run.hh.

◆ fParticleDataMap

std::map< G4String, ParticleData > Run::fParticleDataMap
private

Definition at line 100 of file extended/hadronic/Hadr03/include/Run.hh.

◆ fParticleDataMap1

std::map< G4String, ParticleData > Run::fParticleDataMap1
private

Definition at line 84 of file extended/hadronic/Hadr06/include/Run.hh.

◆ fParticleDataMap2

std::map< G4String, ParticleData > Run::fParticleDataMap2
private

Definition at line 85 of file extended/hadronic/Hadr06/include/Run.hh.

◆ fPbalance

G4double Run::fPbalance
private

Definition at line 103 of file extended/hadronic/Hadr03/include/Run.hh.

◆ fPenetration

G4double Run::fPenetration
private

Definition at line 74 of file extended/medical/dna/range/include/Run.hh.

◆ fPenetration2

G4double Run::fPenetration2
private

Definition at line 74 of file extended/medical/dna/range/include/Run.hh.

◆ fPrimaryTime

G4double Run::fPrimaryTime
private

◆ fProcCounter [1/2]

ProcessesCount * Run::fProcCounter
private

◆ fProcCounter [2/2]

ProcessesCount* Run::fProcCounter
private

Definition at line 85 of file extended/medical/fanoCavity/include/Run.hh.

◆ fProcCounter1

std::map<G4String,G4int> Run::fProcCounter1
private

◆ fProcCounter2

std::map<G4String,G4int> Run::fProcCounter2
private

◆ fProjRange

G4double Run::fProjRange
private

◆ fProjRange2

G4double Run::fProjRange2
private

◆ fReflect

G4int Run::fReflect[2]
private

◆ fRmstrue

G4double Run::fRmstrue[MaxAbsor]
private

◆ fStatus

G4int Run::fStatus[3]
private

◆ fStepCavity

G4double Run::fStepCavity
private

Definition at line 99 of file extended/medical/fanoCavity/include/Run.hh.

◆ fStepCavity2

G4double Run::fStepCavity2
private

Definition at line 99 of file extended/medical/fanoCavity/include/Run.hh.

◆ fStepGas

G4double Run::fStepGas
private

◆ fStepSize

G4double Run::fStepSize
private

◆ fStepSize2

G4double Run::fStepSize2
private

◆ fStepWall

G4double Run::fStepWall
private

Definition at line 98 of file extended/medical/fanoCavity/include/Run.hh.

◆ fStepWall2

G4double Run::fStepWall2
private

Definition at line 98 of file extended/medical/fanoCavity/include/Run.hh.

◆ fSum2ChargTrLength

G4double Run::fSum2ChargTrLength
private

◆ fSum2EAbs

G4double Run::fSum2EAbs[MaxAbsor]
private

◆ fSum2LAbs

G4double Run::fSum2LAbs[MaxAbsor]
private

◆ fSum2NeutrTrLength

G4double Run::fSum2NeutrTrLength
private

◆ fSumChargTrLength

G4double Run::fSumChargTrLength
private

◆ fSumE2Longit

MyVector Run::fSumE2Longit
private

◆ fSumE2LongitCumul

MyVector Run::fSumE2LongitCumul
private

◆ fSumE2Radial

MyVector Run::fSumE2Radial
private

◆ fSumE2RadialCumul

MyVector Run::fSumE2RadialCumul
private

◆ fSumEAbs

G4double Run::fSumEAbs[MaxAbsor]
private

◆ fSumELongit

MyVector Run::fSumELongit
private

◆ fSumELongitCumul

MyVector Run::fSumELongitCumul
private

◆ fSumERadial

MyVector Run::fSumERadial
private

◆ fSumERadialCumul

MyVector Run::fSumERadialCumul
private

◆ fSumLAbs

G4double Run::fSumLAbs[MaxAbsor]
private

◆ fSumNeutrTrLength

G4double Run::fSumNeutrTrLength
private

◆ fSumTrack

G4double Run::fSumTrack
private

◆ fSumTrack2

G4double Run::fSumTrack2
private

◆ fSurfaceCavity

G4double Run::fSurfaceCavity
private

Definition at line 110 of file extended/medical/fanoCavity/include/Run.hh.

◆ fTargetXXX

G4bool Run::fTargetXXX
private

Definition at line 102 of file extended/hadronic/Hadr03/include/Run.hh.

◆ fTime1

G4double Run::fTime1
private

Definition at line 85 of file extended/hadronic/Hadr04/include/Run.hh.

◆ fTime2

G4double Run::fTime2
private

Definition at line 85 of file extended/hadronic/Hadr04/include/Run.hh.

◆ fTimeCount

G4int Run::fTimeCount
private

◆ fTotalCount

G4int Run::fTotalCount
private

◆ fTotCluster

G4double Run::fTotCluster
private

◆ fTotEdep

G4double Run::fTotEdep
private

◆ fTotStepGas

G4double Run::fTotStepGas
private

◆ fTrackLen

G4double Run::fTrackLen
private

◆ fTrackLen1

G4double Run::fTrackLen1
private

Definition at line 84 of file extended/hadronic/Hadr04/include/Run.hh.

◆ fTrackLen2

G4double Run::fTrackLen2
private

◆ fTrakLenCharged

G4double Run::fTrakLenCharged
private

◆ fTrakLenCharged2

G4double Run::fTrakLenCharged2
private

◆ fTrakLenNeutral

G4double Run::fTrakLenNeutral
private

◆ fTrakLenNeutral2

G4double Run::fTrakLenNeutral2
private

◆ fTransmit

G4int Run::fTransmit[2]
private

◆ fTransvDev

G4double Run::fTransvDev
private

◆ fTransvDev2

G4double Run::fTransvDev2
private

◆ fTrkSegmCavity

G4double Run::fTrkSegmCavity
private

Definition at line 93 of file extended/medical/fanoCavity/include/Run.hh.

◆ fTrueRange

G4double Run::fTrueRange
private

◆ fTrueRange2

G4double Run::fTrueRange2
private

◆ fVerbose

G4int Run::fVerbose
private

◆ fVolumeCavity

G4double Run::fVolumeCavity
private

Definition at line 111 of file extended/medical/fanoCavity/include/Run.hh.

◆ fWallRadius

G4double Run::fWallRadius
private

Definition at line 104 of file extended/medical/fanoCavity/include/Run.hh.

◆ fWallThickness

G4double Run::fWallThickness
private

Definition at line 103 of file extended/medical/fanoCavity/include/Run.hh.

◆ fWidthALICE

G4double Run::fWidthALICE
private

◆ fXfrontNorm

G4double Run::fXfrontNorm[MaxAbsor]
private

◆ kLayerMax

G4int Run::kLayerMax
private

Definition at line 67 of file advanced/amsEcal/include/Run.hh.

◆ nbOfLayers

G4int Run::nbOfLayers
private

Definition at line 67 of file advanced/amsEcal/include/Run.hh.

◆ nbOfModules

G4int Run::nbOfModules
private

Definition at line 67 of file advanced/amsEcal/include/Run.hh.


The documentation for this class was generated from the following files: