66void G4HadronicBuilder::BuildFTFP_BERT(
const std::vector<G4int>& partList,
75 theModel->SetHighEnergyGenerator( theStringModel );
89 for(
auto & pdg : partList ) {
92 if ( part ==
nullptr ) {
continue; }
95 hadi->AddDataSet( xsinel );
96 hadi->RegisterMe( theModel );
97 if( theCascade !=
nullptr ) hadi->RegisterMe( theCascade );
103void G4HadronicBuilder::BuildFTFQGSP_BERT(
const std::vector<G4int>& partList,
112 theModel->SetHighEnergyGenerator( theStringModel );
126 for(
auto & pdg : partList ) {
129 if ( part ==
nullptr ) {
continue; }
132 hadi->AddDataSet( xsinel );
133 hadi->RegisterMe( theModel );
134 if( theCascade !=
nullptr ) hadi->RegisterMe( theCascade );
140void G4HadronicBuilder::BuildQGSP_FTFP_BERT(
const std::vector<G4int>& partList,
152 theHEModel->SetTransport( theTransport );
153 theHEModel->SetHighEnergyGenerator( theQGSModel );
163 theLEModel->SetHighEnergyGenerator( theFTFModel );
164 theLEModel->SetTransport( theTransport );
177 for(
auto & pdg : partList ) {
180 if ( part ==
nullptr ) {
continue; }
183 hadi->AddDataSet( xsinel );
184 hadi->RegisterMe( theHEModel );
185 hadi->RegisterMe( theLEModel );
186 if(theCascade !=
nullptr) hadi->RegisterMe( theCascade );
203 for(
auto & pdg : partList ) {
206 if ( part ==
nullptr ) {
continue; }
209 hade->AddDataSet( xsel );
210 hade->RegisterMe( elModel );
335 static G4bool isFirstCall =
true;
336 if ( ! isFirstCall )
return;
341 if ( part ==
nullptr ) {
342 G4cout <<
"G4HadronicBuilder::BuildDecayTableForBCHadrons : ERROR ! particlePDG="
343 << pdg <<
" is not defined !" <<
G4endl;
346 if ( part->GetDecayTable() ) {
347 G4cout <<
"G4HadronicBuilder::BuildDecayTableForBCHadrons : WARNING ! particlePDG="
348 << pdg <<
" has already a decay table defined !" <<
G4endl;
352 const G4int numberDecayChannels = 1;
450 G4cout <<
"G4HadronicBuilder::BuildDecayTableForBCHadrons : UNKNOWN particlePDG=" << pdg <<
G4endl;
453 for (
G4int index = 0; index < numberDecayChannels; ++index ) decayTable->
Insert( mode[index] );
455 part->SetDecayTable( decayTable );
463 const G4int numberDecayChannels = 1;
466 for (
G4int index = 0; index < numberDecayChannels; ++index ) decayTable->
Insert( mode[index] );
472 const G4int numberDecayChannels = 1;
475 for (
G4int index = 0; index < numberDecayChannels; ++index ) decayTable->
Insert( mode[index] );
481 const G4int numberDecayChannels = 1;
484 for (
G4int index = 0; index < numberDecayChannels; ++index ) decayTable->
Insert( mode[index] );
G4GLOB_DLL std::ostream G4cout
void Insert(G4VDecayChannel *aChannel)
static G4Etac * Definition()
static const std::vector< G4int > & GetBCHadrons()
static const std::vector< G4int > & GetAntiHyperons()
static const std::vector< G4int > & GetLightAntiIons()
static const std::vector< G4int > & GetKaons()
static const std::vector< G4int > & GetHyperons()
static G4CrossSectionElastic * ElasticXS(const G4String &componentName)
static G4CrossSectionInelastic * InelasticXS(const G4String &componentName)
static void BuildBCHadronsFTFP_BERT()
static void BuildElastic(const std::vector< G4int > &particleList)
static void BuildHyperonsFTFP_BERT()
static void BuildKaonsQGSP_FTFP_BERT(G4bool quasiElastic)
static void BuildKaonsFTFQGSP_BERT()
static void BuildBCHadronsFTFQGSP_BERT()
static void BuildHyperonsQGSP_FTFP_BERT(G4bool quasiElastic)
static void BuildHyperonsFTFQGSP_BERT()
static void BuildDecayTableForBCHadrons()
static void BuildKaonsFTFP_BERT()
static void BuildAntiLightIonsFTFP()
static void BuildBCHadronsQGSP_FTFP_BERT(G4bool quasiElastic)
void SetMaxEnergy(const G4double anEnergy)
G4bool ApplyFactorXS() const
static G4HadronicParameters * Instance()
G4double GetMinEnergyTransitionFTF_Cascade() const
G4double GetMinEnergyTransitionQGS_FTF() const
G4double GetMaxEnergyTransitionFTF_Cascade() const
G4double XSFactorHadronInelastic() const
G4double GetMaxEnergyTransitionQGS_FTF() const
G4double XSFactorHadronElastic() const
G4double GetMaxEnergy() const
static G4JPsi * Definition()
void SetDecayTable(G4DecayTable *aDecayTable)
G4ParticleDefinition * FindParticle(G4int PDGEncoding)
static G4ParticleTable * GetParticleTable()
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4PhysicsListHelper * GetPhysicsListHelper()
static G4Upsilon * Definition()
void SetFragmentationModel(G4VStringFragmentation *aModel)