Example #1
0
        public void HappyCase()
        {
            //Testing to make sure deterministic randomness
            var a = Collisions.CollisionFuntions.RandomiseVelocity(FRandom.Seed(1, 1));

            Assert.AreEqual(2822, a.Number);
            var b = Collisions.CollisionFuntions.RandomiseVelocity(FRandom.Seed(1, 1));

            Assert.AreEqual(2822, b.Number);
        }
        public void HappyCase()
        {
            var a = Collisions.CollisionFuntions.ElectrostaticRepulsion(new Particles.Proton(10), new Particles.Proton(10),
                                                                        FRandom.Seed(1, 1), new Vector3D(1, 1, 1), new Vector3D(1, -1, -1));

            Assert.AreEqual(new Vector3D(0, 2, 2), a.Item1.Position);
            Assert.AreEqual(new Vector3D(-0, -2, -2), a.Item2.Position);
            Assert.AreEqual("2.4258631722889", Convert.ToString(a.Item1.Velocity));
            Assert.AreEqual("2.4258631722889", Convert.ToString(a.Item2.Velocity));
        }
Example #3
0
 public void EdgeCase()
 {
     //Checkes to make sure the randomiser only produces numbers within the boundries.
     for (int i = 0; i < 100; i++)
     {
         if (Collisions.CollisionFuntions.RandomiseVelocity(FRandom.Seed(1, 1)).Number > 2.9E8 ||
             Collisions.CollisionFuntions.RandomiseVelocity(FRandom.Seed(1, 1)).Number < 1E3)
         {
             Assert.Fail();
         }
     }
     Assert.IsTrue(1 == 1);
 }
Example #4
0
        public void Random2()
        {
            var random = FRandom.Seed(3, 7);
            var sb     = new StringBuilder();

            for (int i = 0; i < 10; i++)
            {
                random = FRandom.Next(random, 0, 10);
                sb.Append(random.Number).Append(" ");
            }
            string gen1Results = sb.ToString();

            Assert.AreEqual("6 1 2 8 4 2 5 1 3 6 ", gen1Results);
        }
Example #5
0
        public void HappyCase()
        {
            var a = Collisions.CollisionFuntions.GenerateParticleWithRandomVelocity(new Particles.Proton(0), FRandom.Seed(1, 1));

            Assert.AreEqual(new Particles.Proton(0).GetType(), a.GetType());
            Assert.AreEqual(2822, a.Velocity);
        }
Example #6
0
        public void EdgeCase()
        {
            var a = Collisions.CollisionFuntions.PairProductionPhoton(new Particles.Photon(1, 1E100), FRandom.Seed(1, 1));

            Assert.AreEqual(new Particles.Proton(0).GetType(), a.Item1.GetType());
            var b = Collisions.CollisionFuntions.PairProductionPhoton(new Particles.Photon(1, 1E-100), FRandom.Seed(1, 1));

            Assert.AreEqual(new Particles.Electron(0).GetType(), b.Item1.GetType());
        }
        public void HappyCase()
        {
            var a = Collisions.VectorFunctions.OppositeEjections(new Particles.Proton(0), new Particles.Proton(0), FRandom.Seed(1, 1));

            Assert.AreEqual(new Vector3D(203, 11, 132), a.Item1.Position);
            Assert.AreEqual(new Vector3D(-203, -11, -132), a.Item2.Position);

            var b = Collisions.VectorFunctions.OppositeEjections(new Particles.Photon(), new Particles.Photon(), FRandom.Seed(1, 1));

            Assert.AreEqual(new Vector3D(203, 11, 132), b.Item1.Position);
            Assert.AreEqual(new Vector3D(-203, -11, -132), b.Item2.Position);

            var c = Collisions.VectorFunctions.OppositeEjections(new Particles.Proton(0), new Particles.Proton(0), FRandom.Seed(38, 192));

            Assert.AreEqual(new Vector3D(157, -11, 124), c.Item1.Position);
            Assert.AreEqual(new Vector3D(-157, 11, -124), c.Item2.Position);

            var d = Collisions.VectorFunctions.OppositeEjections(new Particles.Photon(), new Particles.Photon(), FRandom.Seed(112, 6));

            Assert.AreEqual(new Vector3D(64, -57, 7), d.Item1.Position);
            Assert.AreEqual(new Vector3D(-64, 57, -7), d.Item2.Position);
        }
        public void HappyCase()
        {
            var a = Collisions.CollisionFuntions.Annialation(new Particles.Proton(10000), new Particles.Antiproton(55560), FRandom.Seed(1, 1));

            Assert.AreEqual("6.60639434893911E-16", Convert.ToString(a.Item1.Wavelength));
            Assert.AreEqual("4.54105498634328E+23", Convert.ToString(a.Item1.Frequency));
            Assert.AreEqual(new Particles.Photon().GetType(), a.Item1.GetType());
            Assert.AreEqual(new Particles.Photon().GetType(), a.Item2.GetType());
        }
        public void Edgecase_WIP()
        {
            var Outputs = Collisions.CollisionFuntions.ElectronCaputre(Collisions.CollisionFuntions.AtomCreator(1, 1), FRandom.Seed(1, 1));

            Assert.AreEqual(1, Outputs.Item1.MassNumber);
            Assert.AreEqual(0, Outputs.Item1.AtomicNumber);
            var Outputs2 = Collisions.CollisionFuntions.ElectronCaputre(Collisions.CollisionFuntions.AtomCreator(118, 293), FRandom.Seed(1, 1));

            Assert.AreEqual("Tennessine", Outputs2.Item1.Name);
            Assert.AreEqual(117, Outputs2.Item1.AtomicNumber);
            Assert.AreEqual(293, Outputs2.Item1.MassNumber);
        }
        public void HappyCase()
        {
            var Outputs1 = Collisions.CollisionFuntions.ElectronCaputre(Collisions.CollisionFuntions.AtomCreator(8, 16), FRandom.Seed(1, 1));

            Assert.AreEqual("Nitrogen", Outputs1.Item1.Name);
            Assert.AreEqual(7, Outputs1.Item1.AtomicNumber);
            Assert.AreEqual(16, Outputs1.Item1.MassNumber);
            Assert.AreEqual("Electron-Neutrino", Outputs1.Item2.Name);
            var Outputs2 = Collisions.CollisionFuntions.ElectronCaputre(Collisions.CollisionFuntions.AtomCreator(95, 240), FRandom.Seed(1, 1));

            Assert.AreEqual("Plutonium", Outputs2.Item1.Name);
            Assert.AreEqual(94, Outputs2.Item1.AtomicNumber);
            Assert.AreEqual(240, Outputs2.Item1.MassNumber);
            Assert.AreEqual("Electron-Neutrino", Outputs1.Item2.Name);
            var Outputs3 = Collisions.CollisionFuntions.ElectronCaputre(Collisions.CollisionFuntions.AtomCreator(36, 84), FRandom.Seed(1, 1));

            Assert.AreEqual("Bromine", Outputs3.Item1.Name);
            Assert.AreEqual(35, Outputs3.Item1.AtomicNumber);
            Assert.AreEqual(84, Outputs3.Item1.MassNumber);
            Assert.AreEqual("Electron-Neutrino", Outputs1.Item2.Name);
        }
        public void HappyCase()
        {
            var a = Collisions.CollisionFuntions.VelocitySelector(new Particles.Proton(0), 100, 4500, 1, FRandom.Seed(1, 1));

            Assert.AreEqual(19, FList.Length(a));

            var b = Collisions.CollisionFuntions.VelocitySelector(new Particles.Electron(0), 100, 4500, 1, FRandom.Seed(1, 1));

            Assert.AreEqual(19, FList.Length(b));

            var c = Collisions.CollisionFuntions.VelocitySelector(new Particles.Proton(0), 100, 4500, 1, FRandom.Seed(35, 73));

            Assert.AreEqual(17, FList.Length(c));

            var d = Collisions.CollisionFuntions.VelocitySelector(new Particles.Electron(0), 100, 4000, 1, FRandom.Seed(1, 1));

            Assert.AreEqual(14, FList.Length(d));
        }
        public void HappyCase()
        {
            var a = Collisions.VectorFunctions.SingularEjection(new Particles.Proton(0), FRandom.Seed(1, 1));

            Assert.AreEqual(new Vector3D(203, 11, 132), a.Position);

            var b = Collisions.VectorFunctions.SingularEjection(new Particles.Photon(), FRandom.Seed(1, 1));

            Assert.AreEqual(new Vector3D(203, 11, 132), b.Position);

            var c = Collisions.VectorFunctions.SingularEjection(new Particles.Proton(0), FRandom.Seed(38, 192));

            Assert.AreEqual(new Vector3D(157, -11, 124), c.Position);

            var d = Collisions.VectorFunctions.SingularEjection(new Particles.Photon(), FRandom.Seed(112, 6));

            Assert.AreEqual(new Vector3D(64, -57, 7), d.Position);
        }