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

#include <G4QGSPLundStrFragmProtonBuilder.hh>

Inheritance diagram for G4QGSPLundStrFragmProtonBuilder:
Collaboration diagram for G4QGSPLundStrFragmProtonBuilder:

Public Member Functions

 G4QGSPLundStrFragmProtonBuilder (G4bool quasiElastic=false)
 
virtual ~G4QGSPLundStrFragmProtonBuilder ()
 
virtual void Build (G4HadronElasticProcess *aP)
 
virtual void Build (G4ProtonInelasticProcess *aP)
 
void SetMinEnergy (G4double aM)
 
- Public Member Functions inherited from G4VProtonBuilder
 G4VProtonBuilder ()
 
virtual ~G4VProtonBuilder ()
 

Detailed Description

Definition at line 54 of file G4QGSPLundStrFragmProtonBuilder.hh.

Constructor & Destructor Documentation

G4QGSPLundStrFragmProtonBuilder::G4QGSPLundStrFragmProtonBuilder ( G4bool  quasiElastic = false)

Definition at line 45 of file G4QGSPLundStrFragmProtonBuilder.cc.

46  {
47  theMin = 100*GeV;
48  theModel = new G4TheoFSGenerator("QGSP");
49 
50  theStringModel = new G4QGSModel< G4QGSParticipants >;
51  theStringDecay = new G4ExcitedStringDecay(theStrFragm = new G4LundStringFragmentation);
52  theStringModel->SetFragmentationModel(theStringDecay);
53 
54  theCascade = new G4GeneratorPrecompoundInterface;
55 
56  theModel->SetTransport(theCascade);
57  theModel->SetHighEnergyGenerator(theStringModel);
58  if (quasiElastic)
59  {
60  theQuasiElastic=new G4QuasiElasticChannel;
61  theModel->SetQuasiElasticChannel(theQuasiElastic);
62  } else
63  { theQuasiElastic=0;}
64 
65  }
void SetQuasiElasticChannel(G4QuasiElasticChannel *const value)
void SetFragmentationModel(G4VStringFragmentation *aModel)
void SetHighEnergyGenerator(G4VHighEnergyGenerator *const value)
static constexpr double GeV
Definition: G4SIunits.hh:217
void SetTransport(G4VIntraNuclearTransportModel *const value)

Here is the call graph for this function:

G4QGSPLundStrFragmProtonBuilder::~G4QGSPLundStrFragmProtonBuilder ( )
virtual

Definition at line 81 of file G4QGSPLundStrFragmProtonBuilder.cc.

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

Member Function Documentation

void G4QGSPLundStrFragmProtonBuilder::Build ( G4HadronElasticProcess aP)
virtual

Implements G4VProtonBuilder.

Definition at line 77 of file G4QGSPLundStrFragmProtonBuilder.cc.

78  {
79  }
void G4QGSPLundStrFragmProtonBuilder::Build ( G4ProtonInelasticProcess aP)
virtual

Implements G4VProtonBuilder.

Definition at line 68 of file G4QGSPLundStrFragmProtonBuilder.cc.

69  {
71  theModel->SetMinEnergy(theMin);
72  theModel->SetMaxEnergy(100*TeV);
73  aP->RegisterMe(theModel);
74  }
void RegisterMe(G4HadronicInteraction *a)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
static G4Proton * Proton()
Definition: G4Proton.cc:93
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4QGSPLundStrFragmProtonBuilder::SetMinEnergy ( G4double  aM)
inline

Definition at line 66 of file G4QGSPLundStrFragmProtonBuilder.hh.

66 {theMin = aM;}

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