#include <G4QGSC_QGSCProtonBuilder.hh>
Inheritance diagram for G4QGSC_QGSCProtonBuilder:
Public Member Functions | |
G4QGSC_QGSCProtonBuilder (G4bool quasiElastic=false) | |
virtual | ~G4QGSC_QGSCProtonBuilder () |
virtual void | Build (G4HadronElasticProcess *aP) |
virtual void | Build (G4ProtonInelasticProcess *aP) |
void | SetMinEnergy (G4double aM) |
Definition at line 48 of file G4QGSC_QGSCProtonBuilder.hh.
G4QGSC_QGSCProtonBuilder::G4QGSC_QGSCProtonBuilder | ( | G4bool | quasiElastic = false |
) |
Definition at line 33 of file G4QGSC_QGSCProtonBuilder.cc.
References G4VPartonStringModel::SetFragmentationModel(), G4TheoFSGenerator::SetHighEnergyGenerator(), G4TheoFSGenerator::SetQuasiElasticChannel(), and G4TheoFSGenerator::SetTransport().
00034 { 00035 theMin = 0*GeV; 00036 theModel = new G4TheoFSGenerator("QGSC"); 00037 00038 theStringModel = new G4QGSModel< G4QGSParticipants >; 00039 theStringDecay = new G4ExcitedStringDecay(new G4QGSMFragmentation); 00040 theStringModel->SetFragmentationModel(theStringDecay); 00041 00042 theCascade = new G4QStringChipsParticleLevelInterface; 00043 00044 theModel->SetHighEnergyGenerator(theStringModel); 00045 theModel->SetTransport(theCascade); 00046 if (quasiElastic) 00047 { 00048 theQuasiElastic=new G4QuasiElasticChannel; 00049 theModel->SetQuasiElasticChannel(theQuasiElastic); 00050 } else 00051 { theQuasiElastic=0;} 00052 }
G4QGSC_QGSCProtonBuilder::~G4QGSC_QGSCProtonBuilder | ( | ) | [virtual] |
Definition at line 55 of file G4QGSC_QGSCProtonBuilder.cc.
00056 { 00057 delete theCascade; 00058 delete theStringDecay; 00059 delete theStringModel; 00060 if ( theQuasiElastic ) delete theQuasiElastic; 00061 delete theModel; 00062 }
void G4QGSC_QGSCProtonBuilder::Build | ( | G4ProtonInelasticProcess * | aP | ) | [virtual] |
Implements G4VProtonBuilder.
Definition at line 70 of file G4QGSC_QGSCProtonBuilder.cc.
References G4HadronicProcess::AddDataSet(), G4HadronicProcess::RegisterMe(), G4HadronicInteraction::SetMaxEnergy(), and G4HadronicInteraction::SetMinEnergy().
00071 { 00072 theModel->SetMinEnergy(theMin); 00073 theModel->SetMaxEnergy(100*TeV); 00074 aP->RegisterMe(theModel); 00075 aP->AddDataSet(&theXSec); 00076 }
void G4QGSC_QGSCProtonBuilder::Build | ( | G4HadronElasticProcess * | aP | ) | [virtual] |
void G4QGSC_QGSCProtonBuilder::SetMinEnergy | ( | G4double | aM | ) | [inline] |