#include <G4ChipsKaonZeroElasticXS.hh>
Inheritance diagram for G4ChipsKaonZeroElasticXS:
Public Member Functions | |
G4ChipsKaonZeroElasticXS () | |
~G4ChipsKaonZeroElasticXS () | |
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 G4ChipsKaonZeroElasticXS.hh.
G4ChipsKaonZeroElasticXS::G4ChipsKaonZeroElasticXS | ( | ) |
Definition at line 65 of file G4ChipsKaonZeroElasticXS.cc.
References G4ChipsKaonPlusElasticXS::Default_Name(), G4ChipsKaonMinusElasticXS::Default_Name(), G4CrossSectionDataSetRegistry::GetCrossSectionDataSet(), and G4CrossSectionDataSetRegistry::Instance().
00065 :G4VCrossSectionDataSet(Default_Name()) 00066 { 00067 theKMinusCS = (G4ChipsKaonMinusElasticXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonMinusElasticXS::Default_Name());; 00068 theKPlusCS = (G4ChipsKaonPlusElasticXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4ChipsKaonPlusElasticXS::Default_Name()); 00069 }
G4ChipsKaonZeroElasticXS::~G4ChipsKaonZeroElasticXS | ( | ) |
static const char* G4ChipsKaonZeroElasticXS::Default_Name | ( | ) | [inline, static] |
Definition at line 60 of file G4ChipsKaonZeroElasticXS.hh.
Referenced by G4HadronDElasticPhysics::ConstructProcess(), and G4ChipsComponentXS::G4ChipsComponentXS().
G4double G4ChipsKaonZeroElasticXS::GetChipsCrossSection | ( | G4double | momentum, | |
G4int | Z, | |||
G4int | N, | |||
G4int | pdg | |||
) |
Definition at line 108 of file G4ChipsKaonZeroElasticXS.cc.
References G4ChipsKaonPlusElasticXS::GetChipsCrossSection(), and G4ChipsKaonMinusElasticXS::GetChipsCrossSection().
Referenced by GetIsoCrossSection().
00109 { 00110 return (theKMinusCS->GetChipsCrossSection(mom,Z,N,pdg) 00111 +theKPlusCS->GetChipsCrossSection(mom,Z,N,pdg))/2; 00112 }
G4double G4ChipsKaonZeroElasticXS::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 G4ChipsKaonZeroElasticXS.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 G4ChipsKaonZeroElasticXS::IsIsoApplicable | ( | const G4DynamicParticle * | Pt, | |
G4int | Z, | |||
G4int | A, | |||
const G4Element * | elm, | |||
const G4Material * | mat | |||
) | [virtual] |
Reimplemented from G4VCrossSectionDataSet.
Definition at line 76 of file G4ChipsKaonZeroElasticXS.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 }