57 {
58
59
60
61
62
63
64
65
66
67
68
69
72
76 }
77 else{
80 }
81
83
86
89
90 if(iso == 3 || iso == -3){
91 if(rdm < 0.5){
94 }
95 else{
98 }
99 }
101 if(rdm*7. < 1.){
104 }
105 else if(rdm*7. < 5.){
109 }
110 else{
113 }
114 }
115 else{
116 if(rdm*5. < 2.){
119 }
120 else if(rdm*5. < 4.){
123 }
124 else{
128 }
129 }
130
132
133
134 nucleon->setParentResonancePDGCode(0);
135 nucleon->setParentResonanceID(0);
136 pion->setParentResonancePDGCode(0);
137 pion->setParentResonanceID(0);
138
139 ParticleList list;
140 list.push_back(nucleon);
141 list.push_back(pion);
142 const ThreeVector &rcol1 =
nucleon->getPosition();
143 const ThreeVector &rcol2 =
pion->getPosition();
144 const ThreeVector zero;
145 Particle *kaon = new Particle(KaonType,zero,rcol1);
146 Particle *pion2 = new Particle(PionType,zero,rcol2);
147 list.push_back(kaon);
148 list.push_back(pion2);
149
151
153
154 fs->addModifiedParticle(nucleon);
155 fs->addModifiedParticle(pion);
156 fs->addCreatedParticle(kaon);
157 fs->addCreatedParticle(pion2);
158
159 }
G4double totalEnergyInCM(Particle const *const p1, Particle const *const p2)
ParticleType getKaonType(const G4int isosp)
Get the type of kaon.
G4int getIsospin(const ParticleType t)
Get the isospin of a particle.
ParticleType getPionType(const G4int isosp)
Get the type of pion.
void generateBiased(const G4double sqrtS, ParticleList &particles, const size_t index, const G4double slope)
Generate a biased event in the CM system.
G4bool nucleon(G4int ityp)