Geant4  10.03.p01
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
G4QGSPPiKBuilder Class Reference

#include <G4QGSPPiKBuilder.hh>

Inheritance diagram for G4QGSPPiKBuilder:
Collaboration diagram for G4QGSPPiKBuilder:

Public Member Functions

 G4QGSPPiKBuilder (G4bool quasiElastic=false)
 
virtual ~G4QGSPPiKBuilder ()
 
virtual void Build (G4HadronElasticProcess *aP)
 
virtual void Build (G4PionPlusInelasticProcess *aP)
 
virtual void Build (G4PionMinusInelasticProcess *aP)
 
virtual void Build (G4KaonPlusInelasticProcess *aP)
 
virtual void Build (G4KaonMinusInelasticProcess *aP)
 
virtual void Build (G4KaonZeroLInelasticProcess *aP)
 
virtual void Build (G4KaonZeroSInelasticProcess *aP)
 
void SetMinEnergy (G4double aM)
 
- Public Member Functions inherited from G4VPiKBuilder
 G4VPiKBuilder ()
 
virtual ~G4VPiKBuilder ()
 

Detailed Description

Definition at line 59 of file G4QGSPPiKBuilder.hh.

Constructor & Destructor Documentation

G4QGSPPiKBuilder::G4QGSPPiKBuilder ( G4bool  quasiElastic = false)

Definition at line 55 of file G4QGSPPiKBuilder.cc.

56 {
58 
59  theMin = 12*GeV;
60  theModel = new G4TheoFSGenerator("QGSP");
61 
62  theStringModel = new G4QGSModel< G4QGSParticipants >;
63  theStringDecay = new G4ExcitedStringDecay(theQGSM = new G4QGSMFragmentation);
64  theStringModel->SetFragmentationModel(theStringDecay);
65 
66 
67  theCascade = new G4GeneratorPrecompoundInterface();
68 
69  theModel->SetHighEnergyGenerator(theStringModel);
70  if (quasiElastic)
71  {
72  theQuasiElastic=new G4QuasiElasticChannel;
73  theModel->SetQuasiElasticChannel(theQuasiElastic);
74  } else
75  { theQuasiElastic=0;}
76 
77  theModel->SetTransport(theCascade);
78 }
void SetQuasiElasticChannel(G4QuasiElasticChannel *const value)
void SetFragmentationModel(G4VStringFragmentation *aModel)
static const char * Default_Name()
void SetHighEnergyGenerator(G4VHighEnergyGenerator *const value)
static G4CrossSectionDataSetRegistry * Instance()
static constexpr double GeV
Definition: G4SIunits.hh:217
void SetTransport(G4VIntraNuclearTransportModel *const value)

Here is the call graph for this function:

G4QGSPPiKBuilder::~G4QGSPPiKBuilder ( )
virtual

Definition at line 81 of file G4QGSPPiKBuilder.cc.

82 {
83  if ( theQuasiElastic ) delete theQuasiElastic;
84  delete theStringDecay;
85  delete theStringModel;
86  delete theQGSM;
87 }

Member Function Documentation

void G4QGSPPiKBuilder::Build ( G4HadronElasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 90 of file G4QGSPPiKBuilder.cc.

90 {}
void G4QGSPPiKBuilder::Build ( G4PionPlusInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 93 of file G4QGSPPiKBuilder.cc.

94 {
95  theModel->SetMinEnergy(theMin);
96  theModel->SetMaxEnergy(100*TeV);
97  aP->AddDataSet(thePiData);
98  aP->RegisterMe(theModel);
99 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::Build ( G4PionMinusInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 102 of file G4QGSPPiKBuilder.cc.

103 {
104  theModel->SetMinEnergy(theMin);
105  theModel->SetMaxEnergy(100*TeV);
106  aP->AddDataSet(thePiData);
107  aP->RegisterMe(theModel);
108 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::Build ( G4KaonPlusInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 111 of file G4QGSPPiKBuilder.cc.

112 {
113  theModel->SetMinEnergy(theMin);
114  theModel->SetMaxEnergy(100*TeV);
115  aP->RegisterMe(theModel);
117 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
static G4CrossSectionDataSetRegistry * Instance()
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::Build ( G4KaonMinusInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 120 of file G4QGSPPiKBuilder.cc.

121 {
122  theModel->SetMinEnergy(theMin);
123  theModel->SetMaxEnergy(100*TeV);
124  aP->RegisterMe(theModel);
126 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
static G4CrossSectionDataSetRegistry * Instance()
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::Build ( G4KaonZeroLInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 129 of file G4QGSPPiKBuilder.cc.

130 {
131  theModel->SetMinEnergy(theMin);
132  theModel->SetMaxEnergy(100*TeV);
133  aP->RegisterMe(theModel);
135 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
static G4CrossSectionDataSetRegistry * Instance()
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::Build ( G4KaonZeroSInelasticProcess aP)
virtual

Implements G4VPiKBuilder.

Definition at line 138 of file G4QGSPPiKBuilder.cc.

139 {
140  theModel->SetMinEnergy(theMin);
141  theModel->SetMaxEnergy(100*TeV);
142  aP->RegisterMe(theModel);
143 }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPPiKBuilder::SetMinEnergy ( G4double  aM)
inline

Definition at line 74 of file G4QGSPPiKBuilder.hh.

74 {theMin = aM;}

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