#include <G4FTFBinaryKaonBuilder.hh>
Inheritance diagram for G4FTFBinaryKaonBuilder:
Public Member Functions | |
G4FTFBinaryKaonBuilder (G4bool quasiElastic=false) | |
virtual | ~G4FTFBinaryKaonBuilder () |
virtual void | Build (G4HadronElasticProcess *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) |
Definition at line 59 of file G4FTFBinaryKaonBuilder.hh.
G4FTFBinaryKaonBuilder::G4FTFBinaryKaonBuilder | ( | G4bool | quasiElastic = false |
) |
Definition at line 54 of file G4FTFBinaryKaonBuilder.cc.
References G4VIntraNuclearTransportModel::SetDeExcitation(), G4VPartonStringModel::SetFragmentationModel(), G4TheoFSGenerator::SetHighEnergyGenerator(), G4HadronicInteraction::SetMaxEnergy(), G4HadronicInteraction::SetMinEnergy(), G4TheoFSGenerator::SetQuasiElasticChannel(), and G4TheoFSGenerator::SetTransport().
00055 { 00056 theMin = 4*GeV; 00057 theModel = new G4TheoFSGenerator("FTFB"); 00058 00059 theStringModel = new G4FTFModel; 00060 theStringDecay = new G4ExcitedStringDecay(new G4LundStringFragmentation); 00061 theStringModel->SetFragmentationModel(theStringDecay); 00062 00063 theCascade = new G4BinaryCascade; 00064 thePreEquilib = new G4PreCompoundModel(new G4ExcitationHandler); 00065 theCascade->SetDeExcitation(thePreEquilib); 00066 00067 theModel->SetHighEnergyGenerator(theStringModel); 00068 if (quasiElastic) 00069 { 00070 theQuasiElastic=new G4QuasiElasticChannel; 00071 theModel->SetQuasiElasticChannel(theQuasiElastic); 00072 } else 00073 { theQuasiElastic=0;} 00074 00075 theModel->SetTransport(theCascade); 00076 theModel->SetMinEnergy(theMin); 00077 theModel->SetMaxEnergy(100*TeV); 00078 }
G4FTFBinaryKaonBuilder::~G4FTFBinaryKaonBuilder | ( | ) | [virtual] |
Definition at line 80 of file G4FTFBinaryKaonBuilder.cc.
00081 { 00082 delete theCascade; 00083 delete theStringDecay; 00084 delete theStringModel; 00085 delete theModel; 00086 if ( theQuasiElastic ) delete theQuasiElastic; 00087 }
void G4FTFBinaryKaonBuilder::Build | ( | G4KaonZeroSInelasticProcess * | aP | ) | [virtual] |
Implements G4VKaonBuilder.
Definition at line 117 of file G4FTFBinaryKaonBuilder.cc.
References G4HadronicProcess::AddDataSet(), G4ChipsKaonZeroInelasticXS::Default_Name(), G4CrossSectionDataSetRegistry::Instance(), G4HadronicProcess::RegisterMe(), and G4HadronicInteraction::SetMinEnergy().
00118 { 00119 theModel->SetMinEnergy(theMin); 00120 00121 aP->AddDataSet(G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonZeroInelasticXS::Default_Name())); 00122 aP->RegisterMe(theModel); 00123 }
void G4FTFBinaryKaonBuilder::Build | ( | G4KaonZeroLInelasticProcess * | aP | ) | [virtual] |
Implements G4VKaonBuilder.
Definition at line 109 of file G4FTFBinaryKaonBuilder.cc.
References G4HadronicProcess::AddDataSet(), G4ChipsKaonZeroInelasticXS::Default_Name(), G4CrossSectionDataSetRegistry::Instance(), G4HadronicProcess::RegisterMe(), and G4HadronicInteraction::SetMinEnergy().
00110 { 00111 theModel->SetMinEnergy(theMin); 00112 aP->AddDataSet(G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonZeroInelasticXS::Default_Name())); 00113 aP->RegisterMe(theModel); 00114 }
void G4FTFBinaryKaonBuilder::Build | ( | G4KaonMinusInelasticProcess * | aP | ) | [virtual] |
Implements G4VKaonBuilder.
Definition at line 101 of file G4FTFBinaryKaonBuilder.cc.
References G4HadronicProcess::AddDataSet(), G4ChipsKaonMinusInelasticXS::Default_Name(), G4CrossSectionDataSetRegistry::Instance(), G4HadronicProcess::RegisterMe(), and G4HadronicInteraction::SetMinEnergy().
00102 { 00103 theModel->SetMinEnergy(theMin); 00104 aP->AddDataSet(G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonMinusInelasticXS::Default_Name())); 00105 aP->RegisterMe(theModel); 00106 }
void G4FTFBinaryKaonBuilder::Build | ( | G4KaonPlusInelasticProcess * | aP | ) | [virtual] |
Implements G4VKaonBuilder.
Definition at line 93 of file G4FTFBinaryKaonBuilder.cc.
References G4HadronicProcess::AddDataSet(), G4ChipsKaonPlusInelasticXS::Default_Name(), G4CrossSectionDataSetRegistry::Instance(), G4HadronicProcess::RegisterMe(), and G4HadronicInteraction::SetMinEnergy().
00094 { 00095 theModel->SetMinEnergy(theMin); 00096 aP->AddDataSet(G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonPlusInelasticXS::Default_Name())); 00097 aP->RegisterMe(theModel); 00098 }
void G4FTFBinaryKaonBuilder::Build | ( | G4HadronElasticProcess * | aP | ) | [virtual] |
void G4FTFBinaryKaonBuilder::SetMinEnergy | ( | G4double | aM | ) | [inline] |