33 : m_ftfp(nullptr), m_stringModel(nullptr), m_stringDecay(nullptr),
50 G4ChipsElasticModel* elMod =
new G4ChipsElasticModel();
53 G4CascadeInterface* loInelModel =
new G4CascadeInterface;
54 loInelModel->SetMinEnergy(0.0);
55 loInelModel->SetMaxEnergy(12.0 * GeV);
58 m_ftfp =
new G4TheoFSGenerator(
"FTFP");
61 new G4ExcitedStringDecay(
m_fragModel =
new G4LundStringFragmentation);
67 m_ftfp->SetMinEnergy(5 * GeV);
68 m_ftfp->SetMaxEnergy(100 * TeV);
71 G4BGGNucleonInelasticXS* inelCS =
new G4BGGNucleonInelasticXS(G4Proton::Proton());
72 G4ChipsProtonElasticXS* elCS =
new G4ChipsProtonElasticXS;
74 G4ProcessManager* procMan = G4Proton::Proton()->GetProcessManager();
77 G4HadronElasticProcess* pProcEl =
new G4HadronElasticProcess;
78 pProcEl->RegisterMe(elMod);
79 pProcEl->AddDataSet(elCS);
80 procMan->AddDiscreteProcess(pProcEl);
83 G4HadronInelasticProcess* pProcInel =
new G4HadronInelasticProcess(
"protonInelastic", G4Proton::Definition());
84 pProcInel->RegisterMe(loInelModel);
85 pProcInel->RegisterMe(
m_ftfp);
86 pProcInel->AddDataSet(inelCS);
87 procMan->AddDiscreteProcess(pProcInel);