#include <G4ChipsKaonZeroInelasticXS.hh>
Inheritance diagram for G4ChipsKaonZeroInelasticXS:
Public Member Functions | |
G4ChipsKaonZeroInelasticXS () | |
~G4ChipsKaonZeroInelasticXS () | |
virtual G4bool | IsIsoApplicable (const G4DynamicParticle *Pt, G4int Z, G4int A, const G4Element *elm, const G4Material *mat) |
virtual G4double | GetIsoCrossSection (const G4DynamicParticle *, G4int tgZ, G4int A, const G4Isotope *iso=0, const G4Element *elm=0, const G4Material *mat=0) |
G4double | GetChipsCrossSection (G4double momentum, G4int Z, G4int N, G4int pdg) |
Static Public Member Functions | |
static const char * | Default_Name () |
Definition at line 50 of file G4ChipsKaonZeroInelasticXS.hh.
G4ChipsKaonZeroInelasticXS::G4ChipsKaonZeroInelasticXS | ( | ) |
Definition at line 65 of file G4ChipsKaonZeroInelasticXS.cc.
References G4ChipsKaonPlusInelasticXS::Default_Name(), G4ChipsKaonMinusInelasticXS::Default_Name(), G4CrossSectionDataSetRegistry::GetCrossSectionDataSet(), and G4CrossSectionDataSetRegistry::Instance().
00065 :G4VCrossSectionDataSet(Default_Name()) 00066 { 00067 theKMinusCS = (G4ChipsKaonMinusInelasticXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonMinusInelasticXS::Default_Name());; 00068 theKPlusCS = (G4ChipsKaonPlusInelasticXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonPlusInelasticXS::Default_Name()); 00069 }
G4ChipsKaonZeroInelasticXS::~G4ChipsKaonZeroInelasticXS | ( | ) |
static const char* G4ChipsKaonZeroInelasticXS::Default_Name | ( | ) | [inline, static] |
Definition at line 60 of file G4ChipsKaonZeroInelasticXS.hh.
Referenced by G4QGSPPiKBuilder::Build(), G4QGSBinaryPiKBuilder::Build(), G4FTFBinaryKaonBuilder::Build(), HadronPhysicsShielding::ConstructProcess(), HadronPhysicsQGSP_FTFP_BERT_95::ConstructProcess(), HadronPhysicsFTFP_BERT_TRV::ConstructProcess(), HadronPhysicsFTFP_BERT_HP::ConstructProcess(), HadronPhysicsFTFP_BERT::ConstructProcess(), G4HadronInelasticQBBC::ConstructProcess(), and G4ChipsComponentXS::G4ChipsComponentXS().
G4double G4ChipsKaonZeroInelasticXS::GetChipsCrossSection | ( | G4double | momentum, | |
G4int | Z, | |||
G4int | N, | |||
G4int | pdg | |||
) |
Definition at line 108 of file G4ChipsKaonZeroInelasticXS.cc.
References G4ChipsKaonPlusInelasticXS::GetChipsCrossSection(), and G4ChipsKaonMinusInelasticXS::GetChipsCrossSection().
Referenced by GetIsoCrossSection().
00109 { 00110 return (theKMinusCS->GetChipsCrossSection(mom,Z,N,pdg) 00111 +theKPlusCS->GetChipsCrossSection(mom,Z,N,pdg))/2; 00112 }
G4double G4ChipsKaonZeroInelasticXS::GetIsoCrossSection | ( | const G4DynamicParticle * | , | |
G4int | tgZ, | |||
G4int | A, | |||
const G4Isotope * | iso = 0 , |
|||
const G4Element * | elm = 0 , |
|||
const G4Material * | mat = 0 | |||
) | [virtual] |
Reimplemented from G4VCrossSectionDataSet.
Definition at line 97 of file G4ChipsKaonZeroInelasticXS.cc.
References GetChipsCrossSection(), and G4DynamicParticle::GetTotalMomentum().
00101 { 00102 G4double pMom=Pt->GetTotalMomentum(); 00103 G4int N = A - tgZ; 00104 00105 return GetChipsCrossSection(pMom, tgZ, N, 311); 00106 }
G4bool G4ChipsKaonZeroInelasticXS::IsIsoApplicable | ( | const G4DynamicParticle * | Pt, | |
G4int | Z, | |||
G4int | A, | |||
const G4Element * | elm, | |||
const G4Material * | mat | |||
) | [virtual] |
Reimplemented from G4VCrossSectionDataSet.
Definition at line 76 of file G4ChipsKaonZeroInelasticXS.cc.
References G4AntiKaonZero::AntiKaonZero(), G4DynamicParticle::GetDefinition(), G4KaonZero::KaonZero(), G4KaonZeroLong::KaonZeroLong(), and G4KaonZeroShort::KaonZeroShort().
00079 { 00080 G4ParticleDefinition* particle = Pt->GetDefinition(); 00081 00082 if(particle == G4KaonZeroLong::KaonZeroLong() || 00083 particle == G4KaonZeroShort::KaonZeroShort() || 00084 particle == G4KaonZero::KaonZero() || 00085 particle == G4AntiKaonZero::AntiKaonZero() ) 00086 { 00087 return true; 00088 } 00089 return false; 00090 }