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

#include <G4HadronPhysicsQGSP_BIC_HP.hh>

+ Inheritance diagram for G4HadronPhysicsQGSP_BIC_HP:

Public Member Functions

 G4HadronPhysicsQGSP_BIC_HP (G4int verbose=1)
 
 G4HadronPhysicsQGSP_BIC_HP (const G4String &name, G4bool quasiElastic=true)
 
virtual ~G4HadronPhysicsQGSP_BIC_HP ()
 
 G4HadronPhysicsQGSP_BIC_HP (G4HadronPhysicsQGSP_BIC_HP &)=delete
 
G4HadronPhysicsQGSP_BIC_HPoperator= (const G4HadronPhysicsQGSP_BIC_HP &right)=delete
 
- Public Member Functions inherited from G4HadronPhysicsQGSP_BIC
 G4HadronPhysicsQGSP_BIC (G4int verbose=1)
 
 G4HadronPhysicsQGSP_BIC (const G4String &name, G4bool quasiElastic=true)
 
virtual ~G4HadronPhysicsQGSP_BIC ()
 
void ConstructParticle () override
 
void ConstructProcess () override
 
 G4HadronPhysicsQGSP_BIC (G4HadronPhysicsQGSP_BIC &)=delete
 
G4HadronPhysicsQGSP_BICoperator= (const G4HadronPhysicsQGSP_BIC &right)=delete
 
- Public Member Functions inherited from G4VPhysicsConstructor
 G4VPhysicsConstructor (const G4String &="")
 
 G4VPhysicsConstructor (const G4String &name, G4int physics_type)
 
virtual ~G4VPhysicsConstructor ()
 
virtual void ConstructParticle ()=0
 
virtual void ConstructProcess ()=0
 
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
 

Protected Member Functions

void Neutron () override
 
- Protected Member Functions inherited from G4HadronPhysicsQGSP_BIC
void CreateModels ()
 
virtual void Neutron ()
 
virtual void Proton ()
 
virtual void Pion ()
 
virtual void Others ()
 
virtual void DumpBanner ()
 
- Protected Member Functions inherited from G4VPhysicsConstructor
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
 
G4ParticleTable::G4PTblDicIteratorGetParticleIterator () const
 
PhysicsBuilder_V GetBuilders () const
 
void AddBuilder (G4PhysicsBuilderInterface *bld)
 

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 Attributes inherited from G4HadronPhysicsQGSP_BIC
G4double minQGSP_neutron
 
G4double minQGSP_proton
 
G4double minQGSP_pik
 
G4double maxFTFP_proton
 
G4double maxFTFP_neutron
 
G4double maxFTFP_pik
 
G4double minFTFP_proton
 
G4double minFTFP_neutron
 
G4double minFTFP_pik
 
G4double maxBIC_proton
 
G4double minBIC_neutron
 
G4double minBIC_proton
 
G4double maxBIC_neutron
 
G4double maxBERT_pik
 
G4bool QuasiElasticFTF
 
G4bool QuasiElasticQGS
 
- 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 53 of file G4HadronPhysicsQGSP_BIC_HP.hh.

Constructor & Destructor Documentation

◆ G4HadronPhysicsQGSP_BIC_HP() [1/3]

G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP ( G4int  verbose = 1)

Definition at line 72 of file G4HadronPhysicsQGSP_BIC_HP.cc.

73 : G4HadronPhysicsQGSP_BIC_HP( "hInelastic QGSP_BIC_HP" )
74{
76}
static G4HadronicParameters * Instance()
void SetVerboseLevel(const G4int val)

◆ G4HadronPhysicsQGSP_BIC_HP() [2/3]

G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP ( const G4String name,
G4bool  quasiElastic = true 
)

Definition at line 78 of file G4HadronPhysicsQGSP_BIC_HP.cc.

◆ ~G4HadronPhysicsQGSP_BIC_HP()

virtual G4HadronPhysicsQGSP_BIC_HP::~G4HadronPhysicsQGSP_BIC_HP ( )
inlinevirtual

Definition at line 57 of file G4HadronPhysicsQGSP_BIC_HP.hh.

57{};

◆ G4HadronPhysicsQGSP_BIC_HP() [3/3]

G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP ( G4HadronPhysicsQGSP_BIC_HP )
delete

Member Function Documentation

◆ Neutron()

void G4HadronPhysicsQGSP_BIC_HP::Neutron ( )
overrideprotectedvirtual

Reimplemented from G4HadronPhysicsQGSP_BIC.

Definition at line 84 of file G4HadronPhysicsQGSP_BIC_HP.cc.

84 {
86 G4bool useFactorXS = param->ApplyFactorXS();
87
88 auto neu = new G4NeutronBuilder( true ); // Fission on
89 AddBuilder( neu );
90 auto qgs = new G4QGSPNeutronBuilder( QuasiElasticQGS );
91 AddBuilder( qgs );
92 qgs->SetMinEnergy( minQGSP_neutron );
93 neu->RegisterMe( qgs );
94 auto ftf = new G4FTFPNeutronBuilder( QuasiElasticFTF );
95 AddBuilder( ftf );
96 ftf->SetMinEnergy( minFTFP_neutron );
97 ftf->SetMaxEnergy( maxFTFP_neutron );
98 neu->RegisterMe( ftf );
99 auto bic = new G4BinaryNeutronBuilder;
100 AddBuilder( bic );
101 bic->SetMinEnergy( minBIC_neutron );
102 bic->SetMaxEnergy( maxBIC_neutron );
103 neu->RegisterMe( bic );
104 auto hp = new G4NeutronPHPBuilder;
105 AddBuilder( hp );
106 neu->RegisterMe( hp );
107 neu->Build();
108
111 if(inel) {
112 if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() );
113 }
115 if ( capture ) {
116 G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture;
117 theNeutronRadCapture->SetMinEnergy( minBIC_neutron );
118 capture->RegisterMe( theNeutronRadCapture );
119 }
121 if ( fission ) {
122 G4LFission* theNeutronLEPFission = new G4LFission;
123 theNeutronLEPFission->SetMinEnergy( minBIC_neutron );
124 theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() );
125 fission->RegisterMe( theNeutronLEPFission );
126 }
127}
bool G4bool
Definition: G4Types.hh:86
void SetMinEnergy(G4double anEnergy)
void SetMaxEnergy(const G4double anEnergy)
G4double XSFactorNucleonInelastic() const
void MultiplyCrossSectionBy(G4double factor)
void RegisterMe(G4HadronicInteraction *a)
static G4Neutron * Neutron()
Definition: G4Neutron.cc:103
static G4HadronicProcess * FindInelasticProcess(const G4ParticleDefinition *)
static G4HadronicProcess * FindCaptureProcess(const G4ParticleDefinition *)
static G4HadronicProcess * FindFissionProcess(const G4ParticleDefinition *)
void AddBuilder(G4PhysicsBuilderInterface *bld)

◆ operator=()

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

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