96 {
97
98
99
100
101
102
103
104
105
106
107
108 Particle *delta;
110
112 delta = particle1;
114 }
115 else {
116 delta = particle2;
118 }
119
120
122
126
127
128
129
130
134
135 if(std::abs(iso) == 4){
138 }
139 else if(iso == 0){
140 if(rdm*3 < 2){
143 }
144 else{
147 }
148 }
150 if(rdm*5 < 3){
153 }
154 else{
157 }
158 }
159 else{
160 if(rdm*7 < 3){
163 }
164 else{
167 }
168 }
169
170 delta->setType(DeltaType);
171 delta->setMass(sampleDeltaMass(sqrtS));
172
173 ParticleList list;
174 list.push_back(delta);
175 list.push_back(nucleon);
176 const ThreeVector &rcol =
nucleon->getPosition();
177 const ThreeVector zero;
178 Particle *kaon = new Particle(KaonType,zero,rcol);
179 list.push_back(kaon);
180
183
184
185 fs->addModifiedParticle(delta);
186 fs->addModifiedParticle(nucleon);
187 fs->addCreatedParticle(kaon);
188
189 }
G4INCL::ParticleType getType() const
G4bool isResonance() const
Is it a resonance?
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 getDeltaType(const G4int isosp)
Get the type of delta.
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)