34#define INCLXX_IN_GEANT4_MODE 1
49 const G4double NDeltaToDeltaSKChannel::angularSlope = 2.;
52 : particle1(p1), particle2(p2)
64 G4double q2=(y-1.157776E6)*(y-6.4E5)/y/4.0;
65 G4double q3=std::pow(std::sqrt(q2), 3.);
66 const G4double f3max=q3/(q3+5.832E6);
72 if(++nTries >= 100000) {
73 INCL_WARN(
"NDeltaToDeltaSKChannel::sampleDeltaMass loop was stopped because maximum number of tries was reached. Minimum delta mass "
86 q2=(y-1.157776E6)*(y-6.4E5)/y/4.0;
87 q3=std::pow(std::sqrt(q2), 3.);
90 if (rndm*f3max < f3) success =
true;
141 if(std::abs(iso) == 4){
174 else if(rdm*13 < 10){
179 else if(rdm*13 < 11){
228 else if(rdm*15 < 12){
233 else if(rdm*15 < 14){
247 particle1->
setMass(sampleDeltaMass(sqrtS));
251 list.push_back(particle1);
252 list.push_back(particle2);
256 list.push_back(kaon);
void addModifiedParticle(Particle *p)
void addCreatedParticle(Particle *p)
NDeltaToDeltaSKChannel(Particle *, Particle *)
void fillFinalState(FinalState *fs)
virtual ~NDeltaToDeltaSKChannel()
void setMass(G4double mass)
const G4INCL::ThreeVector & getPosition() const
G4INCL::ParticleType getType() const
G4bool isResonance() const
Is it a resonance?
void setType(ParticleType t)
G4double totalEnergyInCM(Particle const *const p1, Particle const *const p2)
const G4double effectiveDeltaWidth
const G4double effectiveKaonMass
const G4double effectiveDeltaMass
G4ThreadLocal G4double minDeltaMass
ParticleType getKaonType(const G4int isosp)
Get the type of kaon.
ParticleType getSigmaType(const G4int isosp)
Get the type of sigma.
G4ThreadLocal G4double minDeltaMassRndm
G4int getIsospin(const ParticleType t)
Get the isospin of a particle.
ParticleType getDeltaType(const G4int isosp)
Get the type of delta.
const G4double effectiveSigmaMass
void generateBiased(const G4double sqrtS, ParticleList &particles, const size_t index, const G4double slope)
Generate a biased event in the CM system.