Geant4-11
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes
G4XPDGElastic Class Reference

#include <G4XPDGElastic.hh>

Inheritance diagram for G4XPDGElastic:
G4VCrossSectionSource

Public Member Functions

virtual G4double CrossSection (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
 G4XPDGElastic ()
 
virtual const G4CrossSectionVectorGetComponents () const
 
virtual G4double HighLimit () const
 
virtual G4bool IsValid (G4double e) const
 
virtual G4double LowLimit () const
 
virtual G4String Name () const
 
G4bool operator!= (const G4VCrossSectionSource &right) const
 
G4bool operator!= (const G4XPDGElastic &right) const
 
G4bool operator== (const G4VCrossSectionSource &right) const
 
G4bool operator== (const G4XPDGElastic &right) const
 
virtual void Print () const
 
virtual void PrintAll (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
virtual ~G4XPDGElastic ()
 

Protected Member Functions

G4double FcrossX (G4double e, G4double e0, G4double sigma, G4double eParam, G4double power) const
 
const G4ParticleDefinitionFindKeyParticle (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
const G4ParticleDefinitionFindLightParticle (const G4KineticTrack &trk1, const G4KineticTrack &trk2) const
 
G4bool InLimits (G4double e, G4double eLow, G4double eHigh) const
 

Private Types

typedef std::map< G4pDefPair, std::vector< G4double >, std::less< G4pDefPair > > PairDoubleMap
 

Private Member Functions

 G4XPDGElastic (const G4XPDGElastic &right)
 
const G4XPDGElasticoperator= (const G4XPDGElastic &right)
 

Private Attributes

std::map< G4pDefPair, std::vector< G4double >, std::less< G4pDefPair > > xMap
 

Static Private Attributes

static const G4double _highLimit = DBL_MAX
 
static const G4double _lowLimit = 5. * GeV
 
static const G4int nPar = 7
 
static const G4double npbarPDGFit [7] = { 1.1, 5.55, 36.5, 0., 0., 0., -11.9 }
 
static const G4double pKMinusPDGFit [7] = { 2., 175., 7.3, 0., 0., 0.29, -2.40 }
 
static const G4double pKPlusPDGFit [7] = { 2., 175., 5.0, 8.1, -1.8, 0.16, -1.3 }
 
static const G4double ppbarPDGFit [7] = { 5., 1730000., 10.2, 52.7, -1.16, 0.125, -1.28 }
 
static const G4double pPiMinusPDGFit [7] = { 2., 360., 1.76, 11.2, -0.64, 0.043, 0. }
 
static const G4double pPiPlusPDGFit [7] = { 2., 200., 0., 11.4, -0.4, 0.079, 0. }
 
static const G4double ppPDGFit [7] = { 2., 2100., 11.9, 26.9, -1.21, 0.169, -1.85 }
 

Detailed Description

Definition at line 54 of file G4XPDGElastic.hh.

Member Typedef Documentation

◆ PairDoubleMap

typedef std::map<G4pDefPair, std::vector<G4double>, std::less<G4pDefPair> > G4XPDGElastic::PairDoubleMap
private

Definition at line 99 of file G4XPDGElastic.hh.

Constructor & Destructor Documentation

◆ G4XPDGElastic() [1/2]

G4XPDGElastic::G4XPDGElastic ( )

Definition at line 76 of file G4XPDGElastic.cc.

77{
85
86 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> pp(proton,proton);
87 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> pn(proton,neutron);
88 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> piPlusp(piPlus,proton);
89 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> piMinusp(piMinus,proton);
90 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> KPlusp(KPlus,proton);
91 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> KMinusp(KMinus,proton);
92 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> nn(neutron,neutron);
93 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> ppbar(proton,antiproton);
94 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> npbar(antiproton,neutron);
95
96 std::vector<G4double> ppData;
97 std::vector<G4double> pPiPlusData;
98 std::vector<G4double> pPiMinusData;
99 std::vector<G4double> pKPlusData;
100 std::vector<G4double> pKMinusData;
101 std::vector<G4double> ppbarData;
102 std::vector<G4double> npbarData;
103
104 G4int i;
105 for (i=0; i<2; i++)
106 {
107 ppData.push_back(ppPDGFit[i] * GeV);
108 pPiPlusData.push_back(pPiPlusPDGFit[i] * GeV);
109 pPiMinusData.push_back(pPiMinusPDGFit[i] * GeV);
110 pKPlusData.push_back(pKPlusPDGFit[i] * GeV);
111 pKMinusData.push_back(pKMinusPDGFit[i] * GeV);
112 ppbarData.push_back(ppbarPDGFit[i] * GeV);
113 npbarData.push_back(npbarPDGFit[i] * GeV);
114 }
115
116 for (i=2; i<nPar; i++)
117 {
118 ppData.push_back(ppPDGFit[i]);
119 pPiPlusData.push_back(pPiPlusPDGFit[i]);
120 pPiMinusData.push_back(pPiMinusPDGFit[i]);
121 pKPlusData.push_back(pKPlusPDGFit[i]);
122 pKMinusData.push_back(pKMinusPDGFit[i]);
123 ppbarData.push_back(ppbarPDGFit[i]);
124 npbarData.push_back(npbarPDGFit[i]);
125 }
126
127 xMap[nn] = ppData;
128 xMap[pp] = ppData;
129 xMap[pn] = ppData;
130 xMap[piPlusp] = pPiPlusData;
131 xMap[piMinusp] = pPiMinusData;
132 xMap[KPlusp] = pKPlusData;
133 xMap[KMinusp] = pKMinusData;
134 xMap[ppbar] = ppbarData;
135 xMap[npbar] = npbarData;
136}
static constexpr double GeV
Definition: G4SIunits.hh:203
int G4int
Definition: G4Types.hh:85
static G4AntiProton * AntiProtonDefinition()
Definition: G4AntiProton.cc:87
static G4KaonMinus * KaonMinusDefinition()
Definition: G4KaonMinus.cc:107
static G4KaonPlus * KaonPlusDefinition()
Definition: G4KaonPlus.cc:107
static G4Neutron * NeutronDefinition()
Definition: G4Neutron.cc:98
static G4PionMinus * PionMinusDefinition()
Definition: G4PionMinus.cc:92
static G4PionPlus * PionPlusDefinition()
Definition: G4PionPlus.cc:92
static G4Proton * ProtonDefinition()
Definition: G4Proton.cc:87
static const G4double pKMinusPDGFit[7]
static const G4double ppbarPDGFit[7]
static const G4double ppPDGFit[7]
std::map< G4pDefPair, std::vector< G4double >, std::less< G4pDefPair > > xMap
static const G4double npbarPDGFit[7]
static const G4double pKPlusPDGFit[7]
static const G4double pPiMinusPDGFit[7]
static const G4int nPar
static const G4double pPiPlusPDGFit[7]

References G4AntiProton::AntiProtonDefinition(), GeV, G4KaonMinus::KaonMinusDefinition(), G4KaonPlus::KaonPlusDefinition(), G4INCL::KMinus, G4INCL::KPlus, G4InuclParticleNames::neutron, G4Neutron::NeutronDefinition(), G4InuclParticleNames::nn, nPar, npbarPDGFit, G4PionMinus::PionMinusDefinition(), G4PionPlus::PionPlusDefinition(), pKMinusPDGFit, pKPlusPDGFit, G4InuclParticleNames::pn, G4InuclParticleNames::pp, ppbarPDGFit, pPiMinusPDGFit, pPiPlusPDGFit, ppPDGFit, G4InuclParticleNames::proton, G4Proton::ProtonDefinition(), and xMap.

◆ ~G4XPDGElastic()

G4XPDGElastic::~G4XPDGElastic ( )
virtual

Definition at line 139 of file G4XPDGElastic.cc.

140{ }

◆ G4XPDGElastic() [2/2]

G4XPDGElastic::G4XPDGElastic ( const G4XPDGElastic right)
private

Member Function Documentation

◆ CrossSection()

G4double G4XPDGElastic::CrossSection ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtual

Implements G4VCrossSectionSource.

Definition at line 155 of file G4XPDGElastic.cc.

156{
157 // Elastic Cross-section fit, 1994 Review of Particle Properties, (1994), 1
158
159 G4double sigma = 0.;
160
161 const G4ParticleDefinition* def1 = trk1.GetDefinition();
162 const G4ParticleDefinition* def2 = trk2.GetDefinition();
163
164 G4double sqrtS = (trk1.Get4Momentum() + trk2.Get4Momentum()).mag();
165 G4double m_1 = def1->GetPDGMass();
166 G4double m_2 = def2->GetPDGMass();
167 G4double m_max = std::max(m_1,m_2);
168 // if (m1 > m) m = m1;
169
170 G4double pLab = 0.;
171
172 if (m_max > 0. && sqrtS > (m_1 + m_2))
173 {
174 pLab = std::sqrt( (sqrtS*sqrtS - (m_1+m_2)*(m_1+m_2) ) * (sqrtS*sqrtS - (m_1-m_2)*(m_1-m_2)) ) / (2*m_max);
175
176 // The PDG fit formula requires p in GeV/c
177
178 // Order the pair: first is the lower mass particle, second is the higher mass one
179 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> trkPair(def1,def2);
180 if (def1->GetPDGMass() > def2->GetPDGMass())
181 trkPair = std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *>(def2,def1);
182
183 std::vector<G4double> data;
184 G4double pMinFit = 0.;
185 G4double pMaxFit = 0.;
186 G4double aFit = 0.;
187 G4double bFit = 0.;
188 G4double cFit = 0.;
189 G4double dFit = 0.;
190 G4double nFit = 0.;
191
192 // Debug
193// G4cout << "Map has " << xMap.size() << " elements" << G4endl;
194 // Debug end
195
196 if (xMap.find(trkPair) != xMap.end())
197 {
198 PairDoubleMap::const_iterator iter;
199 for (iter = xMap.begin(); iter != xMap.end(); ++iter)
200 {
201 std::pair<const G4ParticleDefinition *,const G4ParticleDefinition *> thePair = (*iter).first;
202 if (thePair == trkPair)
203 {
204 data = (*iter).second;
205 pMinFit = data[0];
206 pMaxFit = data[1];
207 aFit = data[2];
208 bFit = data[3];
209 cFit = data[5];
210 dFit = data[6];
211 nFit = data[4];
212
213 if (pLab < pMinFit) return 0.0;
214 if (pLab > pMaxFit )
215 G4cout << "WARNING! G4XPDGElastic::PDGElastic "
216 << trk1.GetDefinition()->GetParticleName() << "-"
217 << trk2.GetDefinition()->GetParticleName()
218 << " elastic cross section: momentum "
219 << pLab / GeV << " GeV outside valid fit range "
220 << pMinFit /GeV << "-" << pMaxFit / GeV
221 << G4endl;
222
223 pLab /= GeV;
224 if (pLab > 0.)
225 {
226 G4double logP = G4Log(pLab);
227 sigma = aFit + bFit * G4Pow::GetInstance()->powA(pLab, nFit) + cFit * logP*logP + dFit * logP;
228 sigma = sigma * millibarn;
229 }
230 }
231 }
232 }
233 else
234 {
235 G4cout << "G4XPDGElastic::CrossSection - Data not found in Map" << G4endl;
236 }
237 }
238
239 if (sigma < 0.)
240 {
241 G4cout << "WARNING! G4XPDGElastic::PDGElastic "
242 << def1->GetParticleName() << "-" << def2->GetParticleName()
243 << " elastic cross section: momentum "
244 << pLab << " GeV, negative cross section "
245 << sigma / millibarn << " mb set to 0" << G4endl;
246 sigma = 0.;
247 }
248
249 return sigma;
250}
G4double G4Log(G4double x)
Definition: G4Log.hh:226
static constexpr double millibarn
Definition: G4SIunits.hh:86
double G4double
Definition: G4Types.hh:83
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
const G4ParticleDefinition * GetDefinition() const
const G4LorentzVector & Get4Momentum() const
const G4String & GetParticleName() const
static G4Pow * GetInstance()
Definition: G4Pow.cc:41
G4double powA(G4double A, G4double y) const
Definition: G4Pow.hh:230
T max(const T t1, const T t2)
brief Return the largest of the two arguments

References G4cout, G4endl, G4Log(), G4KineticTrack::Get4Momentum(), G4KineticTrack::GetDefinition(), G4Pow::GetInstance(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGMass(), GeV, G4INCL::Math::max(), millibarn, G4Pow::powA(), and xMap.

Referenced by G4XMesonBaryonElastic::CrossSection().

◆ FcrossX()

G4double G4VCrossSectionSource::FcrossX ( G4double  e,
G4double  e0,
G4double  sigma,
G4double  eParam,
G4double  power 
) const
protectedinherited

Definition at line 174 of file G4VCrossSectionSource.cc.

176{
177 G4double result = 0.;
178
179 G4double denom = eParam*eParam + (e-e0)*(e-e0);
180 if (denom > 0.)
181 {
182 G4double value = (2.* eParam * sigma * (e-e0) / denom) * G4Pow::GetInstance()->powA(((e0 + eParam) / e), power);
183 result = std::max(0., value);
184 }
185 return result;
186}

References G4Pow::GetInstance(), G4INCL::Math::max(), and G4Pow::powA().

◆ FindKeyParticle()

const G4ParticleDefinition * G4VCrossSectionSource::FindKeyParticle ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
protectedinherited

Definition at line 49 of file G4VCrossSectionSource.cc.

51{
52 const G4ParticleDefinition * result;
53
54 const G4ParticleDefinition * p1 = trk1.GetDefinition();
55 const G4ParticleDefinition * p2 = trk2.GetDefinition();
56
57 if( (p1==G4Proton::Proton() && p2==G4Proton::Proton() ) ||
58 (p1==G4Neutron::Neutron() && p2==G4Neutron::Neutron()) )
59 {
60 result = G4Proton::Proton();
61 }
62 else if( (p1==G4Neutron::Neutron() && p2==G4Proton::Proton()) ||
63 (p2==G4Neutron::Neutron() && p1==G4Proton::Proton()) )
64 {
65 result = G4Neutron::Neutron();
66 }
67 else
68 {
69 throw G4HadronicException(__FILE__, __LINE__, "G4VCrossSectionSource: unklnown particles in FindKeyParticle");
70 }
71 return result;
72}
static G4Neutron * Neutron()
Definition: G4Neutron.cc:103
static G4Proton * Proton()
Definition: G4Proton.cc:92

References G4KineticTrack::GetDefinition(), G4Neutron::Neutron(), and G4Proton::Proton().

Referenced by G4XNNElasticLowE::CrossSection(), and G4XNNTotalLowE::CrossSection().

◆ FindLightParticle()

const G4ParticleDefinition * G4VCrossSectionSource::FindLightParticle ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
protectedinherited

Definition at line 158 of file G4VCrossSectionSource.cc.

160{
161 G4double mass1 = trk1.GetDefinition()->GetPDGMass();
162 G4double mass2 = trk2.GetDefinition()->GetPDGMass();
163 if (mass1 < mass2)
164 {
165 return trk1.GetDefinition();
166 }
167 else
168 {
169 return trk2.GetDefinition();
170 }
171}

References G4KineticTrack::GetDefinition(), and G4ParticleDefinition::GetPDGMass().

Referenced by G4XMesonBaryonElastic::CrossSection().

◆ GetComponents()

virtual const G4CrossSectionVector * G4XPDGElastic::GetComponents ( ) const
inlinevirtual

Implements G4VCrossSectionSource.

Definition at line 68 of file G4XPDGElastic.hh.

68{ return 0; }

◆ HighLimit()

G4double G4VCrossSectionSource::HighLimit ( ) const
virtualinherited

◆ InLimits()

G4bool G4VCrossSectionSource::InLimits ( G4double  e,
G4double  eLow,
G4double  eHigh 
) const
protectedinherited

Definition at line 133 of file G4VCrossSectionSource.cc.

134{
135 G4bool answer = false;
136 if (e >= eLow && e <= eHigh) answer = true;
137 return answer;
138}
bool G4bool
Definition: G4Types.hh:86

Referenced by G4XAnnihilationChannel::IsValid(), G4XAqmElastic::IsValid(), G4XAqmTotal::IsValid(), G4XMesonBaryonElastic::IsValid(), G4XNNElasticLowE::IsValid(), G4XnpElasticLowE::IsValid(), G4XnpTotalLowE::IsValid(), IsValid(), and G4XPDGTotal::IsValid().

◆ IsValid()

G4bool G4XPDGElastic::IsValid ( G4double  e) const
virtual

Reimplemented from G4VCrossSectionSource.

Definition at line 260 of file G4XPDGElastic.cc.

261{
263
264 return answer;
265}
G4bool InLimits(G4double e, G4double eLow, G4double eHigh) const
static const G4double _highLimit
static const G4double _lowLimit

References _highLimit, _lowLimit, and G4VCrossSectionSource::InLimits().

◆ LowLimit()

virtual G4double G4XPDGElastic::LowLimit ( ) const
inlinevirtual

Reimplemented from G4VCrossSectionSource.

Definition at line 74 of file G4XPDGElastic.hh.

74{ return _lowLimit; }

References _lowLimit.

◆ Name()

G4String G4XPDGElastic::Name ( ) const
virtual

Implements G4VCrossSectionSource.

Definition at line 253 of file G4XPDGElastic.cc.

254{
255 G4String name = "PDGElastic ";
256 return name;
257}
const char * name(G4int ptype)

References G4InuclParticleNames::name().

◆ operator!=() [1/2]

G4bool G4VCrossSectionSource::operator!= ( const G4VCrossSectionSource right) const
inherited

Definition at line 80 of file G4VCrossSectionSource.cc.

81{
82 return (this != (G4VCrossSectionSource *) &right);
83}

◆ operator!=() [2/2]

G4bool G4XPDGElastic::operator!= ( const G4XPDGElastic right) const

Definition at line 149 of file G4XPDGElastic.cc.

150{
151 return (this != (G4XPDGElastic *) &right);
152}

◆ operator=()

const G4XPDGElastic & G4XPDGElastic::operator= ( const G4XPDGElastic right)
private

◆ operator==() [1/2]

G4bool G4VCrossSectionSource::operator== ( const G4VCrossSectionSource right) const
inherited

Definition at line 74 of file G4VCrossSectionSource.cc.

75{
76 return (this == (G4VCrossSectionSource *) &right);
77}

◆ operator==() [2/2]

G4bool G4XPDGElastic::operator== ( const G4XPDGElastic right) const

Definition at line 143 of file G4XPDGElastic.cc.

144{
145 return (this == (G4XPDGElastic *) &right);
146}

◆ Print()

void G4VCrossSectionSource::Print ( ) const
virtualinherited

Reimplemented in G4XNNElasticLowE, G4XnpElasticLowE, and G4XnpTotalLowE.

Definition at line 86 of file G4VCrossSectionSource.cc.

87{
88 G4int nComponents = 0;
89 const G4CrossSectionVector* components = GetComponents();
90 if (components)
91 {
92 nComponents = components->size();
93 }
94 G4cout << "---- " << this->Name() << " ---- has " << nComponents << " components" <<G4endl;
95 G4int i;
96 for (i=0; i<nComponents; i++)
97 {
98 G4cout << "-" << this->Name() << " - Component " << i << ": " <<G4endl;
99
100 G4CrossSectionSourcePtr componentPtr = (*components)[i];
101 G4VCrossSectionSource* component = componentPtr();
102 component->Print();
103 }
104}
std::vector< G4CrossSectionSourcePtr > G4CrossSectionVector
virtual const G4CrossSectionVector * GetComponents() const =0
virtual void Print() const
virtual G4String Name() const =0

References G4cout, G4endl, G4VCrossSectionSource::GetComponents(), G4VCrossSectionSource::Name(), and G4VCrossSectionSource::Print().

Referenced by G4VCollision::Print(), G4VCrossSectionSource::Print(), G4XNNElasticLowE::Print(), G4XnpElasticLowE::Print(), and G4XnpTotalLowE::Print().

◆ PrintAll()

void G4VCrossSectionSource::PrintAll ( const G4KineticTrack trk1,
const G4KineticTrack trk2 
) const
virtualinherited

Definition at line 107 of file G4VCrossSectionSource.cc.

108{
109 G4double sqrtS = (trk1.Get4Momentum() + trk2.Get4Momentum()).mag();
110 G4double sigma = CrossSection(trk1,trk2) / millibarn;
111 G4cout << "---- " << Name() << ": "
112 << "Ecm = " << sqrtS / GeV << " GeV - "
113 << " Cross section = " << sigma << " mb "
114 << G4endl;
115
116 G4int nComponents = 0;
117 const G4CrossSectionVector* components = GetComponents();
118 if (components != 0)
119 {
120 nComponents = components->size();
121 }
122 G4int i;
123 for (i=0; i<nComponents; i++)
124 {
125 G4cout << "* Component " << i << ": ";
126 G4CrossSectionSourcePtr componentPtr = (*components)[i];
127 G4VCrossSectionSource* component = componentPtr();
128 component->PrintAll(trk1,trk2);
129 }
130}
virtual G4double CrossSection(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const =0
virtual void PrintAll(const G4KineticTrack &trk1, const G4KineticTrack &trk2) const

References G4VCrossSectionSource::CrossSection(), G4cout, G4endl, G4KineticTrack::Get4Momentum(), G4VCrossSectionSource::GetComponents(), GeV, millibarn, G4VCrossSectionSource::Name(), and G4VCrossSectionSource::PrintAll().

Referenced by G4VCrossSectionSource::PrintAll().

Field Documentation

◆ _highLimit

const G4double G4XPDGElastic::_highLimit = DBL_MAX
staticprivate

Definition at line 86 of file G4XPDGElastic.hh.

Referenced by IsValid().

◆ _lowLimit

const G4double G4XPDGElastic::_lowLimit = 5. * GeV
staticprivate

Definition at line 85 of file G4XPDGElastic.hh.

Referenced by IsValid(), and LowLimit().

◆ nPar

const G4int G4XPDGElastic::nPar = 7
staticprivate

Definition at line 88 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ npbarPDGFit

const G4double G4XPDGElastic::npbarPDGFit = { 1.1, 5.55, 36.5, 0., 0., 0., -11.9 }
staticprivate

Definition at line 95 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ pKMinusPDGFit

const G4double G4XPDGElastic::pKMinusPDGFit = { 2., 175., 7.3, 0., 0., 0.29, -2.40 }
staticprivate

Definition at line 92 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ pKPlusPDGFit

const G4double G4XPDGElastic::pKPlusPDGFit = { 2., 175., 5.0, 8.1, -1.8, 0.16, -1.3 }
staticprivate

Definition at line 91 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ ppbarPDGFit

const G4double G4XPDGElastic::ppbarPDGFit = { 5., 1730000., 10.2, 52.7, -1.16, 0.125, -1.28 }
staticprivate

Definition at line 94 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ pPiMinusPDGFit

const G4double G4XPDGElastic::pPiMinusPDGFit = { 2., 360., 1.76, 11.2, -0.64, 0.043, 0. }
staticprivate

Definition at line 90 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ pPiPlusPDGFit

const G4double G4XPDGElastic::pPiPlusPDGFit = { 2., 200., 0., 11.4, -0.4, 0.079, 0. }
staticprivate

Definition at line 89 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ ppPDGFit

const G4double G4XPDGElastic::ppPDGFit = { 2., 2100., 11.9, 26.9, -1.21, 0.169, -1.85 }
staticprivate

Definition at line 93 of file G4XPDGElastic.hh.

Referenced by G4XPDGElastic().

◆ xMap

std::map<G4pDefPair, std::vector<G4double>, std::less<G4pDefPair> > G4XPDGElastic::xMap
private

Definition at line 97 of file G4XPDGElastic.hh.

Referenced by CrossSection(), and G4XPDGElastic().


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