CMS 3D CMS Logo

List of all members | Public Member Functions
CMSHadronPhysicsFTFP_BERT Class Reference

#include <CMSHadronPhysicsFTFP_BERT.h>

Inheritance diagram for CMSHadronPhysicsFTFP_BERT:

Public Member Functions

 CMSHadronPhysicsFTFP_BERT (G4int verb)
 
 CMSHadronPhysicsFTFP_BERT (G4double e1, G4double e2, G4double e3, G4double e4, G4double e5)
 
 CMSHadronPhysicsFTFP_BERT (CMSHadronPhysicsFTFP_BERT &)=delete
 
void ConstructProcess () override
 
void Neutron () override
 
CMSHadronPhysicsFTFP_BERToperator= (const CMSHadronPhysicsFTFP_BERT &right)=delete
 
 ~CMSHadronPhysicsFTFP_BERT () override=default
 

Detailed Description

Definition at line 23 of file CMSHadronPhysicsFTFP_BERT.h.

Constructor & Destructor Documentation

◆ CMSHadronPhysicsFTFP_BERT() [1/3]

CMSHadronPhysicsFTFP_BERT::CMSHadronPhysicsFTFP_BERT ( G4int  verb)
explicit

Definition at line 19 of file CMSHadronPhysicsFTFP_BERT.cc.

20  : CMSHadronPhysicsFTFP_BERT(3 * CLHEP::GeV, 6 * CLHEP::GeV, 12 * CLHEP::GeV, 3 * CLHEP::GeV, 6 * CLHEP::GeV) {}

◆ CMSHadronPhysicsFTFP_BERT() [2/3]

CMSHadronPhysicsFTFP_BERT::CMSHadronPhysicsFTFP_BERT ( G4double  e1,
G4double  e2,
G4double  e3,
G4double  e4,
G4double  e5 
)
explicit

Definition at line 22 of file CMSHadronPhysicsFTFP_BERT.cc.

References StorageManager_cfg::e1, SiPixelPhase1Clusters_cfi::e3, vertexPlots::e4, and TrackValidation_cff::e5.

23  : G4HadronPhysicsFTFP_BERT("hInelastic FTFP_BERT", false) {
24  minFTFP_pion = e1;
25  maxBERT_pion = e3;
26  minFTFP_kaon = e1;
27  maxBERT_kaon = e2;
28  minFTFP_kaon = e4;
29  maxBERT_kaon = e5;
30  minFTFP_proton = e1;
31  maxBERT_proton = e2;
32  minFTFP_neutron = e1;
33  maxBERT_neutron = e2;
34 }

◆ ~CMSHadronPhysicsFTFP_BERT()

CMSHadronPhysicsFTFP_BERT::~CMSHadronPhysicsFTFP_BERT ( )
overridedefault

◆ CMSHadronPhysicsFTFP_BERT() [3/3]

CMSHadronPhysicsFTFP_BERT::CMSHadronPhysicsFTFP_BERT ( CMSHadronPhysicsFTFP_BERT )
delete

Member Function Documentation

◆ ConstructProcess()

void CMSHadronPhysicsFTFP_BERT::ConstructProcess ( )
override

Definition at line 36 of file CMSHadronPhysicsFTFP_BERT.cc.

36  {
37  if (G4Threading::IsMasterThread()) {
38  DumpBanner();
39  }
40  CreateModels();
41 }

◆ Neutron()

void CMSHadronPhysicsFTFP_BERT::Neutron ( )
override

Definition at line 43 of file CMSHadronPhysicsFTFP_BERT.cc.

43  {
44 #if G4VERSION_NUMBER >= 1100
45  G4bool useNGeneral = G4HadronicParameters::Instance()->EnableNeutronGeneralProcess();
46  if (useNGeneral) {
47  auto theFTFP = new G4TheoFSGenerator("FTFP");
48  auto theStringModel = new G4FTFModel();
49  theStringModel->SetFragmentationModel(new G4ExcitedStringDecay());
50  theFTFP->SetHighEnergyGenerator(theStringModel);
51  theFTFP->SetTransport(new G4GeneratorPrecompoundInterface());
52  theFTFP->SetMinEnergy(minFTFP_neutron);
53  theFTFP->SetMaxEnergy(G4HadronicParameters::Instance()->GetMaxEnergy());
54 
55  auto theBERT = new G4CascadeInterface();
56  theBERT->SetMaxEnergy(maxBERT_neutron);
57 
58  G4HadronicProcess* ni = new G4HadronInelasticProcess("neutronInelastic", G4Neutron::Neutron());
59  ni->RegisterMe(theFTFP);
60  ni->RegisterMe(theBERT);
61  G4HadProcesses::BuildNeutronInelasticAndCapture(ni);
62  return;
63  }
64 #endif
65 
66  G4HadronPhysicsFTFP_BERT::Neutron();
67 }

◆ operator=()

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