ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4VHadronPhysics Class Reference

#include <geant4/tree/geant4-10.6-release/source/physics_lists/constructors/hadron_inelastic/include/G4VHadronPhysics.hh>

+ Inheritance diagram for G4VHadronPhysics:
+ Collaboration diagram for G4VHadronPhysics:

Public Member Functions

 G4VHadronPhysics (const G4String &name="hInelastic", G4int verbose=0)
 
virtual ~G4VHadronPhysics ()
 
virtual void ConstructParticle ()
 
G4HadronicInteraction * BuildModel (G4VHadronModelBuilder *, G4double emin, G4double emax)
 
G4HadronicInteraction * NewModel (G4HadronicInteraction *, G4double emin, G4double emax)
 
void AddInelasticCrossSection (const G4String &, G4VCrossSectionDataSet *)
 
void AddInelasticCrossSection (const G4ParticleDefinition *, G4VCrossSectionDataSet *)
 
void AddElasticCrossSection (const G4String &, G4VCrossSectionDataSet *)
 
void AddElasticCrossSection (const G4ParticleDefinition *, G4VCrossSectionDataSet *)
 
void AddCaptureCrossSection (G4VCrossSectionDataSet *)
 
void AddFissionCrossSection (G4VCrossSectionDataSet *)
 
G4CrossSectionInelastic * InelasticXS (const G4String &componentName)
 
- Public Member Functions inherited from G4VPhysicsConstructor
 G4VPhysicsConstructor (const G4String &="")
 
 G4VPhysicsConstructor (const G4String &name, G4int physics_type)
 
virtual ~G4VPhysicsConstructor ()
 
virtual void ConstructProcess ()=0
 
void SetPhysicsName (const G4String &="")
 
const G4String & GetPhysicsName () const
 
void SetPhysicsType (G4int)
 
G4int GetPhysicsType () const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
G4int GetInstanceID () const
 
virtual void TerminateWorker ()
 

Protected Member Functions

G4HadronicProcess * FindInelasticProcess (const G4String &)
 
G4HadronicProcess * FindInelasticProcess (const G4ParticleDefinition *)
 
G4HadronicProcess * FindElasticProcess (const G4String &)
 
G4HadronicProcess * FindElasticProcess (const G4ParticleDefinition *)
 
G4HadronicProcess * FindCaptureProcess ()
 
G4HadronicProcess * FindFissionProcess ()
 
- Protected Member Functions inherited from G4VPhysicsConstructor
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
 
G4ParticleTable::G4PTblDicIterator * GetParticleIterator () const
 
PhysicsBuilder_V GetBuilders () const
 
void AddBuilder (G4PhysicsBuilderInterface *bld)
 

Private Member Functions

 G4VHadronPhysics (G4VHadronPhysics &)
 
G4VHadronPhysics & operator= (const G4VHadronPhysics &right)
 

Static Private Attributes

static G4ThreadLocal
std::vector
< G4VHadronModelBuilder * > * 
builders = nullptr
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VPhysicsConstructor
static const G4VPCManager & GetSubInstanceManager ()
 
- Protected Types inherited from G4VPhysicsConstructor
using PhysicsBuilder_V = G4VPCData::PhysicsBuilders_V
 
- Protected Attributes inherited from G4VPhysicsConstructor
G4int verboseLevel
 
G4String namePhysics
 
G4int typePhysics
 
G4ParticleTable * theParticleTable
 
G4int g4vpcInstanceID
 
- Static Protected Attributes inherited from G4VPhysicsConstructor
static G4RUN_DLL G4VPCManager subInstanceManager
 

Detailed Description

Definition at line 51 of file G4VHadronPhysics.hh.

View newest version in sPHENIX GitHub at line 51 of file G4VHadronPhysics.hh

Constructor & Destructor Documentation

G4VHadronPhysics::G4VHadronPhysics ( const G4String &  name = "hInelastic",
G4int  verbose = 0 
)

Definition at line 59 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 59 of file G4VHadronPhysics.cc

References G4cout, G4endl, G4VPhysicsConstructor::SetVerboseLevel(), and G4VPhysicsConstructor::verboseLevel.

+ Here is the call graph for this function:

G4VHadronPhysics::~G4VHadronPhysics ( )
virtual

Definition at line 69 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 69 of file G4VHadronPhysics.cc

References builders, and n.

G4VHadronPhysics::G4VHadronPhysics ( G4VHadronPhysics &  )
private

Member Function Documentation

void G4VHadronPhysics::AddCaptureCrossSection ( G4VCrossSectionDataSet *  xsec)

Definition at line 190 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 190 of file G4VHadronPhysics.cc

References G4HadronicProcess::AddDataSet(), FindCaptureProcess(), G4cout, G4endl, and G4VPhysicsConstructor::verboseLevel.

+ Here is the call graph for this function:

void G4VHadronPhysics::AddElasticCrossSection ( const G4String &  pname,
G4VCrossSectionDataSet *  xsec 
)

Definition at line 161 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 161 of file G4VHadronPhysics.cc

References G4ParticleTable::FindParticle(), G4cout, G4endl, and G4ParticleTable::GetParticleTable().

+ Here is the call graph for this function:

void G4VHadronPhysics::AddElasticCrossSection ( const G4ParticleDefinition *  p,
G4VCrossSectionDataSet *  xsec 
)

Definition at line 175 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 175 of file G4VHadronPhysics.cc

References G4HadronicProcess::AddDataSet(), FindElasticProcess(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), and G4VPhysicsConstructor::verboseLevel.

+ Here is the call graph for this function:

void G4VHadronPhysics::AddFissionCrossSection ( G4VCrossSectionDataSet *  xsec)

Definition at line 203 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 203 of file G4VHadronPhysics.cc

References G4HadronicProcess::AddDataSet(), FindFissionProcess(), G4cout, G4endl, and G4VPhysicsConstructor::verboseLevel.

+ Here is the call graph for this function:

void G4VHadronPhysics::AddInelasticCrossSection ( const G4String &  pname,
G4VCrossSectionDataSet *  xsec 
)

Definition at line 132 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 132 of file G4VHadronPhysics.cc

References G4ParticleTable::FindParticle(), G4cout, G4endl, and G4ParticleTable::GetParticleTable().

+ Here is the call graph for this function:

void G4VHadronPhysics::AddInelasticCrossSection ( const G4ParticleDefinition *  p,
G4VCrossSectionDataSet *  xsec 
)

Definition at line 146 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 146 of file G4VHadronPhysics.cc

References G4HadronicProcess::AddDataSet(), FindInelasticProcess(), G4cout, G4endl, G4ParticleDefinition::GetParticleName(), and G4VPhysicsConstructor::verboseLevel.

+ Here is the call graph for this function:

G4HadronicInteraction * G4VHadronPhysics::BuildModel ( G4VHadronModelBuilder *  mBuilder,
G4double  emin,
G4double  emax 
)

Definition at line 95 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 95 of file G4VHadronPhysics.cc

References builders, G4cout, G4endl, G4VHadronModelBuilder::GetModel(), G4HadronicInteraction::GetModelName(), GeV, G4HadronicInteraction::SetMaxEnergy(), G4HadronicInteraction::SetMinEnergy(), and G4VPhysicsConstructor::verboseLevel.

Referenced by G4HadronInelasticQBBC::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VHadronPhysics::ConstructParticle ( void  )
virtual

Implements G4VPhysicsConstructor.

Definition at line 79 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 79 of file G4VHadronPhysics.cc

References G4MesonConstructor::ConstructParticle(), G4BaryonConstructor::ConstructParticle(), G4IonConstructor::ConstructParticle(), and G4ShortLivedConstructor::ConstructParticle().

+ Here is the call graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindCaptureProcess ( )
protected

Definition at line 296 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 296 of file G4VHadronPhysics.cc

References G4ProcessManager::AddDiscreteProcess(), fCapture, G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), n, G4Neutron::Neutron(), and G4ProcessVector::size().

Referenced by AddCaptureCrossSection(), and G4HadronInelasticQBBC::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindElasticProcess ( const G4String &  pname)
protected

Definition at line 262 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 262 of file G4VHadronPhysics.cc

References G4ParticleTable::FindParticle(), G4cout, G4endl, and G4ParticleTable::GetParticleTable().

Referenced by AddElasticCrossSection(), and G4ThermalNeutrons::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindElasticProcess ( const G4ParticleDefinition *  p)
protected

Definition at line 276 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 276 of file G4VHadronPhysics.cc

References G4ProcessManager::AddDiscreteProcess(), fHadronElastic, G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), n, and G4ProcessVector::size().

+ Here is the call graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindFissionProcess ( )
protected

Definition at line 316 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 316 of file G4VHadronPhysics.cc

References G4ProcessManager::AddDiscreteProcess(), fFission, G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), n, G4Neutron::Neutron(), and G4ProcessVector::size().

Referenced by AddFissionCrossSection().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindInelasticProcess ( const G4String &  pname)
protected

Definition at line 226 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 226 of file G4VHadronPhysics.cc

References G4ParticleTable::FindParticle(), G4cout, G4endl, and G4ParticleTable::GetParticleTable().

Referenced by AddInelasticCrossSection(), and G4HadronInelasticQBBC::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4HadronicProcess * G4VHadronPhysics::FindInelasticProcess ( const G4ParticleDefinition *  p)
protected

Definition at line 240 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 240 of file G4VHadronPhysics.cc

References G4ProcessManager::AddDiscreteProcess(), fHadronInelastic, G4ParticleDefinition::GetParticleName(), G4ProcessManager::GetProcessList(), G4ParticleDefinition::GetProcessManager(), n, part, and G4ProcessVector::size().

+ Here is the call graph for this function:

G4CrossSectionInelastic * G4VHadronPhysics::InelasticXS ( const G4String &  componentName)

Definition at line 216 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 216 of file G4VHadronPhysics.cc

References G4CrossSectionDataSetRegistry::GetComponentCrossSection(), and G4CrossSectionDataSetRegistry::Instance().

Referenced by G4HadronInelasticQBBC::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4HadronicInteraction * G4VHadronPhysics::NewModel ( G4HadronicInteraction *  model,
G4double  emin,
G4double  emax 
)

Definition at line 115 of file G4VHadronPhysics.cc.

View newest version in sPHENIX GitHub at line 115 of file G4VHadronPhysics.cc

References G4cout, G4endl, G4HadronicInteraction::GetModelName(), GeV, G4HadronicInteraction::SetMaxEnergy(), G4HadronicInteraction::SetMinEnergy(), and G4VPhysicsConstructor::verboseLevel.

Referenced by G4HadronInelasticQBBC::ConstructProcess().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VHadronPhysics& G4VHadronPhysics::operator= ( const G4VHadronPhysics &  right)
private

Member Data Documentation

G4ThreadLocal std::vector< G4VHadronModelBuilder * > * G4VHadronPhysics::builders = nullptr
staticprivate

Definition at line 108 of file G4VHadronPhysics.hh.

View newest version in sPHENIX GitHub at line 108 of file G4VHadronPhysics.hh

Referenced by BuildModel(), and ~G4VHadronPhysics().


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