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

#include <G4FTFPPionBuilder.hh>

Inheritance diagram for G4FTFPPionBuilder:
Collaboration diagram for G4FTFPPionBuilder:

Public Member Functions

 G4FTFPPionBuilder (G4bool quasiElastic=false)
 
virtual ~G4FTFPPionBuilder ()
 
virtual void Build (G4HadronElasticProcess *aP)
 
virtual void Build (G4PionPlusInelasticProcess *aP)
 
virtual void Build (G4PionMinusInelasticProcess *aP)
 
void SetMinEnergy (G4double aM)
 
void SetMaxEnergy (G4double aM)
 
- Public Member Functions inherited from G4VPionBuilder
 G4VPionBuilder ()
 
virtual ~G4VPionBuilder ()
 

Detailed Description

Definition at line 57 of file G4FTFPPionBuilder.hh.

Constructor & Destructor Documentation

G4FTFPPionBuilder::G4FTFPPionBuilder ( G4bool  quasiElastic = false)

Definition at line 44 of file G4FTFPPionBuilder.cc.

45 {
47  theMin = 4*GeV;
48  theMax = 100*TeV;
49  theModel = new G4TheoFSGenerator("FTFP");
50 
51  theStringModel = new G4FTFModel;
52  theStringDecay = new G4ExcitedStringDecay(theLund = new G4LundStringFragmentation);
53  theStringModel->SetFragmentationModel(theStringDecay);
54 
55  theCascade = new G4GeneratorPrecompoundInterface();
56 
57  theModel->SetHighEnergyGenerator(theStringModel);
58  if (quasiElastic)
59  {
60  theQuasiElastic=new G4QuasiElasticChannel;
61  theModel->SetQuasiElasticChannel(theQuasiElastic);
62  } else
63  { theQuasiElastic=0;}
64 
65  theModel->SetTransport(theCascade);
66  theModel->SetMinEnergy(theMin);
67  theModel->SetMaxEnergy(100*TeV);
68 }
void SetQuasiElasticChannel(G4QuasiElasticChannel *const value)
void SetFragmentationModel(G4VStringFragmentation *aModel)
static const char * Default_Name()
void SetHighEnergyGenerator(G4VHighEnergyGenerator *const value)
static constexpr double TeV
Definition: G4SIunits.hh:218
void SetMinEnergy(G4double anEnergy)
static G4CrossSectionDataSetRegistry * Instance()
static constexpr double GeV
Definition: G4SIunits.hh:217
void SetMaxEnergy(const G4double anEnergy)
void SetTransport(G4VIntraNuclearTransportModel *const value)

Here is the call graph for this function:

G4FTFPPionBuilder::~G4FTFPPionBuilder ( )
virtual

Definition at line 70 of file G4FTFPPionBuilder.cc.

71 {
72  delete theStringDecay;
73  delete theStringModel;
74  if ( theQuasiElastic ) delete theQuasiElastic;
75  delete theLund;
76 }

Member Function Documentation

void G4FTFPPionBuilder::Build ( G4HadronElasticProcess aP)
virtual

Implements G4VPionBuilder.

Definition at line 79 of file G4FTFPPionBuilder.cc.

79 {}
void G4FTFPPionBuilder::Build ( G4PionPlusInelasticProcess aP)
virtual

Implements G4VPionBuilder.

Definition at line 82 of file G4FTFPPionBuilder.cc.

83 {
84  theModel->SetMinEnergy(theMin);
85  theModel->SetMaxEnergy(theMax);
86  aP->AddDataSet(thePiData);
87  aP->RegisterMe(theModel);
88 }
void RegisterMe(G4HadronicInteraction *a)
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4FTFPPionBuilder::Build ( G4PionMinusInelasticProcess aP)
virtual

Implements G4VPionBuilder.

Definition at line 91 of file G4FTFPPionBuilder.cc.

92 {
93  theModel->SetMinEnergy(theMin);
94  theModel->SetMaxEnergy(theMax);
95  aP->AddDataSet(thePiData);
96  aP->RegisterMe(theModel);
97 }
void RegisterMe(G4HadronicInteraction *a)
void SetMinEnergy(G4double anEnergy)
void AddDataSet(G4VCrossSectionDataSet *aDataSet)
void SetMaxEnergy(const G4double anEnergy)

Here is the call graph for this function:

void G4FTFPPionBuilder::SetMaxEnergy ( G4double  aM)
inline

Definition at line 69 of file G4FTFPPionBuilder.hh.

69 {theMax = aM;}
void G4FTFPPionBuilder::SetMinEnergy ( G4double  aM)
inline

Definition at line 68 of file G4FTFPPionBuilder.hh.

68 {theMin = aM;}

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