Example #1
0
 //Pure
 public static Tuple <Particle, Particle> PairProductionPhoton(Photon Photon, FRandom Rand)
 {
     //This is all one line, it has been split onto multiple lines for readability
     return(FrequencyToEnergy(Photon) >= MassToEnergy(new Proton(1).RestMass) ? VectorFunctions.OppositeEjections(CreatePairproductionOutputGreaterThanProtonRestMass(Photon), CreatePairproductionOutputGreaterThanProtonRestMass(Photon), Rand): VectorFunctions.OppositeEjections(CreatePairproductionOutputLessThanProtonRestMass(Photon), CreatePairproductionOutputLessThanProtonRestMass(Photon), Rand));
 }
Example #2
0
 //Pure
 public static Tuple <Photon, Photon> Annialation(Particles.Particle Particle, Particles.Particle AntiParticle, FRandom Rand) // Simple collision
 {
     return(VectorFunctions.OppositeEjections(CreateAnnialationPhoton(Particle, AntiParticle), CreateAnnialationPhoton(Particle, AntiParticle), Rand));
 }