Geant4  10.03.p02
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Par02PhysicsList Class Reference

#include <Par02PhysicsList.hh>

Inheritance diagram for Par02PhysicsList:
Collaboration diagram for Par02PhysicsList:

Public Member Functions

 Par02PhysicsList ()
 A default constructor. Sets the default cut value. More...
 
virtual ~Par02PhysicsList ()
 
- Public Member Functions inherited from G4VUserPhysicsList
 G4VUserPhysicsList ()
 
virtual ~G4VUserPhysicsList ()
 
 G4VUserPhysicsList (const G4VUserPhysicsList &)
 
G4VUserPhysicsListoperator= (const G4VUserPhysicsList &)
 
void Construct ()
 
void UseCoupledTransportation (G4bool vl=true)
 
void SetDefaultCutValue (G4double newCutValue)
 
G4double GetDefaultCutValue () const
 
void BuildPhysicsTable ()
 
void PreparePhysicsTable (G4ParticleDefinition *)
 
void BuildPhysicsTable (G4ParticleDefinition *)
 
G4bool StorePhysicsTable (const G4String &directory=".")
 
G4bool IsPhysicsTableRetrieved () const
 
G4bool IsStoredInAscii () const
 
const G4StringGetPhysicsTableDirectory () const
 
void SetPhysicsTableRetrieved (const G4String &directory="")
 
void SetStoredInAscii ()
 
void ResetPhysicsTableRetrieved ()
 
void ResetStoredInAscii ()
 
void DumpList () const
 
void DumpCutValuesTable (G4int flag=1)
 
void DumpCutValuesTableIfRequested ()
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
void SetCutsWithDefault ()
 
void SetCutValue (G4double aCut, const G4String &pname)
 
G4double GetCutValue (const G4String &pname) const
 
void SetCutValue (G4double aCut, const G4String &pname, const G4String &rname)
 
void SetParticleCuts (G4double cut, G4ParticleDefinition *particle, G4Region *region=0)
 
void SetParticleCuts (G4double cut, const G4String &particleName, G4Region *region=0)
 
void SetCutsForRegion (G4double aCut, const G4String &rname)
 
void ResetCuts ()
 obsolete methods More...
 
void SetApplyCuts (G4bool value, const G4String &name)
 
G4bool GetApplyCuts (const G4String &name) const
 
void RemoveProcessManager ()
 
void AddProcessManager (G4ParticleDefinition *newParticle, G4ProcessManager *newManager=0)
 
void CheckParticleList ()
 
void DisableCheckParticleList ()
 
G4int GetInstanceID () const
 
void InitializeWorker ()
 

Protected Member Functions

virtual void ConstructParticle ()
 Constructs particles: bosons, leptons, mesons, baryons and ions. More...
 
virtual void ConstructProcess ()
 
virtual void SetCuts ()
 Sets cuts with the default value for all particle types. More...
 
virtual void ConstructBosons ()
 Constructs bosons (including geantino) More...
 
virtual void ConstructLeptons ()
 Constructs all leptons. More...
 
virtual void ConstructMesons ()
 Constructs all mesons. More...
 
virtual void ConstructBaryons ()
 Constructs all barions. More...
 
virtual void ConstructIons ()
 Constructs light ions. More...
 
void AddParameterisation ()
 Creates a G4FastSimulationManagerProcess object for all the particle types. More...
 
virtual void ConstructGeneral ()
 Adds decay process. More...
 
virtual void AddTransportation ()
 
- Protected Member Functions inherited from G4VUserPhysicsList
void AddTransportation ()
 
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
 
void BuildIntegralPhysicsTable (G4VProcess *, G4ParticleDefinition *)
 
virtual void RetrievePhysicsTable (G4ParticleDefinition *, const G4String &directory, G4bool ascii=false)
 
void InitializeProcessManager ()
 
G4ParticleTable::G4PTblDicIteratorGetParticleIterator () const
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VUserPhysicsList
static const G4VUPLManagerGetSubInstanceManager ()
 
- Protected Attributes inherited from G4VUserPhysicsList
G4ParticleTabletheParticleTable
 
G4int verboseLevel
 
G4double defaultCutValue
 
G4bool isSetDefaultCutValue
 
G4ProductionCutsTablefCutsTable
 
G4bool fRetrievePhysicsTable
 
G4bool fStoredInAscii
 
G4bool fIsCheckedForRetrievePhysicsTable
 
G4bool fIsRestoredCutValues
 
G4String directoryPhysicsTable
 
G4bool fDisableCheckParticleList
 
G4int g4vuplInstanceID
 
- Static Protected Attributes inherited from G4VUserPhysicsList
static G4RUN_DLL G4VUPLManager subInstanceManager
 

Detailed Description

Construction of a physics list.

A mandatory initialization class of the physics list. For the purposes of fast simulation, only transportation, decays and parametrisation is used. Based on G4 examples/extended/parametrisations/Par01/include/Par01PhysicsList.hh .

Author
Anna Zaborowska

Definition at line 45 of file Par02PhysicsList.hh.

Constructor & Destructor Documentation

Par02PhysicsList::Par02PhysicsList ( )

A default constructor. Sets the default cut value.

Definition at line 71 of file Par02PhysicsList.cc.

71  : G4VUserPhysicsList() {
72  SetVerboseLevel( 1 );
73  defaultCutValue = 0.1*m;
74 }
static constexpr double m
Definition: G4SIunits.hh:129
void SetVerboseLevel(G4int value)

Here is the call graph for this function:

Par02PhysicsList::~Par02PhysicsList ( )
virtual

Definition at line 78 of file Par02PhysicsList.cc.

78 {}

Member Function Documentation

void Par02PhysicsList::AddParameterisation ( )
protected

Creates a G4FastSimulationManagerProcess object for all the particle types.

Definition at line 165 of file Par02PhysicsList.cc.

165  {
166  G4FastSimulationManagerProcess* fastSimProcess =
167  new G4FastSimulationManagerProcess( "G4FSMP" );
168 
169  // Registers the fastSimProcess with all the particles as a discrete and
170  // continuous process (this works in all cases; in the case that parallel
171  // geometries are not used, as in this example, it would be enough to
172  // add it as a discrete process).
174  particleIterator->reset();
175  while ( (*particleIterator)() ) {
176  G4ParticleDefinition* particle = particleIterator->value();
177  G4ProcessManager* pmanager = particle->GetProcessManager();
178  //pmanager->AddDiscreteProcess( fastSimProcess ); // No parallel geometry
179  pmanager->AddProcess( fastSimProcess, -1, 0, 0 ); // General
180  }
181 }
G4int AddProcess(G4VProcess *aProcess, G4int ordAtRestDoIt=ordInActive, G4int ordAlongSteptDoIt=ordInActive, G4int ordPostStepDoIt=ordInActive)
G4ProcessManager * GetProcessManager() const
std::vector< G4InuclElementaryParticle >::iterator particleIterator
Definition: G4BigBanger.cc:65
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::AddTransportation ( )
protectedvirtual

Adds the particle transport. G4CoupledTransportation is used to allow the calculation of the expected position of the particle within a G4VFastSimulationModel.

Definition at line 140 of file Par02PhysicsList.cc.

140  {
141  //UseCoupledTransportation();
143 }

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructBaryons ( )
protectedvirtual

Constructs all barions.

Definition at line 118 of file Par02PhysicsList.cc.

118  {
119  G4BaryonConstructor pConstructor;
120  pConstructor.ConstructParticle();
121 }
static void ConstructParticle()

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructBosons ( )
protectedvirtual

Constructs bosons (including geantino)

Definition at line 95 of file Par02PhysicsList.cc.

95  {
100 }
static G4Geantino * GeantinoDefinition()
Definition: G4Geantino.cc:82
static G4ChargedGeantino * ChargedGeantinoDefinition()
static G4OpticalPhoton * OpticalPhotonDefinition()
static G4Gamma * GammaDefinition()
Definition: G4Gamma.cc:81

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructGeneral ( )
protectedvirtual

Adds decay process.

Definition at line 147 of file Par02PhysicsList.cc.

147  {
148  G4Decay* theDecayProcess = new G4Decay();
150  particleIterator->reset();
151  while ( (*particleIterator)() ) {
152  G4ParticleDefinition* particle = particleIterator->value();
153  G4ProcessManager* pmanager = particle->GetProcessManager();
154  if ( theDecayProcess->IsApplicable( *particle ) ) {
155  pmanager->AddProcess( theDecayProcess );
156  // set ordering for PostStepDoIt and AtRestDoIt
157  pmanager->SetProcessOrdering( theDecayProcess, idxPostStep );
158  pmanager->SetProcessOrdering( theDecayProcess, idxAtRest );
159  }
160  }
161 }
virtual G4bool IsApplicable(const G4ParticleDefinition &)
Definition: G4Decay.cc:89
G4int AddProcess(G4VProcess *aProcess, G4int ordAtRestDoIt=ordInActive, G4int ordAlongSteptDoIt=ordInActive, G4int ordPostStepDoIt=ordInActive)
void SetProcessOrdering(G4VProcess *aProcess, G4ProcessVectorDoItIndex idDoIt, G4int ordDoIt=ordDefault)
G4ProcessManager * GetProcessManager() const
std::vector< G4InuclElementaryParticle >::iterator particleIterator
Definition: G4BigBanger.cc:65
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructIons ( )
protectedvirtual

Constructs light ions.

Definition at line 125 of file Par02PhysicsList.cc.

125  {
126  G4IonConstructor pConstructor;
127  pConstructor.ConstructParticle();
128 }
static void ConstructParticle()

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructLeptons ( )
protectedvirtual

Constructs all leptons.

Definition at line 104 of file Par02PhysicsList.cc.

104  {
105  G4LeptonConstructor pConstructor;
106  pConstructor.ConstructParticle();
107 }
static void ConstructParticle()

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructMesons ( )
protectedvirtual

Constructs all mesons.

Definition at line 111 of file Par02PhysicsList.cc.

111  {
112  G4MesonConstructor pConstructor;
113  pConstructor.ConstructParticle();
114 }
static void ConstructParticle()

Here is the call graph for this function:

Here is the caller graph for this function:

void Par02PhysicsList::ConstructParticle ( void  )
protectedvirtual

Constructs particles: bosons, leptons, mesons, baryons and ions.

Implements G4VUserPhysicsList.

Definition at line 82 of file Par02PhysicsList.cc.

82  {
83  // In this method, static member functions should be called for all particles
84  // which you want to use.
85  // This ensures that objects of these particle types will be created in the program.
90  ConstructIons();
91 }
virtual void ConstructBaryons()
Constructs all barions.
virtual void ConstructLeptons()
Constructs all leptons.
virtual void ConstructMesons()
Constructs all mesons.
virtual void ConstructBosons()
Constructs bosons (including geantino)
virtual void ConstructIons()
Constructs light ions.

Here is the call graph for this function:

void Par02PhysicsList::ConstructProcess ( void  )
protectedvirtual

Constructs physics processes: particle transportation, decays, parametrisation (for the purpose of fast parametric simulation).

Implements G4VUserPhysicsList.

Definition at line 132 of file Par02PhysicsList.cc.

132  {
136 }
void AddParameterisation()
Creates a G4FastSimulationManagerProcess object for all the particle types.
virtual void ConstructGeneral()
Adds decay process.
virtual void AddTransportation()

Here is the call graph for this function:

void Par02PhysicsList::SetCuts ( )
protectedvirtual

Sets cuts with the default value for all particle types.

Reimplemented from G4VUserPhysicsList.

Definition at line 185 of file Par02PhysicsList.cc.

185  {
186  if ( verboseLevel > 1 ) {
187  G4cout << "Par02PhysicsList::SetCuts:";
188  }
190 }
G4GLOB_DLL std::ostream G4cout

Here is the call graph for this function:


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