Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4HadronElasticPhysicsHPT Class Reference

#include <G4HadronElasticPhysicsHPT.hh>

Inheritance diagram for G4HadronElasticPhysicsHPT:

Public Member Functions

 G4HadronElasticPhysicsHPT (G4int ver=1)
virtual ~G4HadronElasticPhysicsHPT ()=default
void ConstructProcess () final
 G4HadronElasticPhysicsHPT (G4HadronElasticPhysicsHPT &)=delete
G4HadronElasticPhysicsHPToperator= (const G4HadronElasticPhysicsHPT &right)=delete
Public Member Functions inherited from G4HadronElasticPhysicsHP
 G4HadronElasticPhysicsHP (G4int ver=1)
 ~G4HadronElasticPhysicsHP () override=default
 G4HadronElasticPhysicsHP (G4HadronElasticPhysicsHP &)=delete
G4HadronElasticPhysicsHPoperator= (const G4HadronElasticPhysicsHP &right)=delete
Public Member Functions inherited from G4HadronElasticPhysics
 G4HadronElasticPhysics (G4int ver=1, const G4String &nam="hElasticWEL_CHIPS_XS")
 ~G4HadronElasticPhysics () override=default
void ConstructParticle () override
G4HadronicProcessGetElasticProcess (const G4ParticleDefinition *part) const
G4HadronElasticGetElasticModel (const G4ParticleDefinition *part) const
G4HadronicProcessGetNeutronProcess () const
G4HadronElasticGetNeutronModel () const
void AddXSection (const G4ParticleDefinition *, G4VCrossSectionDataSet *) const
 G4HadronElasticPhysics (G4HadronElasticPhysics &)=delete
G4HadronElasticPhysicsoperator= (const G4HadronElasticPhysics &right)=delete
Public Member Functions inherited from G4VPhysicsConstructor
 G4VPhysicsConstructor (const G4String &="")
 G4VPhysicsConstructor (const G4String &name, G4int physics_type)
virtual ~G4VPhysicsConstructor ()
void SetPhysicsName (const G4String &="")
const G4StringGetPhysicsName () const
void SetPhysicsType (G4int)
G4int GetPhysicsType () const
G4int GetInstanceID () const
virtual void TerminateWorker ()
void SetVerboseLevel (G4int value)
G4int GetVerboseLevel () const

Additional Inherited Members

Static Public Member Functions inherited from G4VPhysicsConstructor
static const G4VPCManagerGetSubInstanceManager ()
Protected Types inherited from G4VPhysicsConstructor
using PhysicsBuilder_V = G4VPCData::PhysicsBuilders_V
Protected Member Functions inherited from G4VPhysicsConstructor
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
G4ParticleTable::G4PTblDicIteratorGetParticleIterator () const
PhysicsBuilder_V GetBuilders () const
void AddBuilder (G4PhysicsBuilderInterface *bld)
Protected Attributes inherited from G4VPhysicsConstructor
G4int verboseLevel = 0
G4String namePhysics = ""
G4int typePhysics = 0
G4ParticleTabletheParticleTable = nullptr
G4int g4vpcInstanceID = 0
Static Protected Attributes inherited from G4VPhysicsConstructor
static G4RUN_DLL G4VPCManager subInstanceManager

Detailed Description

Definition at line 51 of file G4HadronElasticPhysicsHPT.hh.

Constructor & Destructor Documentation

◆ G4HadronElasticPhysicsHPT() [1/2]

G4HadronElasticPhysicsHPT::G4HadronElasticPhysicsHPT ( G4int ver = 1)
explicit

Definition at line 60 of file G4HadronElasticPhysicsHPT.cc.

61 if ( ver > 1 ) G4cout << "### G4HadronElasticPhysicsHPT: " << GetPhysicsName() << G4endl;
62}
#define G4endl
Definition G4ios.hh:67
G4GLOB_DLL std::ostream G4cout
const G4String & GetPhysicsName() const

Referenced by G4HadronElasticPhysicsHPT(), and operator=().

◆ ~G4HadronElasticPhysicsHPT()

virtual G4HadronElasticPhysicsHPT::~G4HadronElasticPhysicsHPT ( )
virtualdefault

◆ G4HadronElasticPhysicsHPT() [2/2]

G4HadronElasticPhysicsHPT::G4HadronElasticPhysicsHPT ( G4HadronElasticPhysicsHPT & )
delete

Member Function Documentation

◆ ConstructProcess()

void G4HadronElasticPhysicsHPT::ConstructProcess ( )
finalvirtual

Reimplemented from G4HadronElasticPhysicsHP.

Definition at line 65 of file G4HadronElasticPhysicsHPT.cc.

65 {
67 const G4Neutron* neutron = G4Neutron::Neutron();
68 G4HadronicProcess* neutronElasticProcess = G4PhysListUtil::FindElasticProcess( neutron );
69 if ( neutronElasticProcess == nullptr ) {
70 G4cout << "### " << GetPhysicsName()
71 << " WARNING: Fail to add thermal neutron scattering" << G4endl;
72 return;
73 }
74 std::size_t sizeInteractionList = neutronElasticProcess->GetHadronicInteractionList().size();
75 if ( sizeInteractionList < 1 ) {
76 G4cout << "### " << GetPhysicsName()
77 << " WARNING: Fail to add thermal neutron scattering ! sizeInteractionList="
78 << sizeInteractionList << G4endl;
79 return;
80 }
81 neutronElasticProcess->GetHadronicInteractionList()[ sizeInteractionList-1 ]->SetMinEnergy( 4.0*CLHEP::eV );
82 neutronElasticProcess->RegisterMe( new G4ParticleHPThermalScattering );
83 neutronElasticProcess->AddDataSet( new G4ParticleHPThermalScatteringData );
85 G4cout << "### HadronElasticPhysicsHPT is constructed " << G4endl;
86 }
87}
static G4HadronicParameters * Instance()
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
std::vector< G4HadronicInteraction * > & GetHadronicInteractionList()
void RegisterMe(G4HadronicInteraction *a)
static G4Neutron * Neutron()
Definition G4Neutron.cc:101
static G4HadronicProcess * FindElasticProcess(const G4ParticleDefinition *)

◆ operator=()

G4HadronElasticPhysicsHPT & G4HadronElasticPhysicsHPT::operator= ( const G4HadronElasticPhysicsHPT & right)
delete

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