38 typedef std::vector<G4SPPartonInfo *>::const_iterator iter;
40 for (i = thePartonInfo.begin(); i!=thePartonInfo.end(); i++)
42 if (std::abs((*i)->GetDiQuark()) == std::abs(diQuark))
44 running += (*i)->GetProbability();
45 if (running/sum >= random)
47 Quark = (*i)->GetQuark();
59 typedef std::vector<G4SPPartonInfo *>::const_iterator iter;
61 for (i = thePartonInfo.begin(); i!=thePartonInfo.end(); i++)
63 if (std::abs((*i)->GetDiQuark()) == std::abs(diQuark))
65 sum += (*i)->GetProbability();
76 typedef std::vector<G4SPPartonInfo *>::const_iterator iter;
80 for (i = thePartonInfo.begin(); i!=thePartonInfo.end(); i++)
85 for(i = thePartonInfo.begin(); i!=thePartonInfo.end(); i++)
88 if (random<running/total)
90 result = (*i)->GetQuark();
91 aDiQuark = (*i)->GetDiQuark();
102 typedef std::vector<G4SPPartonInfo *>::const_iterator iter;
108 for (i=thePartonInfo.begin() ; i!=thePartonInfo.end(); i++)
110 sum += (*i)->GetProbability();
115 quark = (*i)->GetDiQuark();
116 diQuark = (*i)->GetQuark();
120 quark = (*i)->GetQuark();
121 diQuark = (*i)->GetDiQuark();
132 typedef std::vector<G4SPPartonInfo *>::const_iterator iter;
135 for (i=thePartonInfo.begin() ; i!=thePartonInfo.end(); i++)
137 if (std::abs((*i)->GetQuark()) == std::abs(quark))
139 sum += (*i)->GetProbability();
144 for (i=thePartonInfo.begin() ; i!=thePartonInfo.end(); i++) {
145 if (std::abs((*i)->GetQuark()) == std::abs(quark))
147 running += (*i)->GetProbability();
148 if (running/sum >= random)
150 diQuark = (*i)->GetDiQuark();
161 theDefinition = aProton;
170 theDefinition = aAntiProton;
180 theDefinition = aNeutron;
189 theDefinition = aAntiNeutron;
199 theDefinition = aLambda;
210 theDefinition = aAntiLambda;
222 theDefinition = aSigmaPlus;
231 theDefinition = aAntiSigmaPlus;
241 theDefinition = aSigmaZero;
252 theDefinition = aAntiSigmaZero;
264 theDefinition = aSigmaMinus;
273 theDefinition = aAntiSigmaMinus;
283 theDefinition = aXiZero;
292 theDefinition = aAntiXiZero;
302 theDefinition = aXiMinus;
311 theDefinition = aAntiXiMinus;
321 theDefinition = anOmegaMinus;
328 theDefinition = anAntiOmegaMinus;
337 theDefinition = aDefinition;
379 for (
unsigned int i=0;i<thePartonInfo.size(); i++)
delete thePartonInfo[i];
388 theDefinition = aLambdacPlus;
397 theDefinition = aAntiLambdacPlus;
408 theDefinition = aSigmacPlusPlus;
415 theDefinition = aAntiSigmacPlusPlus;
424 theDefinition = aSigmacPlus;
433 theDefinition = aAntiSigmacPlus;
444 theDefinition = aSigmacZero;
451 theDefinition = aAntiSigmacZero;
460 theDefinition = aXicPlus;
467 theDefinition = aAntiXicPlus;
476 theDefinition = aXicZero;
483 theDefinition = aAntiXicZero;
492 theDefinition = aOmegacZero;
497 theDefinition = aAntiOmegacZero;
504 theDefinition = aLambdab;
513 theDefinition = aAntiLambdab;
524 theDefinition = aSigmabPlus;
531 theDefinition = aAntiSigmabPlus;
540 theDefinition = aSigmabZero;
549 theDefinition = aAntiSigmabZero;
560 theDefinition = aSigmabMinus;
567 theDefinition = aAntiSigmabMinus;
576 theDefinition = aXibZero;
583 theDefinition = aAntiXibZero;
592 theDefinition = aXibMinus;
599 theDefinition = aAntiXibMinus;
608 theDefinition = aOmegabMinus;
613 theDefinition = aAntiOmegabMinus;
G4int GetPDGEncoding() const
static G4ParticleTable * GetParticleTable()
G4int MatchDiQuarkAndGetQuark(const G4SPBaryon &aBaryon, G4int &aDiQuark) const
G4double GetProbability(G4int diQuark) const
void FindDiquark(G4int quark, G4int &diQuark) const
G4int FindQuark(G4int diQuark) const
G4SPBaryon(G4Proton *aProton)
void SampleQuarkAndDiquark(G4int &quark, G4int &diQuark) const