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 17 of file CMSHadronPhysicsFTFP_BERT.cc.

18  : 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 20 of file CMSHadronPhysicsFTFP_BERT.cc.

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

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

◆ ~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 34 of file CMSHadronPhysicsFTFP_BERT.cc.

34  {
35  if (G4Threading::IsMasterThread()) {
36  DumpBanner();
37  }
38  CreateModels();
39 }

◆ Neutron()

void CMSHadronPhysicsFTFP_BERT::Neutron ( )
override

Definition at line 41 of file CMSHadronPhysicsFTFP_BERT.cc.

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

◆ operator=()

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